[C#] Simple Performance Logger

  • Post author:
  • Post category:
  • Post comments:0 Comments
  • Post last modified:December 8, 2005

PerformanceLogger는 어플리케이션의 각 구간별 실행시간을 측정하기 위한 객체다. 단순히 측정하고자 하는 구간의 시작지점과 종료지점을 지정해주는 것만으로 사용할 수 있다. 전문적인 프로필러를 사용하기 어려운 상황이거나, 간단히 병목지점을 파악하고자 할 때 유용하다.

PerformanceLogger는 System.Diagnostics.Trace와 같이 Singleton 패턴으로 구현되어서 사용하기 쉽다. 또한 다중쓰레드 환경에서도 잘 작동한다.

소스코드 다운로드: kaistizen.Diagnostics.zip

소스에는 예제가 함께 첨부되어 있으니 어떻게 작동하는지 쉽게 알 수 있다. 다음은 예제 소스코드의 일부와 그 결과 값이다.

PerformanceLogger.Instance.Mark("First Sleep",StartEndFlag.Start);
Thread.Sleep(5);
PerformanceLogger.Instance.Mark("First Sleep",StartEndFlag.End);
[Single Thread]
[Second Sleep] 00:00:00.1250000
[Third Sleep] 00:00:00.1875000
[First Sleep] 00:00:00.0156250

[Multi Thread]
[First Thread] 00:00:00.0468750
[Second Thread] 00:00:00.0937500

Press any key to continue
Kubernetes, DevSecOps, AWS, 클라우드 보안, 클라우드 비용관리, SaaS 의 활용과 내재화 등 소프트웨어 개발 전반에 도움이 필요하다면 도움을 요청하세요. 지인이라면 가볍게 도와드리겠습니다. 전문적인 도움이 필요하다면 저의 현업에 방해가 되지 않는 선에서 협의가능합니다.
follow me
  • RT @exbxtx: 아 근데 너무 웃기다 . . 트래픽 발생량 넷플릭스는 4위인데 SK가 넷플릭스 물고 늘어지면서 넷플릭스법이라고 붙여진거 . . 심지어 이것 때문에 네이버랑 카카오까지 엮여서 지금 인터넷업계 난리난거임 . . 여기에서 제일 이득…
    16 hours ago
  • RT @yoox5135: ①대만의 작가 盛浩偉가 한국 여러분께 호소합니다. 만약에 당신이 중국공산당과 홍콩경찰의(홍콩사람들에 대한) 폭력에 반대한다면, 영화 “뮬란” 보이콧에 동참해 주세요. 주역을 맡은 류이페이(미국국적)가 공공연하게 홍콩경찰을 지…
    16 hours ago
  • https://t.co/3HNEvXY673
    1 day ago
Buy me a coffeeBuy me a coffee
×
Kubernetes, DevSecOps, AWS, 클라우드 보안, 클라우드 비용관리, SaaS 의 활용과 내재화 등 소프트웨어 개발 전반에 도움이 필요하다면 도움을 요청하세요. 지인이라면 가볍게 도와드리겠습니다. 전문적인 도움이 필요하다면 저의 현업에 방해가 되지 않는 선에서 협의가능합니다.
Latest Posts