我正在尝试提取作为json日志文件转发给Splunk的日志事件的时间戳,而不是从json中正确获取日期,Splunk似乎是从日志文件的修改日期中获取时间戳。(这是唯一匹配的日期时间,不是很奇怪吗?)
json经过了正确的格式化和验证,并使用json.NET JsonConvert序列化为字符串,所以我的json在日期时间前后看起来是这样的:
"Request": {
"TimestampUtc": "2015-11-09T14:33:53.3239117Z",
"Headers": {
我在Splunk_TA_windows的inputs.conf文件中为我的UniversalForwarder设置了sourcetype=_json,监视我硬盘上的一个目录。日志文件名的格式为service.log.json,TimestampUtc属性在第10行,对象内部大约有140个字符。
在Splunk服务器上,默认的props.conf具有
[_json]
pulldown_type = true
INDEXED_EXTRACTIONS = json
KV_MODE = none
AUTO_KV_JSON = false
category = Structured
本地props.conf有
[_json]
INDEXED_EXTRACTIONS = json
pulldown_type = true
KV_MODE = none
AUTO_KV_JSON = false
#TIMESTAMP_FIELDS = TimestampUtc
TIME_PREFIX=/"TimestampUtc": "/
TIME_FORMAT = %Y-%m-%dT%H:%M:%S.%7N%Z
#TIME_FORMAT = %Y-%m-%dT%H:%M:%S.%3N
MAX_TIMESTAMP_LOOKAHEAD = 27
category = Structured
有人能给我指一下这个提取的正确配置吗?我尝试过多种组合,但都没有成功。
已修复!我需要在json对象的顶层移动datetime属性。保持相同的配置设置。