.NET 진단 도구

.NET은 애플리케이션을 진단하는 데 사용할 수 있는 다양한 도구를 지원합니다.

IDE 및 편집기

Visual Studio

Visual Studio는 Windows에서 .NET 개발자를 위한 가장 포괄적인 IDE입니다. 여기에는 .NET 개발자가 애플리케이션을 진단하는 데 도움이 되는 디버깅성능 프로파일링 도구가 포함됩니다.

Visual Studio Code

Visual Studio Code는 데스크톱에서 실행되며 Windows, macOS 및 Linux에서 사용할 수 있는 간단하지만 강력한 소스 코드 편집기입니다. .NET에 대한 로컬 및 원격 디버깅을 지원합니다.

CLI 도구

dotnet-counters

dotnet-counters는 1단계 상태 모니터링 및 성능 조사를 위한 성능 모니터링 도구입니다. EventCounterAPI를 통해 게시된 성능 카운터 값을 관찰합니다. 예를 들어 .NET Core 애플리케이션에서 throw되는 CPU 사용량 또는 예외 발생률과 같은 항목을 신속하게 모니터링할 수 있습니다.

dotnet-dump

dotnet dump 도구는 네이티브 디버거 없이 Windows 및 Linux 코어 덤프를 수집하 고 분석하는 방법입니다.

dotnet-gcdump

dotnet-gcdump 도구로 라이브 .NET 프로세스의 GC(가비지 수집기) 덤프를 수집하는 방법입니다.

dotnet-monitor

dotnet-monitor 도구는 프로덕션 환경에서 .NET 애플리케이션을 모니터링하고 필요에 따라 또는 지정된 조건에서 수집하기 위한 자동화된 규칙을 사용하여 진단 아티팩트(예: 덤프, 추적, 로그, 메트릭)를 수집하는 방법을 제공합니다.

dotnet-trace

.NET Core에는 진단 데이터를 노출하는 EventPipe가 포함됩니다. dotnet-trace 도구를 사용하면 느리게 실행되는 앱을 근본 원인을 찾아야 하는 시나리오에서 도움이 될 수 있는 앱의 흥미로운 프로파일링 데이터를 앱에서 사용할 수 있습니다.

dotnet-stack

dotnet-stack 도구를 사용하면 실행 중인 .NET 프로세스의 모든 스레드에 대해 관리되는 스택을 빠르게 인쇄할 수 있습니다.

dotnet-symbol

dotnet-symbol은 코어 덤프 또는 미니덤프를 여는 데 필요한 파일(예: 기호, DAC/DBI 및 호스트 파일)을 다운로드합니다. 다른 컴퓨터에서 캡처된 덤프 파일을 디버깅하기 위한 기호 및 모듈이 필요하면 이 도구를 사용합니다.

dotnet-sos

dotnet-sos는 Linux 및 macOS(그리고 Windbg/cdb를 사용하는 경우 Windows에)에 SOS 디버깅 확장을 설치합니다.

기타 도구

PerfCollect

PerfCollectperfLTTng로 추적을 수집하는 데 사용할 수 있는 bash 스크립트로, Linux 배포판에서 실행되는 .NET 앱에 대한 보다 자세한 성능 분석을 위해 사용할 수 있습니다.