2010-11-24 3 views
0

나는 복잡한 ASP.NET 응용 프로그램을 가지고 있으며 2009 년부터 실행 중입니다. 성능을 모니터링하고 어떤 계층의 메서드가 시간 또는 리소스를 소비하는지 확인해야합니다. 그런 다음 방법을 최적화 할 수 있습니다.ASP.NET의 페이지, 비즈니스 및 데이터 액세스 계층에 각 메서드의 추출 시간을 기록하는 방법은 무엇입니까?

지금 SQL Profiler를 사용하여 쿼리를 확인하고 데이터베이스를 단계별로 조정합니다. 다른 레이어 (UI, 서비스 및 저장소)에 대해 동일한 작업을 수행하려고합니다.

나는 Postsharp 및 엔터프라이즈 라이브러리 정책 주입 응용 프로그램 블록을 사용했습니다.

일부 속성을 구현하여 일부 클래스에 추가하여 BeforeMethodEntry 및 AfterMethodEntry (AOP 모델)를 자동으로 가져 오는 데 도움이됩니다. 따라서 각 메소드의 실행 시간을 얻을 수 있습니다. 예외 로그 및 페이지 뷰 로그도 처리합니다.

하지만 실행중인 응용 프로그램을 모니터링하는 또 다른 구현/표준 솔루션이있을 수 있습니다.

추신 : 제 3 자 라이브러리가 필요없는 ExceptionHttpModule 및 PageViewHttpModule을 구현하는 것과 같은 다른 솔루션을 구현했습니다. 그것은 내 요구 사항을 충족하지 않습니다.

* 간단히 말해서, 레이어의 활동 (특히 실행 시간)을 기록하고 모니터링하고 싶습니다. *

답변

0

Spring.Net Aop을 살펴볼 수 있습니다. AroundAdvice 인 경우 메서드 실행 전에 StopWatch를 시작하고 끝나면 StopWatch를 시작할 수 있습니다. PostSharp에서 사용하는 것처럼 (예 : 속성 사용) 사용할 수 있습니다.

0

외부 Firefox의 경우 Google Pagespeed 또는 iMacros와 같은 도구가 있습니까?

+0

서버에 mehods를 기록하고 싶습니다. –