首页 > 解决方案 > splunk中的纪元时间场提取

问题描述

我们如何为以下日志编写正则表达式或字段提取?字段是开始和结束,其中值是纪元格式,我想以人类可读的格式更改它..

cs7=45.45 cs7Label=latitude cs8=28.05 cs8Label=longitude Customer=Romania-UPC start=1604484735041 request=scoala.bibliotecapemobil.ro/download.php ref=https://scoala.bibliotecapemobil.ro/893/borgia requestMethod=GET qstr=book_id\=893&user_id\=&download\=pdf cn1=200 app=HTTPS act=REQ_PASSED deviceExternalId=37982221230540227 sip=195.191.47.151 spt=443 in=45 xff=82.208.137.89 cpt=62542 src=82.208.137.89 ver=TLSv1.3 TLS_AES_128_GCM_SHA256 end=1604484735097

标签: splunksplunk-querysplunk-calculation

解决方案


可以使用该extract命令在搜索时提取字段。

... | extract pairdelim=" " kvdelim="=" | ...

使用 转换时间字段strptime()

... | eval start=strptime(start, "%s%3N")

索引时间字段提取应该是自动的,但请尝试使用这些 props.conf 设置进行提取和时间处理。

[mysourcetype]
TIME_PREFIX = start=
TIME_FORMAT = %s%3N
MAX_TIMESTAMP_LOOKAHEAD = 13
SHOULD_LINEMERGE = false
LINE_BREAKER = ([\r\n]+)
KV_MODE = auto

推荐阅读