我对此很陌生,所以我会尽力解释它 =)。
我正在使用 iptables 日志系统,特别是“据称”字段,该字段会返回类似浮点时间戳格式的 iptables。
Oct 2 21:16:40 debian kernel: [11354.641909] Nuevo intento de conexion SSHIN=lo OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:00:00 SRC=192.168.1.1 DST=192.168.1.1 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=19375 DF PROTO=TCP SPT=47913 DPT=22 WINDOW=43690 RES=0x00 SYN URGP=0
这将是代码行方括号中的第一个字段 [11354.641909]。
当我尝试将此值从 python 转换为日期类型时:
print time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(11354.641909))
我得到以下日期:
1970-01-01 04:09:14
日期应该与 iptables 行的第一个字段类似。
我不知道我做错了什么,但我疯狂地到处寻找,却找不到答案。
iptables的版本是v 1.4.21,我的系统是Debian Jessie。
非常感谢您的帮助!
问候,
MG
最佳答案
该值不是纪元时间戳,而是自服务器启动以来的秒数。有关如何使其可读的更多信息:Convert dmesg timestamp to custom date format .
关于python - iptables 日志时间戳值是从 1970 年开始,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32914701/