Azure Monitor의 진단 설정
이 게시물에서는 Azure 플랫폼 메트릭,리소스 로그 및 활동 로그를 다른 대상으로 보내기 위한 진단 설정을 만들고 구성하는 방법에 대해 자세히 설명합니다.
각 Azure 리소스에는 다음 기준을 정의하는 자체 진단 설정이 필요합니다.
- 원본: 설정에 정의된 대상으로 보낼 메트릭 및 로그 데이터의 형식입니다. 사용 가능한 형식은 리소스 종류에 따라 다릅니다.
- 대상: 보내려는 하나 이상의 대상입니다.
단일 진단 설정으로 각 대상 중 하나만 정의할 수 있습니다. 데이터를 2개 이상의 특정 대상 유형(예: 두 개의 다른 Log Analytics 작업 영역)으로 보내려면 여러 개의 설정을 만듭니다. 각 리소스에는 최대 5개의 진단 설정이 있을 수 있습니다.
Warning
리소스를 삭제, 변경, 이동하거나 리소스 그룹 또는 구독 간에 마이그레이션해야 하는 경우 먼저 해당 진단 설정을 삭제합니다. 그렇지 않으면 이 리소스를 다시 만들 때 삭제된 리소스에 대한 진단 설정이 각 리소스의 리소스 구성에 따라 새 리소스에 포함될 수 있습니다. 진단 설정이 새 리소스에 포함된 경우 진단 설정에 정의된 대로 리소스 로그 컬렉션을 다시 시작하고 해당 메트릭 및 로그 데이터를 이전에 구성된 대상으로 보냅니다.
또한 삭제할 리소스에 대한 진단 설정은 삭제하고 환경을 깨끗하게 유지하기 위해 다시 사용하지 않는 것이 좋습니다.
다음 동영상은 진단 설정이 있는 라우팅 리소스 플랫폼 로그를 안내합니다. 동영상은 예전에 찍은 것입니다. 다음 변경 내용에 유의합니다.
- 현재 4개의 대상이 있습니다. 특정 Azure Monitor 파트너에게 플랫폼 메트릭 및 로그를 보낼 수 있습니다.
- 범주 그룹이라는 새로운 기능이 2021년 11월에 도입되었습니다.
이 새로운 기능에 대한 정보는 이 문서에 포함되어 있습니다.
원본
진단 정보에는 세 가지 원본이 있습니다.
- 플랫폼 메트릭은 기본적으로 구성 없이 Azure Monitor 메트릭으로 자동 전송됩니다. 지원되는 메트릭에 대한 자세한 내용은 Azure Monitor에서 지원되는 메트릭을 참조하세요
- 플랫폼 로그는 Azure 리소스와 해당 리소스가 사용하는 Azure 플랫폼에 대한 자세한 진단 및 감사 정보를 제공합니다.
- 리소스 로그는 대상으로 라우팅될 때까지 수집되지 않습니다. 지원되는 로그에 대한 자세한 내용은 Azure Monitor에서 지원되는 리소스 로그 범주를 참조하세요
- 활동 로그는 리소스를 만들거나 삭제하는 경우와 같이 리소스 외부의 리소스에 대한 정보를 제공합니다. 항목은 자체적으로 존재하지만 다른 위치로 라우팅될 수 있습니다.
메트릭
AllMetrics 설정은 리소스의 플랫폼 메트릭을 다른 대상으로 라우팅합니다. 이 옵션은 모든 리소스 공급자에 대해 제공되지 않을 수 있습니다.
리소스 로그
리소스 로그를 사용하면 개별적으로 라우팅할 로그 범주를 선택하거나 범주 그룹을 선택할 수 있습니다.
범주 그룹
참고 항목
범주 그룹은 모든 메트릭 리소스 공급자에 적용되지 않습니다. 공급자가 Azure Portal의 진단 설정에서 사용할 수 없는 경우 Azure Resource Manager 템플릿을 통해서도 사용할 수 없습니다.
개별 로그 범주를 선택하는 대신 범주 그룹을 사용하여 사전 정의된 그룹화를 기반으로 리소스 로그를 동적으로 수집할 수 있습니다. Microsoft는 모든 Azure 서비스에서 특정 사용 사례를 모니터링하는 데 도움이 되도록 그룹화를 정의합니다. 시간이 지남에 따라 새 로그가 출시되거나 평가가 변경되면 그룹의 범주가 업데이트될 수 있습니다. 로그 범주가 범주 그룹에서 추가되거나 제거되면 진단 설정을 업데이트할 필요 없이 로그 컬렉션이 자동으로 수정됩니다.
범주 그룹을 사용하면 다음을 수행할 수 있습니다.
- 더 이상 개별 범주 형식을 기반으로 리소스 로그를 개별적으로 선택할 수 없습니다.
- 더 이상 Azure Storage로 보낸 로그에 보존 설정을 적용할 수 없습니다.
현재 두 가지 범주 그룹이 있습니다.
- 모두: 리소스에서 제공하는 모든 리소스 로그입니다.
- 감사: 데이터 또는 서비스 설정과의 고객 상호 작용을 기록하는 모든 리소스 로그입니다. 감사 로그는 가장 관련성이 높은 감사 데이터를 제공하기 위한 각 리소스 공급자의 시도를 나타내지만 사용 사례에 따라 감사 표준 관점에서는 충분하지 않을 수 있습니다. 위에서 설명한 것처럼 수집된 항목은 동적이며 새 리소스 로그 범주를 사용할 수 있게 되면 시간이 지남에 따라 Microsoft에서 변경할 수 있습니다.
"감사" 범주 그룹은 "모두" 범주 그룹의 하위 집합이지만 Azure Portal 및 REST API는 이를 별도의 설정으로 간주합니다. "모든" 범주 그룹을 선택하면 "감사" 범주 그룹까지 선택된 경우에도 모든 감사 로그가 수집됩니다.
다음 이미지는 진단 설정 추가 페이지의 로그 범주 그룹을 보여 줍니다.
참고 항목
Azure SQL Database에 대해 감사를 사용하도록 설정해도 Azure SQL Database에 대한 감사를 사용하도록 설정하지 않습니다. 데이터베이스 감사를 사용하도록 설정하려면 Azure Database에 대한 감사 블레이드에서 사용하도록 설정해야 합니다.
활동 로그
활동 로그 설정 섹션을 참조하세요.
도착지
플랫폼 로그 및 메트릭은 다음 표에 나열된 대상으로 보낼 수 있습니다.
전송 중인 데이터의 보안을 보장하기 위해 모든 대상 엔드포인트는 TLS 1.2를 지원하도록 구성됩니다.
대상 | 설명 |
---|---|
Log Analytics 작업 영역 | 메트릭은 로그 형식으로 변환됩니다. 이 옵션은 모든 리소스 종류에 사용 가능하지 않을 수 있습니다. Azure Monitor 로그 저장소(Log Analytics를 통해 검색 가능)로 보내면 기존 로그 데이터를 사용하여 쿼리, 경고 및 시각화에 통합하는 데 도움이 됩니다. |
Azure Storage 계정 | 로그 및 메트릭을 스토리지 계정에 보관하면 감사, 정적 분석 또는 백업에 유용합니다. Azure Monitor 로그 또는 Log Analytics 작업 영역을 사용하는 것과 비교할 때 Storage는 더 저렴하고 로그를 무기한으로 보관할 수 있습니다. |
Azure Event Hubs | 로그 및 메트릭을 Event Hubs로 보낼 때 타사 SIEM 및 기타 Log Analytics 솔루션과 같은 외부 시스템으로 데이터를 스트리밍할 수 있습니다. |
Azure Monitor 파트너 솔루션 | Azure Monitor와 기타 타사 모니터링 플랫폼 간에 전문화된 통합을 수행할 수 있습니다. 통합은 이미 파트너 중 하나를 사용 중인 경우에 유용합니다. |
활동 로그 설정
활동 로그는 진단 설정을 사용하지만 개별 리소스가 아닌 전체 구독에 적용되기 때문에 자체 사용자 인터페이스가 있습니다. 여기에 나열된 대상 정보는 여전히 적용됩니다. 자세한 내용은 Azure 활동 로그를 참조하세요.
요구 사항 및 제한 사항
이 섹션에서는 요구 사항 및 제한 사항에 대해 설명합니다.
원격 분석이 대상에 도달하기까지의 시간
진단 설정을 구성한 후에는 데이터가 90분 내에 선택한 대상으로 흐르기 시작해야 합니다. Log Analytics 작업 영역으로 로그를 보낼 때 테이블이 아직 없는 경우 자동으로 만들어집니다. 테이블은 첫 번째 로그 레코드가 수신될 때만 만들어집니다. 24시간 내에 정보를 얻지 못하는 경우 다음 중 하나가 문제일 수 있습니다.
- 로그가 생성되지 않습니다.
- 기본 라우팅 메커니즘에 문제가 있습니다.
문제가 발생하는 경우 구성을 사용하지 않도록 설정했다가 다시 사용하도록 설정해 봅니다. 문제가 계속 발생하면 Azure Portal을 통해 Azure 지원에 문의합니다.
원본로서의 메트릭
메트릭 내보내기에는 특정 제한 사항이 있습니다.
- 진단 설정을 통한 다차원 메트릭 보내기는 현재 지원되지 않습니다. 차원이 있는 메트릭은 차원 값 전체에서 집계된 플랫 단일 차원 메트릭으로 내보내집니다. 예를 들어 Blockchain의 IOReadBytes 메트릭은 노드 수준에서 탐색 및 차트 표시가 가능합니다. 그러나 진단 설정을 통해 내보낼 때 내보낸 메트릭은 모든 노드에 대한 모든 읽기 바이트를 표시합니다.
- 진단 설정으로 모든 메트릭을 내보낼 수 있는 것은 아닙니다. 내부 제한으로 인해 모든 메트릭을 Azure Monitor Logs 또는 Log Analytics로 내보낼 수 있는 것은 아닙니다. 자세한 내용은 지원되는 메트릭 목록에서 내보낼 수 있는 열을 참조하세요.
특정 메트릭에 대한 이러한 제한을 해결하려면 Metrics REST API를 사용하여 수동으로 추출할 수 있습니다. 그런 다음 Azure Monitor 데이터 수집기 API를 사용하여 Azure Monitor 로그로 가져올 수 있습니다.
대상 제한
진단 설정을 만들기 전에 진단 설정의 대상을 만들어야 합니다. 설정을 구성하는 사용자에게 두 구독에 대한 적절한 Azure 역할 기반 액세스 제어 액세스 권한이 있는 경우 대상이 로그를 보내는 리소스와 동일한 구독에 있을 필요는 없습니다. Azure Lighthouse를 사용하면 다른 Microsoft Entra 테넌트의 작업 영역, 스토리지 계정 또는 이벤트 허브로 진단 설정을 보낼 수도 있습니다.
다음 표에는 지역 제한을 포함하여 각 대상에 대한 고유한 요구 사항이 나타나 있습니다.
대상 | 요구 사항 |
---|---|
Log Analytics 작업 영역 | 작업 영역은 모니터링 중인 리소스와 동일한 지역에 있을 필요가 없습니다. |
스토리지 계정 | 모니터링되지 않는 다른 데이터가 저장된 기존 스토리지 계정은 사용하지 마세요. 데이터 형식을 분할하면 데이터에 대한 액세스를 더 잘 제어할 수 있습니다. 활동 로그와 리소스 로그를 함께 보관하는 경우 동일한 스토리지 계정을 사용하여 모든 모니터링 데이터를 중앙 위치에 보관하도록 선택할 수 있습니다. 데이터 수정을 방지하려면 변경이 불가능한 스토리지로 보냅니다. Azure Blob Storage에 대한 불변성 정책 설정 및 관리에서 설명하는 것과 같이 스토리지 계정에 대해 불변성 정책을 설정합니다. 보호된 추가 Blob 쓰기 사용하도록 설정을 포함하여 이 연결된 문서의 모든 단계를 따라야 합니다. 지역별 리소스인 경우 스토리지 계정이 모니터링되는 리소스와 동일한 지역에 있어야 합니다. 진단 설정은 가상 네트워크가 사용하도록 설정된 경우 스토리지 계정에 액세스할 수 없습니다. Azure Monitor 진단 설정 서비스에 스토리지 계정에 대한 액세스 권한이 부여되도록 스토리지 계정에서 이 방화벽 설정을 무시하려면 신뢰할 수 있는 Microsoft 서비스 허용을 사용하도록 설정해야 합니다. Azure DNS 영역 엔드포인트(미리 보기) 및 Azure Premium LRS(로컬 중복 스토리지) 스토리지 계정은 로그 또는 메트릭 대상으로 지원되지 않습니다. |
Event Hubs | 네임스페이스에 대한 공유 액세스 정책은 스트리밍 메커니즘에서 보유하는 권한을 정의합니다. Event Hubs로 스트리밍하려면 관리, 보내기 및 수신 권한이 필요합니다. 스트리밍을 포함하도록 진단 설정을 업데이트하려면 해당 Event Hubs 권한 부여 규칙에 대한 ListKey 권한이 있어야 합니다. 지역별 리소스인 경우 이벤트 허브 네임스페이스가 모니터링되는 리소스와 동일한 지역에 있어야 합니다. 가상 네트워크를 사용하도록 설정하면 진단 설정에서 Event Hubs 리소스에 액세스할 수 없습니다. Azure Monitor 진단 설정 서비스에 Event Hubs 리소스에 대한 액세스 권한이 부여되도록 Event Hubs에서 이 방화벽 설정을 바이패스하려면 신뢰할 수 있는 Microsoft 서비스 허용을 사용하도록 설정해야 합니다. |
파트너 솔루션 | 솔루션은 파트너에 따라 다릅니다. 자세한 내용은 Azure Native ISV 서비스 문서를 확인하세요. |
Application Insights에 대한 진단 로그
Log Analytics 작업 영역에 Application Insights에 대한 진단 로그를 저장하려는 경우 Application Insights 리소스의 기반이 되는 동일한 작업 영역으로 로그를 보내지 마세요. Application Insights가 이미 이 데이터를 저장하고 있기 때문에 이 구성으로 인해 중복 원격 분석이 표시될 수 있습니다. Application Insights 로그를 다른 Log Analytics 작업 영역으로 보냅니다.
Application Insights 로그를 다른 작업 영역으로 보낼 때 Application Insights는 여러 Log Analytics 작업 영역을 포함하여 Application Insight 리소스에서 원격 분석에 액세스한다는 점에 유의하세요. Application Insights 리소스와 연결된 Log Analytics 작업 영역으로만 Application Insights 사용자의 액세스를 제한합니다. 액세스 제어 모드를 작업영역 권한 요구로 설정하고 Application Insights가 Application Insights 리소스의 기반이 되는 Log Analytics 작업 영역에만 액세스할 수 있도록 Azure 역할 기반 액세스 제어를 통해 권한을 관리합니다.
비용 제어
Log Analytics 작업 영역에서 데이터를 수집하는 데 비용이 있으므로 각 서비스에 필요한 범주만 수집해야 합니다. 리소스 로그에 대한 데이터 볼륨은 서비스간에 크게 다릅니다.
이 데이터가 이미 메트릭에서 수집되고 있으므로 Azure 리소스에서 플랫폼 메트릭을 수집하려고 하지 않을 수도 있습니다. 로그 쿼리를 사용하여 더 복잡한 분석을 수행하기 위해 작업 영역에서 메트릭 데이터가 필요한 경우에만 메트릭을 수집하도록 진단 데이터를 구성합니다. 진단 설정은 리소스 로그의 세분화된 필터링을 허용하지 않습니다.
팁
Azure Monitor 비용을 줄이기 위한 전략은 비용 최적화 및 Azure Monitor를 참조하세요.