-
[ AWS ] Python boto3를 이용하여 ELB Metric 모니터링AWS Infra 2023. 5. 10. 14:14
Python Boto3를 이용하여 ELB 2XX Count 통계를 추출해보고, 효율적으로 모니터링해보자.
메소드는 cloudwatch.get_metric_statistics이용하고, MetricName은 HTTPCode_Target_2XX_Count 을 사용하면 된다.
ELB 콘솔 cloudwatch에서도 아래지표와 같이 볼 수 있는데, 이 데이터를 Python으로 추출해보자
from datetime import datetime from datetime import timedelta cloudwatch = boto3.client('cloudwatch') elb = 'string' # elb의 arn의 app이하 부분부터 넣어주면 된다. def elb_2XX_Count(elb): response = cloudwatch.get_metric_statistics( Namespace='AWS/ApplicationELB', MetricName='HTTPCode_Target_2XX_Count', Dimensions=[ { 'Name': 'LoadBalancer', 'Value': elb}, ], StartTime=datetime.today() - timedelta(days=1), EndTime=datetime.today(), Period=300, # Second Statistics=['Sum'], Unit='Count') return response['Datapoints'] dct = {} # 기본적으로 UTC로 추출되기 때문에, 서울시간으로 변경하고, 시간순으로 정렬한다. for value in elb_2XX_Count(elb): dct[value['Timestamp'] + timedelta(hours=9)] = value['Sum'] for t, v in sorted(dct.items()): print(str(t)[:16], '\t', v )
600초 주기로 하였기 때문에, 5분 SUM 통계로 추출되어 진다.
2023-05-09 23:11 884.0 2023-05-09 23:16 771.0 2023-05-09 23:21 695.0 2023-05-09 23:26 623.0 2023-05-09 23:31 575.0 2023-05-09 23:36 564.0 2023-05-09 23:41 544.0 2023-05-09 23:46 489.0 2023-05-09 23:51 522.0 2023-05-09 23:56 438.0 2023-05-10 00:01 650.0 ... ... ... 2023-05-10 13:11 381.0 2023-05-10 13:16 490.0 2023-05-10 13:21 524.0 2023-05-10 13:26 636.0 2023-05-10 13:31 798.0 2023-05-10 13:36 769.0 2023-05-10 13:41 643.0 2023-05-10 13:46 514.0 2023-05-10 13:51 596.0 2023-05-10 13:56 559.0 2023-05-10 14:01 840.0 2023-05-10 14:06 647.0
'AWS Infra' 카테고리의 다른 글
[ AWS ] Python boto3를 이용한 S3에 저장된 CSV 파일 읽기 / 쓰기 (0) 2023.05.23 [ AWS ] Python boto3를 이용한 EC2 Instance 정보 구하기 (0) 2023.05.22 [ AWS ] Python boto3를 이용하여 WAF IPset IP 수정하기 (0) 2023.05.16 [ AWS ] Python boto3를 이용하여 RDS Connections 데이터 추출 하기 (0) 2023.05.11 [ AWS ] Python boto3를 이용하여 Target Group Health 모니터링 (0) 2023.04.25 [ AWS ] Python boto3를 이용하여 S3 object 스토리지 클래스 변경 (0) 2023.03.21 [ AWS ] Python boto3를 이용하여 s3 log 압축파일(gz) DataFrame 만들기 - CloudFront Logs (0) 2023.03.16 [ Python ] Python을 이용한 ElastiCache Redis Hash Data Export & Import (0) 2023.02.28