Splunk HEC - 由于时间戳而禁用多行事件拆分

Splunk HEC - Disable multiline event splitting due to timestamp

我有一个多行事件,在不同的行上有时间戳,如下例所示

[2022-02-08 08:30:23:776] [INFO] [com.example.monitoring.ServiceMonitor] Status report for services
Service 1 - Available
Service 2 - Unavailable since 2022-02-08T07:00:00 UTC
Service 3 - Available

当日志发送到 HEC 时,这些行被分成多个事件,如 Splunk 数据管道的 parsing 阶段中突出显示的那样。由于第 3 行存在时间戳,它创建了 2 个不同的事件。

在 Splunk 中搜索时,我看到了如下所示的两个事件,而它们应该是单个事件的一部分。

事件 1

[2022-02-08 08:30:23:776] [INFO] [com.example.monitoring.ServiceMonitor] Status report for services
Service 1 - Available

事件 2

Service 2 - Unavailable since 2022-02-08T07:00:00 UTC
Service 3 - Available

我可以通过在 props.conf 中将 DATETIME_CONFIG 设置为 NONE 来解决问题,但这会产生另一个问题,Splunk 将停止识别事件中的时间戳。

是否可以在不禁用上述 属性 的情况下获得相同的结果?

诀窍是正确设置TIME_PREFIX

https://ibb.co/PCG5TqY

这只会在以“[”开头的行中查找时间戳。

这是 props.conf 的条目:

[changeme]
disabled = false
pulldown_type = true
category = Custom
DATETIME_CONFIG = 
NO_BINARY_CHECK = true
TIME_PREFIX = ^\[
TIME_FORMAT = %Y-%m-%d %H:%M:%S:%3N
SHOULD_LINEMERGE = true