我正在配置aws cloudwatch client for linux(rhel),以便将所有重要日志上载到cloudwatch。我一直在为audit.log配置客户端部分。我一直收到消息... Fall back to current time ... reason: timestamp could not be parsed ...
我认为日志文件的格式(系统默认值)不适合awslogs客户机进行解析。我最好的做法是什么?有没有办法为审计日志文件配置awslogs客户机,或者我应该更改审计日志文件的格式以更好地满足awslogs的期望?
最佳答案
audit.log
条目如下:
type=ADD_USER msg=audit(1539364777.590:6): pid=2710 uid=0 auid=4294967295 ses=4294967295 msg='op=adding user id=500 exe="/usr/sbin/useradd" hostname=? addr=? terminal=? res=success'
带句点和冒号的数字是
epoch
和audit id
。审核ID可能在文件中重复。不幸的是strftime没有标准的epoch格式(有
%s
,但它不在规范中,在python中不受支持)。而cwlogs.parser.datetimeparser对此没有解决方法。而且cwlogs.util.epoch()永远不会对原始格式起作用。格拉尔。因此,您需要使用awslogs默认值,即用当前时间(而不是日志时间)发送条目。