Splunk 中的简单串联 json 换行符
Simple concatenated json line breaker in Splunk
我知道这可能很简单,但出于某种原因,我能够在 Splunk 中使用线路断路器。我正在从 AWS S3 获取数据源,并且 JSON 格式的多个事件被串联起来。例如
{"key":"value", {"composite":"result"}}{"something":"else"}
所以 LINE_BREAKER 应该匹配 }{
并包含左括号。
我有 SHOULD_LINEMERGE=false
,然后是 LINE_BREAKER=(\{.+\})\{
,但我松了右括号。 }{
之间没有任何字符(甚至没有换行符),拆分它们的最佳方法是什么?
LINE_BREAKER
属性需要捕获组,但会丢弃与捕获组匹配的文本。解决方案是使用正则表达式更有创意。
LINE_BREAKER=\}()\{
允许空捕获组。
你的评论把事情弄糊涂了。事件是由 }{
还是 {"key"
分隔的? LINE_BREAKER
的值应设置为任何分隔事件的值。确定后,您就可以解决 TRUNCATE
设置。
我知道这可能很简单,但出于某种原因,我能够在 Splunk 中使用线路断路器。我正在从 AWS S3 获取数据源,并且 JSON 格式的多个事件被串联起来。例如
{"key":"value", {"composite":"result"}}{"something":"else"}
所以 LINE_BREAKER 应该匹配 }{
并包含左括号。
我有 SHOULD_LINEMERGE=false
,然后是 LINE_BREAKER=(\{.+\})\{
,但我松了右括号。 }{
之间没有任何字符(甚至没有换行符),拆分它们的最佳方法是什么?
LINE_BREAKER
属性需要捕获组,但会丢弃与捕获组匹配的文本。解决方案是使用正则表达式更有创意。
LINE_BREAKER=\}()\{
允许空捕获组。
你的评论把事情弄糊涂了。事件是由 }{
还是 {"key"
分隔的? LINE_BREAKER
的值应设置为任何分隔事件的值。确定后,您就可以解决 TRUNCATE
设置。