Microsoft MVP성태의 닷넷 이야기
기타: 77. DataDog APM 간략 소개 [링크 복사], [링크+제목 복사],
조회: 12560
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

DataDog APM 간략 소개

2주 동안 무료로 사용할 수 있어 DataDog을 잠시 설치해 봤는데요,

DataDog
; https://www.datadoghq.com/

DataDog 측에서 수집 및 뷰 서버 자체를 각각 유럽과 미국에 두고 제공하기 때문에 사용자 측은 데이터 수집용 에이전트만 설치하면 됩니다. DataDog의 경우 에이전트가 시스템 정보를 수집하는 것과 PHP, .NET, Java 응용 프로그램 등의 APM 측면에서의 데이터를 수집하는 것으로 나뉘는데요. 우선, 윈도우 서버의 시스템 정보를 수집한다면 다음의 에이전트를 설치합니다.

https://s3.amazonaws.com/ddagent-windows-stable/datadog-agent-7-latest.amd64.msi

설치는 매우 간단한데, 단순히 Free Trial로 받은 API Key와 데이터 서버 주소(datadoghq.com)를 설치 과정 중에 뜨는 대화창에 입력하면 됩니다. 이 정도만 구성하면, 기본적으로 다음과 같은 시스템 메트릭 화면의 수치 등의 정보들을 Dashboards 메뉴를 통해 볼 수 있습니다.

// https://app.datadoghq.com/dash/integration/1/System%20-%20Metrics 화면
data_dog_apm_1.png




DataDog의 APM 기능은 PHP, .NET, Java 등의 응용 프로그램에서는 소스 코드 변경 없이 에이전트만 설치하면 되고 Go 등의 언어에서는 소스 코드를 변경해야 합니다.

일단, .NET을 예로 들면 이를 위한 APM 에이전트를 다음의 github에서 다운로드해,

DataDog / dd-trace-dotnet
; https://github.com/DataDog/dd-trace-dotnet/releases

설치하면 됩니다. 재미있게도 DataDog의 경우 이렇게 소스 코드를 Apache 2.0 라이선스로 공개하고 있는데요,

dd-trace-dotnet/LICENSE
; https://github.com/DataDog/dd-trace-dotnet/blob/master/LICENSE

따라서 여러분들도 .NET용 APM 도구를 이 소스 코드를 기반으로 쉽게 만들어 낼 수 있습니다. ^^ (실제로 이 혜택을 국내 업체 중 와탭(WhaTap)에서 DataDog의 소스 코드를 사용해 닷넷 버전의 서비스를 하고 있는 듯합니다. - 와탭 측에서 라이선스 명시를 안 해 확실하진 않지만 제가 보기로는 소스 코드가 거의 동일했습니다.)

위의 에이전트를 설치한 이후, DataDog에서 제공하는 APM 관련 화면은 아래의 것으로 대표할 수 있습니다.

data_dog_apm_2.png

화면의 좌측 하단을 보면 각종 "필터링 조건"이 있고 그에 따라 우측에 리스트 형식으로 나열됩니다. 따라서, 응답 시간이 5초 이상 걸렸다거나, 오류가 발생한 페이지를 조회한다든가.... 하는 식으로 추적을 할 수 있습니다.

여기서도 한 가지 재미있는 점이 있는데요, 국내의 경우 제니퍼가 X-View라는 형식으로 문제 분석의 직관성을 대표하고 있어 다른 국내 APM 제품도 이에 맞춰 보여주려고 하는데, 해외의 경우 대부분 "목록" 형식으로 필터링하는 식의 뷰를 제공한다는 점입니다. (다들 나름대로의 장단점이 있습니다. ^^)

이글에서 짧게 소개해 아쉬운 분은, 마침 이틀 후에 datadog 측에서 웨비나를 준비하고 있으므로 한 번 참여해 보시는 것도 좋을 듯합니다. ^^

