[[AWSメモ]] > #setlinebreak(on); * AWS CloudWatchLogsのログを検索 [#s4700258] ** AWS CLIで検索 [#d59e9e63] #myterm2(){{ # 1時間前から検索 aws logs filter-log-events --log-group-name ロググループ名 --start-time `expr \`date +%s\` - 3600` }} ※ https://docs.aws.amazon.com/cli/latest/reference/logs/filter-log-events.html ** boto3で検索 [#t47dbb4f] #mycode2(){{ import boto3 from datetime import datetime import time client = boto3.client('logs') response = client.filter_log_events( logGroupName=ロググループ名, #logStreamNamePrefix='string', startTime=int(time.time() - (60*60)), # 1時間前から #endTime=123, #filterPattern='string', #nextToken='string', #limit=123, #interleaved=True|False ) # 整形して出力 [print('{} {}'.format(datetime.fromtimestamp(x['timestamp']/1000).strftime('%Y-%m-%dT%H:%M:%S.%f')[0:-3], x['message'].rstrip("\n"))) for x in response['events']] }} ※ https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/logs.html#CloudWatchLogs.Client.filter_log_events ** awslogs で検索 [#ie924e67] ターミナルから直感的にCloudWatch Logsを検索出来る Pythonツール ターミナルから直感的にCloudWatch Logsを検索出来る Pythonライブラリ https://github.com/jorgebastida/awslogs インストール #myterm2(){{ pip install awslogs }} 以下、tail -f 的に利用する場合の利用例 #myterm2(){{ awslogs get ロググループ名 -w }} 他にもストリーム名やフィルタ、日付時刻などを指定する事も可能。