问题描述
我在将JSON解析为仅时遇到困难,无法显示消息的ingestId。我上传到CloudWatch的JSON文件如下:
{
"message": "changeStatus ingestId=2343d8sf-etc,status=UPLOADING","level": "info"
}
我的CloudWatch Log Insight代码如下:
filter level = "error"
| filter @message like /([-\w]{25,})/
| filter strcontains(@logStream,'ingest-')
| fields @timestamp,@message,@logStream,level
| sort @logStream,@timestamp asc
Insight会产生一个新列,其中没有我想要的ID信息。我在做错什么,所以我至少可以知道摄取的ID?
非常感谢您的帮助。
编辑(v2): 我可以使用以下正则表达式代码找到获取Ingest ID所需的正则表达式:
/([-\w]{25,})/
这是代码。它使用新的ingestId列成功运行,但仍然没有我正在寻找的摄取ID:
filter level = "error"
| filter strcontains(@logStream,'ingest-')
| filter @message like /(ingestId)/
| parse @message "\"ingestId\": \"/([-\w]{25,})/\"" as ingestId
| fields @timestamp,@timestamp asc
该怎么办,以便我可以显示收到的每条消息的提取ID?谢谢大家。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)