Ubuntu 환경에서 .NET Core의 profiling 및 postmortem debugging

Ubuntu(16.04) 환경에서 .NET Core 애플리케이션에서 대한 CPU Profiling은 기존의 Windows 환경에서 사용했던 PerfView라는 툴을 이용할 수 있다. CPU profiling을 위해서 우선 perfcollect 라는 툴을 Ubuntu 환경에 설치해야 한다. curl -OL http://aka.ms/perfcollect sudo chmod +x perfcollect sudo ./perfcollect install 설치가 완료 되면, 다음과 같은 순서로 CPU sampling을 할 수 있다. 애플리케이션을 수행할 terminal 창에서 아래를 수행한다….

0

Ubuntu 환경에서 .NET Core 애플리케이션의 High CPU 분석 가이드

다음은 Ubuntu (16.04)에서 수행하는 .NET Core 2.0 기반의 애플리케이션에서 high CPU hang 현상이 발생할 경우에 디버깅하는 방법에 대한 팁이다. 먼저 해당 애플리케이션이 CPU 사용량이 많다는 것을 확인할 수 있는 간단한 방법은 terminal 에서 top 명령어를 수행하는 것이다. 아래는 dotnet 관련 process의 CPU 사용량이 72.8%임을 확인할 수 있다. 이후에 원인을 찾기 위해 해당 프로세스에 lldb 디버거를…

0

Ubuntu 환경에서 .NET Core 어플리케이션의 crash core dump 분석 가이드

다음은 Ubuntu 기반의 .NET Core 애플리케이션에서 crash가 발생했을 때, core dump를 가지고 postmortem debugging 과정을 기술한 내용이다. Ubuntu (16.04)에서 수행중인 .NET Core 2.0 애플리케이션에서 crash가 발생하면, 애플리케이션 수행 폴더의 위치에서 core dump를 확인할 수 있다. .NET Core application crash에 기인한 Core dump 파일을 분석하기 위해서는 debugging 환경 구축이 필요한데, 일치하는 .NET Core 버전을 Ubuntu 머신에…

0