최신 경고로 마이그레이션 옵션 이해
클래식 경고는 퍼블릭 클라우드 사용자에 대해 사용 중지 됩니다. 21Vianet에서 운영하는 Azure Government 클라우드 및 Microsoft Azure에 대한 클래식 경고는 2024년 2월 29일에 사용 중지됩니다.
이 문서에서는 수동 마이그레이션 및 자발적 마이그레이션 도구가 작동하는 방식을 설명합니다. 이 도구는 나머지 경고 규칙을 마이그레이션하는 데 사용됩니다. 또한 몇 가지 일반적인 문제에 대한 솔루션도 설명합니다.
중요
활동 로그 경고(서비스 상태 경고 포함) 및 로그 검색 경고는 마이그레이션의 영향을 받지 않습니다. 마이그레이션은 여기에 설명된 클래식 경고 규칙에만 적용됩니다.
참고
클래식 경고 규칙이 유효하지 않은 경우(즉, 더 이상 사용되지 않는 메트릭 또는 삭제된 리소스에 있는 경우) 마이그레이션되지 않으며 서비스가 사용 중지된 후에는 사용할 수 없습니다.
클래식 경고를 최신 경고로 수동으로 마이그레이션
나머지 경고를 수동으로 마이그레이션하려는 고객은 다음 섹션을 사용하여 이미 마이그레이션할 수 있습니다. 또한 사용 중지되어 직접 마이그레이션할 수 없는 메트릭도 포함됩니다.
가상 머신의 게스트 메트릭
게스트 메트릭에 대한 새 메트릭 경고를 만들려면 먼저 게스트 메트릭을 Azure Monitor 로그 저장소로 보내야 합니다. 다음 지침에 따라 경고를 만듭니다.
게스트 메트릭을 수집하고 경고하는 더 많은 옵션이 있습니다. 자세히 알아보기.
스토리지 및 클래식 스토리지 계정 메트릭
스토리지 계정에 대한 모든 클래식 경고는 다음 메트릭에 대한 경고를 제외하고 마이그레이션할 수 있습니다.
- PercentAuthorizationError
- PercentClientOtherError
- PercentNetworkError
- PercentServerOtherError
- PercentSuccess
- PercentThrottlingError
- PercentTimeoutError
- AnonymousThrottlingError
- SASThrottlingError
- ThrottlingError
백분율 메트릭에 대한 클래식 경고 규칙은 이전 및 새 스토리지 메트릭 간의 매핑에 따라 마이그레이션되어야 합니다. 사용할 수 있는 새 메트릭이 절대 메트릭이므로 임계값을 적절하게 수정해야 합니다.
동일한 기능을 제공하는 결합된 메트릭이 없으므로 AnonymousThrottlingError, SASThrottlingError 및 ThrottlingError에 대한 클래식 경고 규칙을 두 개의 새 경고로 분할해야 합니다. 임계값을 적절하게 조정해야 합니다.
Azure Cosmos DB 메트릭
Azure Cosmos DB 메트릭에 대한 모든 클래식 경고는 다음 메트릭에 대한 경고를 제외하고 마이그레이션할 수 있습니다.
- 초당 평균 요청 수
- 일관성 수준
- Http 2xx
- Http 3xx
- 분당 최대 RUPM 사용
- 초당 최대 RU 수
- Mongo 기타 요청 요금
- Mongo 기타 요청 속도
- 관찰된 읽기 대기 시간
- 관찰된 쓰기 대기 시간
- 서비스 가용성
- 스토리지 용량
초당 평균 요청 수, 일관성 수준, 분당 사용된 최대 RUPM, 초당 최대 RU, 관찰된 읽기 대기 시간, 관찰된 쓰기 대기 시간 및 스토리지 용량은 현재 새 시스템에서 사용할 수 없습니다.
요청 계산 방법이 클래식 메트릭과 새 메트릭 간에 다르기 때문에 Http 2xx, Http 3xx 및 서비스 가용성과 같은 요청 메트릭에 대한 경고는 마이그레이션되지 않습니다. 이러한 메트릭에 대한 경고는 임계값이 조정된 상태에서 수동으로 다시 만들어야 합니다.
사용되지 않는 메트릭에 대한 클래식 경고 규칙
다음은 이전에 지원되었지만 결국 사용되지 않는 메트릭에 대한 클래식 경고 규칙입니다. 소수의 고객이 이러한 메트릭에 대해 잘못된 클래식 경고 규칙을 가질 수 있습니다. 이러한 경고 규칙은 유효하지 않으므로 마이그레이션되지 않습니다.
리소스 유형 | 사용되지 않는 메트릭 |
---|---|
Microsoft.DBforMySQL/servers | compute_consumption_percent, compute_limit |
Microsoft.DBforPostgreSQL/servers | compute_consumption_percent, compute_limit |
Microsoft.Network/publicIPAddresses | defaultddostriggerrate |
Microsoft.SQL/servers/databases | service_level_objective, storage_limit, storage_used, throttling, dtu_consumption_percent, storage_used |
Microsoft.Web/hostingEnvironments/multirolepools | averagememoryworkingset |
Microsoft.Web/hostingEnvironments/workerpools | bytesreceived, httpqueuelength |
동등한 새 경고 규칙 및 작업 그룹을 만드는 방법
마이그레이션 도구는 클래식 경고 규칙을 동등한 새 경고 규칙 및 작업 그룹으로 변환합니다. 대부분의 클래식 경고 규칙에서 동등한 새 경고 규칙은 windowSize
및 aggregationType
와 같이 동일한 속성을 가진 동일한 메트릭에 있습니다. 그러나 새 시스템에서 서로 다른 동등한 메트릭에 대한 몇 가지 클래식 경고 규칙이 있습니다. 다음 원칙은 아래 섹션에 지정되지 않은 한 클래식 경고의 마이그레이션에 적용됩니다.
-
빈도: 클래식 또는 새 경고 규칙이 조건을 확인하는 빈도를 정의합니다. 클래식 경고 규칙의
frequency
은(는) 사용자가 구성할 수 없으며 모든 리소스 종류에 대해 항상 5분이었습니다. 동등한 규칙의 빈도도 5분으로 설정됩니다. -
집계 형식: 관심 있는 창에서 메트릭을 집계하는 방법을 정의합니다.
aggregationType
은(는) 대부분의 메트릭에 대한 클래식 경고와 새 경고 간에도 동일합니다. 경우에 따라 메트릭이 클래식 경고와 새 경고 간에 다르기 때문에 동등한aggregationType
또는 메트릭에 대해 정의된primary Aggregation Type
이(가) 사용됩니다. - 단위: 경고가 생성되는 메트릭의 속성입니다. 일부 동등한 메트릭에는 서로 다른 단위가 있습니다. 임계값은 필요에 따라 적절하게 조정됩니다. 예를 들어 원래 메트릭에 단위로 초가 있지만 동등한 새 메트릭에 단위로 밀리초가 있는 경우 동일한 동작을 보장하기 위해 원래 임계값에 1000을 곱합니다.
-
기간 범위: 임계값과 비교할 메트릭 데이터가 집계되는 기간을 정의합니다. 5분, 15분, 30분, 1시간, 3시간, 6시간, 12시간, 1일 등의 표준
windowSize
값의 경우 동등한 새 경고 규칙에 대한 변경 사항이 없습니다. 다른 값의 경우 가장 가까운windowSize
이(가) 사용됩니다. 대부분의 고객에게는 이 변경 내용에 영향을 주지 않습니다. 소수의 고객의 경우 정확히 동일한 동작을 얻기 위해 임계값을 조정해야 할 수 있습니다.
다음 섹션에서는 새 시스템에서 서로 다른 동등한 메트릭을 자세히 설명합니다. 클래식 및 새 경고 규칙에 대해 동일하게 유지되는 모든 메트릭은 나열되지 않습니다. 여기의 새 시스템에서 지원되는 메트릭 목록을 찾을 수 있습니다.
Microsoft.Storage/storageAccounts 및 Microsoft.ClassicStorage/storageAccounts
BLOB, 테이블, 파일 및 큐와 같은 스토리지 계정 서비스의 경우 아래와 같이 다음 메트릭이 동등한 메트릭에 매핑됩니다.
클래식 경고의 메트릭 | 새 경고에 해당하는 메트릭 | 의견 |
---|---|---|
AnonymousAuthorizationError | "ResponseType"="AuthorizationError" 및 "Authentication" = "Anonymous" 차원을 사용하는 트랜잭션 메트릭 | |
AnonymousClientOtherError | "ResponseType"="ClientOtherError" 및 "Authentication" = "Anonymous" 차원을 사용하는 트랜잭션 메트릭 | |
AnonymousClientTimeOutError | "ResponseType"="ClientTimeOutError" 및 "Authentication" = "Anonymous" 차원을 사용하는 트랜잭션 메트릭 | |
AnonymousNetworkError | "ResponseType"="NetworkError" 및 "Authentication" = "Anonymous" 차원을 사용하는 트랜잭션 메트릭 | |
AnonymousServerOtherError | "ResponseType"="ServerOtherError" 및 "Authentication" = "Anonymous" 차원을 사용하는 트랜잭션 메트릭 | |
AnonymousServerTimeOutError | "ResponseType"="ServerTimeOutError" 및 "Authentication" = "Anonymous" 차원을 사용하는 트랜잭션 메트릭 | |
AnonymousSuccess | "ResponseType"="Success" 및 "Authentication" = "Anonymous" 차원을 사용하는 트랜잭션 메트릭 | |
AuthorizationError | "ResponseType"="AuthorizationError" 차원을 사용하는 트랜잭션 메트릭 | |
AverageE2ELatency | SuccessE2ELatency | |
AverageServerLatency | SuccessServerLatency | |
용량 | BlobCapacity | 'last' 대신 aggregationType 'average'를 사용합니다. 메트릭은 Blob service에만 적용됩니다 |
ClientOtherError | "ResponseType"="ClientOtherError" 차원을 사용하는 트랜잭션 메트릭 | |
ClientTimeoutError | "ResponseType"="ClientTimeOutError" 차원을 사용하는 트랜잭션 메트릭 | |
ContainerCount | ContainerCount | 'last' 대신 aggregationType 'average'를 사용합니다. 메트릭은 Blob service에만 적용됩니다 |
NetworkError | "ResponseType"="NetworkError" 차원을 사용하는 트랜잭션 메트릭 | |
ObjectCount | BlobCount | 'last' 대신 aggregationType 'average'를 사용합니다. 메트릭은 Blob service에만 적용됩니다 |
SASAuthorizationError | "ResponseType"="AuthorizationError" 및 "Authentication" = "SAS" 차원을 사용하는 트랜잭션 메트릭 | |
SASClientOtherError | "ResponseType"="ClientOtherError" 및 "Authentication" = "SAS" 차원을 사용하는 트랜잭션 메트릭 | |
SASClientTimeOutError | "ResponseType"="ClientTimeOutError" 및 "Authentication" = "SAS" 차원을 사용하는 트랜잭션 메트릭 | |
SASNetworkError | "ResponseType"="NetworkError" 및 "Authentication" = "SAS" 차원을 사용하는 트랜잭션 메트릭 | |
SASServerOtherError | "ResponseType"="ServerOtherError" 및 "Authentication" = "SAS" 차원을 사용하는 트랜잭션 메트릭 | |
SASServerTimeOutError | "ResponseType"="ServerTimeOutError" 및 "Authentication" = "SAS" 차원을 사용하는 트랜잭션 메트릭 | |
SASSuccess | "ResponseType"="Success" 및 "Authentication" = "SAS" 차원을 사용하는 트랜잭션 메트릭 | |
ServerOtherError | "ResponseType"="ServerOtherError" 차원을 사용하는 트랜잭션 메트릭 | |
ServerTimeOutError | "ResponseType"="ServerTimeOutError" 차원을 사용하는 트랜잭션 메트릭 | |
Success | "ResponseType"="Success" 차원을 사용하는 트랜잭션 메트릭 | |
TotalBillableRequests | 트랜잭션 | |
TotalEgress | 송신 | |
TotalIngress | 수신 | |
TotalRequests | 트랜잭션 |
Microsoft.DocumentDB/databaseAccounts
Azure Cosmos DB의 경우 아래와 같은 동등한 메트릭이 있습니다.
클래식 경고의 메트릭 | 새 경고에 해당하는 메트릭 | 의견 |
---|---|---|
AvailableStorage | AvailableStorage | |
데이터 크기 | DataUsage | |
문서 수 | DocumentCount | |
인덱스 크기 | IndexUsage | |
서비스를 사용할 수 없음 | ServiceAvailability | |
TotalRequestUnits | TotalRequestUnits | |
제한된 요청 | "StatusCode" = "429" 차원을 사용하는 TotalRequests | 'Average' 집계 형식이 'Count'로 수정됨 |
내부 서버 오류 | "StatusCode" = "500"} 차원을 사용하는 TotalRequests | 'Average' 집계 형식이 'Count'로 수정됨 |
Http 401 | "StatusCode" = "401" 차원을 사용하는 TotalRequests | 'Average' 집계 형식이 'Count'로 수정됨 |
Http 400 | "StatusCode" = "400" 차원을 사용하는 TotalRequests | 'Average' 집계 형식이 'Count'로 수정됨 |
총 요청 수 | TotalRequests | 'Max' 집계 형식이 'Count'로 수정됨 |
Mongo 개수 요청 요금 | MongoRequestCharge with dimension "CommandName" = "count" | |
Mongo 개수 요청 속도 | MongoRequestsCount with dimension "CommandName" = "count" | |
Mongo 삭제 요청 요금 | MongoRequestCharge with dimension "CommandName" = "delete" | |
Mongo 삭제 요청 속도 | MongoRequestsCount with dimension "CommandName" = "delete" | |
Mongo 삽입 요청 요금 | MongoRequestCharge with dimension "CommandName" = "insert" | |
Mongo 삽입 요청 속도 | MongoRequestsCount with dimension "CommandName" = "insert" | |
Mongo 쿼리 요청 요금 | MongoRequestCharge with dimension "CommandName" = "find" | |
Mongo 쿼리 요청 속도 | MongoRequestsCount with dimension "CommandName" = "find" | |
Mongo 업데이트 요청 요금 | MongoRequestCharge with dimension "CommandName" = "update" | |
Mongo 삽입 실패 요청 | MongoRequestCount with dimensions "CommandName" = "insert" and "Status" = "failed" | 'Average' 집계 형식이 'Count'로 수정됨 |
Mongo 쿼리 실패 요청 | MongoRequestCount with dimensions "CommandName" = "query" and "Status" = "failed" | 'Average' 집계 형식이 'Count'로 수정됨 |
Mongo 개수 실패 요청 | MongoRequestCount with dimensions "CommandName" = "count" and "Status" = "failed" | 'Average' 집계 형식이 'Count'로 수정됨 |
Mongo 업데이트 실패 요청 | MongoRequestCount with dimensions "CommandName" = "update" and "Status" = "failed" | 'Average' 집계 형식이 'Count'로 수정됨 |
Mongo 기타 실패 요청 | MongoRequestCount with dimensions "CommandName" = "other" and "Status" = "failed" | 'Average' 집계 형식이 'Count'로 수정됨 |
Mongo 삭제 실패 요청 | MongoRequestCount with dimensions "CommandName" = "delete" and "Status" = "failed" | 'Average' 집계 형식이 'Count'로 수정됨 |
동등한 작업 그룹을 만드는 방법
클래식 경고 규칙에는 경고 규칙 자체에 연결된 이메일, 웹후크, 논리 앱 및 Runbook 작업이 있었습니다. 새 경고 규칙은 여러 경고 규칙에서 다시 사용할 수 있는 작업 그룹을 사용합니다. 마이그레이션 도구는 작업을 사용하는 경고 규칙 수에 관계없이 동일한 작업에 대한 단일 작업 그룹을 만듭니다. 마이그레이션 도구에서 만든 작업 그룹은 'Migrated_AG*' 명명 형식을 사용합니다.
참고
클래식 경고는 클래식 관리자 역할을 알리는 데 사용되는 경우 클래식 관리자의 로캘에 따라 지역화된 이메일을 보냈습니다. 새 경고 이메일은 작업 그룹을 통해 전송되며 영어로만 전송됩니다.
출시 단계
마이그레이션 도구는 클래식 경고 규칙을 사용하는 고객에게 단계적으로 출시됩니다. 구독 소유자는 도구를 사용하여 구독을 마이그레이션할 준비가 되면 이메일을 받게 됩니다.
참고
도구가 단계적으로 출시되고 있으므로 일부 구독은 초기 단계에서 아직 마이그레이션할 준비가 되지 않은 것일 수 있습니다.
대부분의 구독은 현재 마이그레이션 준비가 된 것으로 표시됩니다. 다음 리소스 종류에 대한 클래식 경고가 있는 구독만 마이그레이션할 준비가 되지 않았습니다.
- Microsoft.classicCompute/domainNames/slots/roles
- Microsoft.insights/components
누가 마이그레이션을 트리거할 수 있나요?
구독 수준에서 모니터링 기여자의 기본 제공 역할이 있는 사용자는 마이그레이션을 트리거할 수 있습니다. 다음 사용 권한이 있는 사용자 지정 역할이 있는 사용자도 마이그레이션을 트리거할 수 있습니다.
- */read
- Microsoft.Insights/actiongroups/*
- Microsoft.Insights/AlertRules/*
- Microsoft.Insights/metricAlerts/*
- Microsoft.AlertsManagement/smartDetectorAlertRules/*
참고
위의 사용 권한을 갖는 것 외에도 구독을 Microsoft.AlertsManagement 리소스 공급자에 추가로 등록해야 합니다. Application Insights 실패 변칙 경고를 성공적으로 마이그레이션하려면 이 작업이 필요합니다.
일반적인 문제 및 해결 방법
마이그레이션을 트리거한 후에는 마이그레이션이 완료되었음을 알리기 위해 제공한 주소에서 이메일을 받거나 작업이 필요한 경우 이를 알립니다. 이 섹션에서는 몇 가지 일반적인 문제 및 문제를 처리하는 방법을 설명합니다.
유효성 검사 실패
구독에서 일부 클래식 경고 규칙이 최근에 변경되었으므로 구독을 마이그레이션할 수 없습니다. 이 문제는 일시적입니다. 마이그레이션 상태가 며칠 후에 마이그레이션 준비 상태로 다시 이동한 후 마이그레이션을 다시 시작할 수 있습니다.
범위 잠금으로 인해 규칙을 마이그레이션할 수 없음
마이그레이션의 일부로 새 메트릭 경고 및 새 작업 그룹이 만들어지고 클래식 경고 규칙이 삭제됩니다. 그러나 범위 잠금으로 인해 리소스를 만들거나 삭제할 수 없게 될 수 있습니다. 범위 잠금에 따라 일부 또는 모든 규칙을 마이그레이션할 수 없습니다. 마이그레이션 도구에 나열된 구독, 리소스 그룹 또는 리소스에 대한 범위 잠금을 제거하고 마이그레이션을 다시 트리거하여 이 문제를 해결할 수 있습니다. 범위 잠금은 사용하지 않도록 설정할 수 없으며 마이그레이션 프로세스 중에 제거해야 합니다. 범위 잠금 관리에 대해 자세히 알아봅니다.
'거부' 효과가 있는 정책으로 인해 규칙을 마이그레이션할 수 없습니다
마이그레이션의 일부로 새 메트릭 경고 및 새 작업 그룹이 만들어지고 클래식 경고 규칙이 삭제됩니다. 그러나 Azure Policy 할당을 사용하면 리소스를 만들지 못할 수 있습니다. 정책 할당에 따라 일부 또는 모든 규칙을 마이그레이션할 수 없습니다. 프로세스를 차단하는 정책 할당이 마이그레이션 도구에 나열됩니다. 다음 중 하나를 사용하여 이 문제를 해결합니다.
- 정책 할당에서 마이그레이션 프로세스 중에 구독, 리소스 그룹 또는 개별 리소스를 제외합니다. 정책 제외 범위 관리에 대해 자세히 알아봅니다.
- 정책 할당에서 '적용 모드'를 사용 안 함으로 설정합니다. 정책 할당의 enforcementMode 속성에 대해 자세히 알아봅니다.
- 구독, 리소스 그룹 또는 개별 리소스에 대한 Azure Policy 예외(미리 보기)를 정책 할당으로 설정합니다. Azure Policy 예외 구조에 대해 자세히 알아봅니다.
- 제거하거나 효과를 '사용 안 함', '감사', '추가' 또는 '수정'(예: 누락된 태그와 관련된 문제를 해결할 수 있음)으로 변경합니다. 정책 효과 관리에 대해 자세히 알아봅니다.