심도 있는 스페셜 에디션 웨비나에서 Datadog 엔지니어와 알찬 1시간을 보내보세요!
한국어 발표자: Sungwook Lee - 7월 10일 14:00 (한국시간 기준)
; https://www.datadoghq.com/ko/dg/webinars/demo-webinars-se-slo-ko/




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 11/22/2022]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 61  62  [63]  64  65  66  67  68  69  70  71  72  73  74  75  ...
NoWriterDateCnt.TitleFile(s)
12072정성태12/9/201910926오류 유형: 583. iisreset 수행 시 "No such interface supported" 오류
12071정성태12/9/201913234오류 유형: 582. 리눅스 디스크 공간 부족 및 safemode 부팅 방법
12070정성태12/9/201915402오류 유형: 581. resize2fs: Bad magic number in super-block while trying to open /dev/.../root
12069정성태12/2/201911761디버깅 기술: 139. windbg - x64 덤프 분석 시 메서드의 인자 또는 로컬 변수의 값을 확인하는 방법
12068정성태11/28/201915112디버깅 기술: 138. windbg와 Win32 API로 알아보는 Windows Heap 정보 분석 [3]파일 다운로드2
12067정성태11/27/201911765디버깅 기술: 137. 실제 사례를 통해 Debug Diagnostics 도구가 생성한 닷넷 웹 응용 프로그램의 성능 장애 보고서 설명 [1]파일 다운로드1
12066정성태11/27/201911625디버깅 기술: 136. windbg - C# PInvoke 호출 시 마샬링을 담당하는 함수 분석 - OracleCommand.ExecuteReader에서 OpsSql.Prepare2 PInvoke 호출 분석
12065정성태11/25/201910494디버깅 기술: 135. windbg - C# PInvoke 호출 시 마샬링을 담당하는 함수 분석파일 다운로드1
12064정성태11/25/201912690오류 유형: 580. HTTP Error 500.0/500.33 - ANCM In-Process Handler Load Failure
12063정성태11/21/201911718디버깅 기술: 134. windbg - RtlReportCriticalFailure로부터 parameters 정보 찾는 방법
12062정성태11/21/201911796디버깅 기술: 133. windbg - CoTaskMemFree/FreeCoTaskMem에서 발생한 덤프 분석 사례 - 두 번째 이야기
12061정성태11/20/201911964Windows: 167. CoTaskMemAlloc/CoTaskMemFree과 윈도우 Heap의 관계
12060정성태11/20/201912337디버깅 기술: 132. windbg/Visual Studio - HeapFree x64의 동작 분석
12059정성태11/20/201911936디버깅 기술: 131. windbg/Visual Studio - HeapFree x86의 동작 분석
12058정성태11/19/201912730디버깅 기술: 130. windbg - CoTaskMemFree/FreeCoTaskMem에서 발생한 덤프 분석 사례
12057정성태11/18/20199866오류 유형: 579. Visual Studio - Memory 창에서 유효한 주소 영역임에도 "Unable to evaluate the expression." 오류 출력
12056정성태11/18/201913693개발 환경 구성: 464. "Microsoft Visual Studio Installer Projects" 프로젝트로 EXE 서명 및 MSI 파일 서명 방법파일 다운로드1
12055정성태11/17/20199426개발 환경 구성: 463. Visual Studio의 Ctrl + Alt + M, 1 (Memory 1) 등의 단축키가 동작하지 않는 경우
12054정성태11/15/201910760.NET Framework: 869. C# - 일부러 GC Heap을 깨뜨려 GC 수행 시 비정상 종료시키는 예제
12053정성태11/15/201912444Windows: 166. 윈도우 10 - 명령행 창(cmd.exe) 속성에 (DotumChe, GulimChe, GungsuhChe 등의) 한글 폰트가 없는 경우
12052정성태11/15/201911553오류 유형: 578. Azure - 일정(schedule)에 등록한 runbook이 1년 후 실행이 안 되는 문제(Reason - The key used is expired.)
12051정성태11/14/201914020개발 환경 구성: 462. 시작하자마자 비정상 종료하는 프로세스의 메모리 덤프 - procdump [1]
12050정성태11/14/201911696Windows: 165. AcLayers의 API 후킹과 FaultTolerantHeap
12049정성태11/13/201911793.NET Framework: 868. (닷넷 프로세스를 대상으로) 디버거 방식이 아닌 CLR Profiler를 이용해 procdump.exe 기능 구현
12048정성태11/12/201912558Windows: 164. GUID 이름의 볼륨에 해당하는 파티션을 찾는 방법
12047정성태11/12/201914407Windows: 163. 안전하게 eject시킨 USB 장치를 물리적인 재연결 없이 다시 인식시키는 방법
... 61  62  [63]  64  65  66  67  68  69  70  71  72  73  74  75  ...