CloudWatch 검색 표현식 예 - Amazon CloudWatch

CloudWatch 검색 표현식 예

다음 예제는 더 많은 검색 표현식 사용과 구문을 보여줍니다. 리전의 모든 인스턴스에 대한 CPUUtilization을 검색한 후 변형을 살펴보겠습니다.

이 예제는 리전의 각 인스턴스에 대한 줄 하나를 표시합니다. 이 줄은 AWS/EC2 네임스페이스의 CPUUtilization 지표를 보여줍니다.

SEARCH(' {AWS/EC2,InstanceId} MetricName="CPUUtilization" ', 'Average')

InstanceIdInstanceType으로 변경하면 리전에서 사용되는 각 인스턴스 유형마다 한 줄씩 표시되도록 그래프가 변경됩니다. 각 유형의 모든 인스턴스에 있는 데이터는 해당 인스턴스 유형에 대해 한 줄로 집계됩니다.

SEARCH(' {AWS/EC2,InstanceType} MetricName="CPUUtilization" ', 'Average')

다음 예제는 인스턴스 유형별로 CPUUtilization을 집계하고 micro 문자열이 포함된 각 인스턴스 유형에 대해 한 줄을 표시합니다.

SEARCH('{AWS/EC2,InstanceType} InstanceType=micro MetricName="CPUUtilization" ', 'Average')

이 예제는 이전 예제의 범위를 좁히며, InstanceType을 t2.micro 인스턴스에 대한 정확한 검색으로 변경합니다.

SEARCH('{AWS/EC2,InstanceType} InstanceType="t2.micro" MetricName="CPUUtilization" ', 'Average')

다음 검색은 쿼리의 {metric schema} 부분을 제거하므로 모든 네임스페이스의 CPUUtilization 지표가 그래프에 표시됩니다. 여러 측정기준으로 집계된 각 CPUUtilization 서비스의 AWS 지표에 대해 여러 줄이 그래프에 포함되어 있으므로 상당히 많은 결과가 반환될 수 있습니다.

SEARCH('MetricName="CPUUtilization" ', 'Average')

이러한 결과를 약간 좁히려면 두 개의 특정 지표 네임스페이스를 지정하면 됩니다.

SEARCH('MetricName="CPUUtilization" AND ("AWS/ECS" OR "AWS/ES") ', 'Average')

각 쿼리에서 지표 스키마를 하나만 지정할 수 있으므로, 위의 예제는 검색 쿼리 하나로 여러 개의 특정 네임스페이스를 검색하는 유일한 방법입니다. 그러나 더 많은 구조를 추가하기 위해 다음 예제와 같이 그래프에서 쿼리 두 개를 사용할 수 있습니다. 또한 이 예에서는 Amazon ECS에 대한 데이터를 집계하는 데 사용할 측정기준을 지정하여 더 많은 구조를 추가합니다.

SEARCH('{AWS/ECS ClusterName}, MetricName="CPUUtilization" ', 'Average') SEARCH(' {AWS/EBS} MetricName="CPUUtilization" ', 'Average')

다음 예에서는 ConsumedLCUs라는 Elastic Load Balancing 지표를 반환하는 것은 물론 flow 토큰이 포함된 모든 Elastic Load Balancing 지표 또는 측정기준을 반환합니다.

SEARCH('{AWS/NetworkELB, LoadBalancer} "ConsumedLCUs" OR flow ', 'Maximum')

다음 예제는 중첩 그룹화를 사용합니다. 모든 함수의 Errors 및 이름에 ProjectA 또는 ProjectB 문자열이 포함된 함수의 Invocations에 대한 Lambda 지표를 반환합니다.

SEARCH('{AWS/Lambda,FunctionName} MetricName="Errors" OR (MetricName="Invocations" AND (ProjectA OR ProjectB)) ', 'Average')

다음 예제는 AWS 서비스에서 생성된 지표를 제외한 모든 사용자 지정 지표를 표시합니다.

SEARCH('NOT Namespace=AWS ', 'Average')

다음 예제는 이름의 일부로 Errors 문자열을 포함하는 지표 이름, 네임스페이스, 측정기준 이름 및 측정기준 값이 있는 지표를 표시합니다.

SEARCH('Errors', 'Average')

다음 예제는 정확한 일치로 검색 범위를 좁힙니다. 예를 들어, 이 검색은 Errors 지표 이름을 찾지만 이름이 ConnectionErrors 또는 errors인 지표를 찾지 않습니다.

SEARCH(' "Errors" ', 'Average')

다음 예제는 검색어의 지표 스키마 부분에 공백이나 특수 문자가 포함된 이름을 지정하는 방법을 보여줍니다.

SEARCH('{"Custom-Namespace", "Dimension Name With Spaces"}, ErrorCount ', 'Maximum')

CloudWatch 크로스 계정 관측성 검색 표현식 예제

CloudWatch 크로스 계정 관측성 예제

CloudWatch 크로스 계정 관측성에서 모니터링 계정으로 설정된 계정에 로그인한 경우 SEARCH 함수를 사용하여 지정된 소스 계정에서 지표를 반환할 수 있습니다. 자세한 내용은 CloudWatch 크로스 계정 관측성 섹션을 참조하세요.

다음 예제에서는 계정 ID가 111122223333인 계정에서 모든 Lambda 지표를 검색합니다.

SEARCH(' AWS/Lambda :aws.AccountId = 111122223333 ', 'Average')

다음 예제에서는 111122223333 및 777788889999의 두 계정에서 모든 AWS/EC2 지표를 검색합니다.

SEARCH(' AWS/EC2 :aws.AccountId = (111122223333 OR 777788889999) ', 'Average')

다음 예에서는 소스 계정 111122223333과 모니터링 계정 자체에서 모든 AWS/EC2 지표를 검색합니다.

SEARCH(' AWS/EC2 :aws.AccountId = (111122223333 OR 'LOCAL') ', 'Average')

다음 예에서는 InstanceId 측정기준이 있는 계정 444455556666에서 MetaDataToken 지표 중 SUM을 검색합니다.

SEARCH('{AWS/EC2,InstanceId} :aws.AccountId=444455556666 MetricName=\"MetadataNoToken\"','Sum')