AWSメモ >

AWS CloudWatchLogsのログを検索

AWS CLIで検索

# 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で検索

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 で検索

ターミナルから直感的にCloudWatch Logsを検索出来る Pythonライブラリ
https://github.com/jorgebastida/awslogs

インストール

pip install awslogs

以下、tail -f 的に利用する場合の利用例

awslogs get ロググループ名 -w

他にもストリーム名やフィルタ、日付時刻などを指定する事も可能。


トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-12-13 (木) 21:50:56 (1954d)