• EnglishEspañol日本語한국어Português
  • 로그인지금 시작하기

사용자의 편의를 위해 제공되는 기계 번역입니다.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

문제 신고

.NET 비동기 메트릭 누락

문제

WebApi, HttpClient, SqlCommand, SqlDataReader, NpgsqlCommand 또는 로그 리소스에 대한 비동기 트랜잭션이 표시되지 않습니다. 이 문제는 일반적으로 .NET 프레임워크 4.0 이하에서 뉴렐릭의 .NET 에이전트 로 생성된 후 .NET 프레임워크 4.5 이상으로 마이그레이션된 앱에서 발생합니다.

해결책

파이프라인에 대한 appSetting 업그레이드

다음을 사용하는 경우 특정 appSetting 또는 system.web 설정이 필요합니다.

  • WebApi1 또는 WebApi2
  • HttpClient, SqlCommand, SqlDataReader 또는의 비동기 메서드 NpgsqlCommand
  • 비동기 관련 사용자 지정 트랜잭션 또는 사용자 지정 계측
  • New Relic .NET 에이전트 버전 5.11.53.0 이상
  • 앱의 대상으로 .NET Framework 4.5 이상

이러한 조건이 적용되는 경우 앱이 .NET 4.5에 도입된 업그레이드된 요청 처리 파이프라인을 사용하는지 확인해야 합니다.

업그레이드된 파이프라인을 사용하려면 web.config 에 다음 설정 중 하나가 포함되어 있는지 확인하세요. 두 설정 모두 표시되지 않으면 다음 중 하나를 추가합니다.

권장 사항: 새 파이프라인과의 호환성 확인

선택 사항: 런타임 시 비동기 코드에 대한 추가 검사를 수행하도록 .NET Framework에 지시할 수 있습니다. 이러한 검사는 레거시 ASP 파이프라인에 의해 마스킹될 수 있는 비동기 코드의 일반적인 문제를 포착합니다.

앱이 문제 없이 통과하면 앱이 새 파이프라인을 올바르게 처리한다고 확신할 수 있습니다. 자세한 내용은 Microsoft의 구성 설명서 를 참조하십시오.

추가 검사를 시행하려면 web.config 에 다음을 추가하세요.

<configuration>
<appSettings>
<add key="aspnet:AllowAsyncDuringSyncStages" value="false" />
</appSettings>
<configuration>

원인

레거시 통합 파이프라인이 있는 경우 비동기 계측이 비활성화됩니다. .NET 4.5 이전에는 통합 파이프라인으로 인해 교착 상태가 발생할 수 있었습니다. 이 .NET Framework 버그에 대한 자세한 내용은 다음을 참조하세요.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.