json - 如何向来自 CloudWatch 代理的日志添加自定义项
问题描述
所以我无权访问实际的日志生成(如果我这样做了,我只能将自定义添加到创建日志的代码部分)。相反,有没有办法从给定的日志文件中获取日志,向日志文件添加一些自定义,然后将其发送到 CloudWatch?(AKA 在将日志文件发送到 cloudwatch 日志之前添加丰富内容)
我的代理配置文件如下所示:
{
"logs": {
"logs_collected": {
"files": {
"collect_list": [
{
"file_path": "C:\\Path\\To\\LogFile",
"log_group_name": "InstanceLogs",
"log_stream_name": "{instance_id}"
}
]
},
"windows_events": {
"collect_list": [
{
"event_format": "xml",
"event_levels": [
"VERBOSE",
"INFORMATION",
"WARNING",
"ERROR",
"CRITICAL"
],
"event_name": "System",
"log_group_name": "EventLogs",
"log_stream_name": "{instance_id}"
},
{
"event_format": "xml",
"event_levels": [
"VERBOSE",
"INFORMATION",
"WARNING",
"ERROR",
"CRITICAL"
],
"event_name": "System",
"log_group_name": "System",
"log_stream_name": "{instance_id}"
},
{
"event_format": "xml",
"event_levels": [
"VERBOSE",
"INFORMATION",
"WARNING",
"ERROR",
"CRITICAL"
],
"event_name": "System",
"log_group_name": "System",
"log_stream_name": "{instance_id}"
}
]
}
}
},
"metrics": {
"append_dimensions": {
"AutoScalingGroupName": "${aws:AutoScalingGroupName}",
"ImageId": "${aws:ImageId}",
"InstanceId": "${aws:InstanceId}",
"InstanceType": "${aws:InstanceType}"
},
"metrics_collected": {
"LogicalDisk": {
"measurement": [
"% Free Space"
],
"metrics_collection_interval": 60,
"resources": [
"*"
]
},
"Memory": {
"measurement": [
"% Committed Bytes In Use"
],
"metrics_collection_interval": 60
},
"statsd": {
"metrics_aggregation_interval": 60,
"metrics_collection_interval": 10,
"service_address": ":####"
}
}
}
}
解决方案
推荐阅读
- c++ - 在 C++ 中的链表中间插入节点时出现段错误
- python - Matplotlib:TexLive 安装不起作用
- excel - 结果数组是Excel中两个数组的减法
- javascript - 即使使用 css 工具 grid-column-gap 计算器列间隙也不会改变
- julia - 如何在 Julia 图中制作科学的 y 刻度?
- google-bigquery - 我可以使用大查询导出数据语句并安排查询吗?
- c++ - 如何正确使用 LocalAlloc 和 LocalReAlloc
- reactjs - 基于角色的同一 React 路由中的不同组件
- javascript - 如何将数据从express传递到ejs
- c++ - Qt 5.14.2 在构建时不归档 .so 文件