리소스 로그를 사용하여 Azure Stream Analytics 문제 해결
경우에 따라 Azure Stream Analytics 작업이 예기치 않게 처리를 중지합니다. 이 이벤트 종류의 문제를 해결하는 것이 중요합니다. 오류는 예기치 않은 쿼리 결과, 디바이스에 대한 연결 또는 예기치 않은 서비스 중단으로 인해 발생할 수 있습니다. Stream Analytics에서 리소스 로그를 사용하면 이와 같은 오류가 발생했을 때 문제 원인을 파악하고 복구 시간을 단축할 수 있습니다.
모든 작업에 대해 리소스 로그를 사용하도록 설정하는 것이 좋습니다. 디버깅 및 모니터링에 매우 유용합니다.
로그 형식
Stream Analytics에서는 다음과 같은 두 가지 형식의 로그를 제공합니다.
활동 로그(Always On) - 작업에서 수행되는 조작에 대한 인사이트를 제공합니다.
리소스 로그(구성 가능) - 작업과 관련하여 발생하는 모든 항목에 대해 더 다양한 인사이트를 제공합니다. 리소스 로그는 작업이 생성될 때 시작되고 작업이 삭제될 때 종료됩니다. 작업이 업데이트되고 실행되는 동안 이벤트를 처리합니다.
참고 항목
Azure Storage, Azure Event Hubs 및 Azure Monitor 로그와 같은 서비스를 사용하여 맞지 않는 데이터를 분석할 수 있습니다. 그러한 서비스에 대한 가격 책정 모델에 따라 요금이 청구됩니다.
참고 항목
이 문서는 Log Analytics 대신 Azure Monitor 로그라는 용어를 사용하도록 최근에 업데이트되었습니다. 로그 데이터는 여전히 Log Analytics 작업 영역에 저장되며 동일한 Log Analytics 서비스에 의해 계속 수집 및 분석됩니다. Azure Monitor에서 로그의 역할을 보다 잘 반영하기 위해 용어를 업데이트하고 있습니다. 자세한 내용은 Azure Monitor 용어 변경을 참조하세요.
활동 로그를 사용하여 디버그
활동 로그는 기본적으로 켜져 있고 Stream Analytics 작업에서 수행한 조작에 대한 높은 수준의 인사이트를 제공합니다. 활동 로그에 있는 정보는 작업에 영향을 미치는 문제의 근본 원인을 찾는 데 도움이 될 수 있습니다. Stream Analytics의 활동 로그를 사용하려면 다음 단계를 수행합니다.
Azure Portal에 로그인하고 개요 아래에서 활동 로그를 선택합니다.
수행된 조작 목록을 볼 수 있습니다. 작업 실패의 원인이 된 조작에는 빨간색 정보 풍선이 있습니다.
해당 요약 보기를 보려면 조작을 선택합니다. 여기에는 보통 제한된 정보가 표시됩니다. 조작에 대해 자세히 알아보려면 JSON을 선택합니다.
아래로 스크롤하여 실패한 조작의 원인이 된 오류의 세부 정보를 제공하는 JSON의 속성 섹션으로 이동합니다. 이 예제에서는 범위를 벗어난 위도 값의 런타임 오류로 인해 조작이 실패했습니다. Stream Analytics 작업에서 처리하는 데이터의 불일치로 데이터 오류가 발생합니다. 다른 입력 및 출력 데이터 오류와 그 이유에 대해 알아볼 수 있습니다.
JSON의 오류 메시지에 따라 정정 작업을 수행할 수 있습니다. 이 예제에서는 쿼리에 추가해야 하는 위도 값이 -90도-90도 사이인지 확인합니다.
활동 로그의 오류 메시지가 근본 원인을 식별하는 데 도움이 되지 않으면 리소스 로그를 사용하도록 설정하고 Azure Monitor 로그를 사용합니다.
Azure Monitor 로그에 진단 보내기
리소스 로그를 켜고 Azure Monitor 로그로 전송하는 것이 좋습니다. 기본적으로 해제되어 있습니다. 설정하려면 다음 단계를 완료합니다.
아직 없는 경우 Log Analytics 작업 영역을 만듭니다. Stream Analytics 작업과 동일한 지역에 Log Analytics 작업 영역을 두는 것이 좋습니다.
Azure Portal에 로그인하고 Stream Analytics 작업으로 이동합니다. 모니터링 아래에서 진단 로그를 선택합니다. 다음으로, 진단 켜기를 선택합니다.
진단 설정 이름에 이름을 입력하고 로그에서 실행 및 작성을 선택하고 메트릭에서 AllMetrics을 선택합니다. 그런 다음 Log Analytics로 보내기를 선택하고 작업 영역을 선택합니다. 저장을 선택합니다.
Stream Analytics 작업이 시작되면 리소스 로그가 Log Analytics 작업 영역으로 라우팅됩니다. 작업에 대한 리소스 로그를 보려면 모니터링 섹션에서 로그를 선택합니다.
Stream Analytics는 관심 있는 로그를 쉽게 검색할 수 있도록 미리 정의된 쿼리를 제공합니다. 왼쪽 창에서 미리 정의된 쿼리를 선택하고 실행을 선택할 수 있습니다. 하단 창에 쿼리 결과가 표시됩니다.
리소스 로그 범주
Azure Stream Analytics는 두 가지 범주의 리소스 로그를 캡처합니다.
작성: 작업 생성, 입/출력 추가 및 삭제, 쿼리 추가 및 업데이트, 작업 시작 및 중지 등 작업 작성 조작에 관련된 로그 이벤트를 캡처합니다.
실행: 작업 실행 중 발생하는 이벤트를 캡처합니다.
- 연결 오류
- 다음을 포함하는 데이터 처리 오류
- 쿼리 정의를 따르지 않는 이벤트(필드 형식 및 값 불일치, 필드 누락 등)
- 식 평가 오류
- 다른 이벤트 및 오류
모든 로그는 JSON 형식으로 저장됩니다. 리소스 로그 스키마에 대해 알아보려면 리소스 로그 스키마를 참조하세요.