要按日期对 CloudWatch Logs 进行查询和分析,可以使用 CloudWatch Insights。下面是一个包含代码示例的解决方法:
import boto3
# 创建 CloudWatch Logs 和 Insights 的客户端
client = boto3.client('logs')
describe_log_groups
方法获取您的日志组列表,以获取所需日志组的 ARN。response = client.describe_log_groups(
logGroupNamePrefix='/aws/lambda/'
)
log_group_arn = response['logGroups'][0]['arn']
start_query
方法启动 Insights 查询。query = 'fields @timestamp, @message | sort @timestamp desc | limit 10'
response = client.start_query(
logGroupNames=[log_group_arn],
queryString=query
)
query_id = response['queryId']
get_query_results
方法获取查询结果。response = client.get_query_results(
queryId=query_id
)
results = response['results']
for result in results:
timestamp = result[0]['value']
message = result[1]['value']
print(f'Timestamp: {timestamp}, Message: {message}')
这个解决方法使用 Python 的 AWS SDK 示例代码,但您可以根据您使用的编程语言和 SDK 进行相应的调整。
上一篇:按日期的词频
下一篇:按日期的MySQL查询逻辑