Windows EC2实例下,如何通过CloudWatch通配符路径创建对应日志流?
适用于Windows EC2实例的CloudWatch日志收集配置(批量日志文件场景)
基础单文件收集配置示例
以下是针对Windows系统AWS EC2实例的CloudWatch基础日志收集配置,用于指定单个日志文件:
"logs": { "logs_collected": { "files": { "collect_list": [ { "file_path": "c:\\testfolder\\test.log", "log_group_name": "oneSpecificInstance", "log_stream_name": "{instance_id}/test.log", "timezone": "Local" } ] } } }
批量日志文件收集配置(满足自动化测试场景需求)
针对测试自动化场景中动态生成的日志文件,要实现收集C:\testlog目录下所有*.log文件,且每个文件对应专属日志流的需求,可使用如下配置:
"logs": { "logs_collected": { "files": { "collect_list": [ { "file_path": "c:\\testlog\\*.log", "log_group_name": "oneSpecificInstance", "log_stream_name": "{instance_id}/{basename}", "timezone": "Local" } ] } } }
配置说明与预期效果
- 路径匹配:通过
*.log通配符匹配目标目录下所有符合后缀的日志文件 - 日志流命名:使用CloudWatch Agent内置变量
{basename}获取日志文件的文件名(不含路径),结合{instance_id}生成唯一的日志流名称,确保每个文件对应独立日志流 - 预期行为:
- 当C:\testlog目录为空时,不会有日志推送到CloudWatch
- 当目录下存在
test.log、test2.log等文件时,CloudWatch中会自动创建{instance_id}/test.log、{instance_id}/test2.log对应的日志流并推送日志
内容的提问来源于stack exchange,提问作者user3120554
相关产品推荐
相关产品推荐

