Application Insights에서 가용성 테스트 오류 진단

이 문서에서는 Application Insights 문제 해결 보고서에 액세스하는 방법을 설명합니다. 이 보고서를 사용하면 가용성 테스트가 실패하는 일반적인 문제를 쉽게 진단할 수 있습니다.

Application Insights에서 문제 해결 보고서를 찾기 위해 엔드 투 엔드 트랜잭션 세부 정보를 보는 방법을 보여 주는 Azure Portal 애니메이션.

참고 항목

많은 웹 테스트 관련 문제는 부실 또는 오래된 DNS 레코드로 인해 발생합니다. 첫 번째 문제 해결 단계로 로컬 컴퓨터에서 DNS 캐시를 플러시하는 것이 좋습니다.

Windows에서 ipconfig /flushdns 명령을 실행 합니다 . 다른 운영 체제의 경우 동일한 명령이 다릅니다.

Application Insights 문제 해결 보고서 보기

Application Insights 문제 해결 보고서를 보려면 다음 단계를 수행합니다.

  1. Application Insights 리소스의 가용성 페이지에서 가용성 테스트 선택 제목을 찾습니다. 해당 제목 아래에서 개별 가용성 테스트의 이름을 선택하거나 전체 테스트를 선택하여 모든 테스트 이름의 결합된 결과를 확인합니다.

  2. 다음 작업 중 하나를 수행합니다.

    • 테스트 이름에 대한 가용성 결과 창에서 제목으로 드릴인찾은 다음 실패 단추를 선택합니다. 그런 다음 샘플 가용성 테스트 창에서 테스트 이름에 대한 테스트 실행(특정 지역 및 시간을 나타낸)을 선택합니다.

    • 가용성 그래프에서 산점도 보기를 선택한 다음 산점도 그래프에서 점 중 하나를 선택합니다.

  3. 엔드 투 엔드 트랜잭션 세부 정보 페이지에서 이벤트를 선택한 다음 가용성 속성 테이블 내의 아무 곳이나 선택하여 문제 해결 보고서 요약 섹션을 엽니다.

  4. 문제 해결 보고서 요약 섹션에서 관련 오류 이름을 찾은 다음 해당 항목의 이동 단계 링크를 선택하여 문제 해결 보고서 세부 정보를 확인합니다.

문제 해결 보고서를 사용하여 가능한 실패 원인 확인

다음 표에서는 보고서에서 찾을 수 있는 단계, 오류 메시지 및 가능한 원인을 나열합니다.

Step 오류 메시지 가능한 원인
연결 재사용 이 문제에 대한 특정 오류 메시지가 반환되지 않습니다. 웹 테스트 단계는 이전에 설정된 연결에 따라 달라집니다. 따라서 DNS, 연결 또는 SSL 단계가 필요하지 않습니다.
DNS 확인 원격 이름을 확인할 수 없습니다. "<your-URL>" DNS 확인 프로세스가 실패합니다. 이는 잘못 구성된 DNS 레코드 또는 임시 DNS 서버 오류로 인해 발생할 가능성이 큽니다.
연결 설정 연결된 쪽으로부터 일정 기간 응답이 없어 연결하지 못했습니다. 서버가 HTTP 요청에 응답하지 않습니다. 일반적인 원인은 서버의 방화벽이 테스트 에이전트를 차단하고 있기 때문일 수 있습니다. Azure Virtual Network 내에서 테스트하려면 환경에 가용성 서비스 태그를 추가합니다.
TLS 전송 클라이언트와 서버는 공통 알고리즘이 없기 때문에 서로 통신할 수 없습니다. TLS 1.0, 1.1 및 1.2만 지원됩니다. SSL은 지원되지 않습니다. 이 단계에서는 SSL 인증서의 유효성을 검사하지 않고 보안 연결만 설정합니다. 이 단계는 오류가 발생한 경우에만 표시됩니다.
응답 헤더 수신 전송 연결에서 데이터를 읽을 수 없습니다. 연결이 닫혔습니다. 서버가 응답 헤더에 프로토콜 오류를 커밋합니다. 예를 들어 응답이 완전히 읽혀지지 않으면 서버가 연결을 닫습니다.
응답 본문 수신 전송 연결에서 데이터를 읽을 수 없어 연결이 끊어졌습니다. 서버가 응답 본문에서 프로토콜 오류를 커밋합니다. 예를 들어 응답이 완전히 읽혀지지 않거나 청크 크기가 청크 분할된 응답 본문에 잘못된 경우 서버에서 연결을 닫습니다.
리디렉션 제한 유효성 검사 이 웹 페이지에 리디렉션이 너무 많습니다. 이 요청은 자동 리디렉션에 대한 제한을 초과했기 때문에 이 루프는 여기서 종료됩니다. 리디렉션은 테스트당 10으로 제한됩니다.
상태 코드 유효성 검사 200 - OK가 예상된 상태 400 - BadRequest와 일치하지 않습니다. 반환된 상태 코드는 성공으로 계산됩니다. "200" 코드는 일반 웹 페이지가 반환되었음을 나타냅니다.
콘텐츠 유효성 검사 필수 텍스트 '<expected-response-text>'가 응답에 나타나지 않았습니다.

문자열은 응답에서 대/소문자를 구분하는 정확한 일치 항목이 아닙니다. 예를 들어 "Welcome!" 문자열은 와일드카드 문자(예: 별표)가 없는 일반 문자열이어야 합니다. 페이지 콘텐츠가 변경되면 문자열을 업데이트해야 할 수 있습니다. 콘텐츠 일치에서는 영어 문자만 지원합니다.

응답 본문이 1,000,000바이트보다 긴 경우에도 콘텐츠 일치가 실패합니다. 클라이언트가 해당 바이트 수를 읽은 후 응답 본문 읽기를 중지하고 연결을 삭제합니다. 이 동작으로 인해 클라이언트가 성공 상태 코드를 반환하더라도 서버 ClientConnectionFailure 에서 예외가 발생합니다.

Azure Portal에서 누락된 테스트 결과 이 문제에 대한 특정 오류 메시지가 반환되지 않습니다. 가용성 테스트의 엔드 투 엔드 트랜잭션 세부 정보를 볼 때 Azure Portal에서 테스트 결과가 누락됩니다. UTF8이 아닌 문자는 웹 테스트 결과 보기에 지원되지 않습니다. 가용성 테스트를 사용하여 호출되는 엔드포인트의 응답에 UTF8이 아닌 문자가 없는지 확인합니다.
지원되지 않는 URL 이 URL은 지원되지 않습니다.

가용성 테스트는 공개적으로 사용 가능한 IP 주소 및 호스트 이름을 통해서만 통신할 수 있습니다. 이 오류는 공용 인터넷을 통해 라우팅할 수 없는 내부 IP 주소와 통신하려고 할 때 발생할 수 있습니다.

이 오류를 해결하려면 공용 IP 주소만 웹 테스트에 정의되어 있고 웹 테스트의 DNS 조회는 유효한 공개적으로 라우팅 가능한 IP 주소만 반환하는 데 달려 있는지 확인합니다.

참고 항목

연결 다시 사용 단계가 있는 경우 다음 단계가 존재하지 않습니다.

  • DNS 확인
  • 연결 설정
  • TLS 전송

다음 단계

도움을 요청하십시오.

질문이 있거나 도움이 필요한 경우 지원 요청을 생성하거나Azure 커뮤니티 지원에 문의하세요. Azure 피드백 커뮤니티에 제품 피드백을 제출할 수도 있습니다.