1 Respuesta
- Más nuevo
- Más votos
- Más comentarios
0
【以下的回答经过翻译处理】 你好,感谢你的询问!
虽然我对Oracle日志的完整格式并不完全熟悉,但希望这些示例能对你有所帮助。同时,我不太清楚你是尝试使用Logs Insights解析这些日志,还是为了在日志组上设置Metric Filter进行警报设置,所以我将为两者提供示例。
为了进行测试,我使用了基于你提供的片段的虚构样本日志消息。以下示例假设日志以空格分隔:
2022-04-13 00:00:28 service_update DB_1 STATUS * 0
2022-04-13 00:00:29 service_update DB_1 STATUS * 1
2022-04-13 00:00:30 service_update DB_1 STATUS * 1
2022-04-13 00:00:31 service_update DB_1 STATUS * 1
2022-04-13 00:00:32 service_update DB_1 STATUS * 1
2022-04-13 00:00:33 service_update DB_1 STATUS * 0
2022-04-13 00:00:34 service_update DB_1 STATUS * 1
2022-04-13 00:00:35 service_update DB_1 STATUS * 1
2022-04-13 00:00:36 service_update DB_1 STATUS * 0
2022-04-13 00:00:37 service_update DB_1 STATUS * 1
2022-04-13 00:00:38 service_update DB_1 STATUS * 1
2022-04-13 00:00:39 service_update DB_1 STATUS * 0
2022-04-13 00:00:40 service_update DB_1 STATUS * 1
在Logs Insights中,通过解析字符串为七个独特字段,以下查询将返回仅包含状态不等于0的日志消息:
fields @timestamp
| parse @message "* * * * * * *" as date, time, action, db, type, asterisk, status
| filter status!=0
| sort time desc
同样地,如果你想在日志组上创建一个Metric Filter,以便生成一个非零状态的指标以创建警报,以下Metric Filter模式可以成功解析和筛选出status!=0:
[date, time, action, db, type, asterisk, status!=0]
另外,针对你的警报日志(再次假设是以空格分隔的情况),考虑到以下示例日志:
2022-04-13 00:00:28 service_update DB_1 STATUS ORA-1 0
2022-04-13 00:00:29 service_update DB_1 STATUS ORA-2 1
2022-04-13 00:00:30 service_update DB_1 STATUS ORA-3 1
2022-04-13 00:00:31 service_update DB_1 STATUS ORA-8 1
你可以生成一个Metric Filter模式,以监视并仅筛选包含 "ORA-*" 的日志,但不包括 "ORA-1":
[date, time, action, db, type, error!=ORA-1, status]
希望这对你有所帮助,如果我的假设是错误的,请让我知道!
Contenido relevante
- OFICIAL DE AWSActualizada hace 4 años
- OFICIAL DE AWSActualizada hace 2 años