【问题标题】:Exclude multiples values splunk排除多个值 splunk
【发布时间】:2022-09-22 21:12:14
【问题描述】:

我想进行一个 splunk 搜索,其中我排除了所有其 transid 与包含字符串 \"[error]\" 的事件的 transid 相关的事件。

这是我目前的搜索

*base-search*
| eval rm_id=if(like(_raw, \"%[error]%\") , 0, transid)

我必须从搜索中排除“rm_id”字段中的所有值

  • 你的数据是什么样的?

标签: splunk splunk-formula


【解决方案1】:

如果要排除包含“[error]”的事件,只需执行以下操作 - 它是很多更简单:

index=ndx sourcetype=srctp transid=* NOT "[error]"
| <rest of spl goes here>

【讨论】:

  • 这不正是我想要做的。我想排除与包含字符串 [error] 的事件具有相同 ID 的所有事件
【解决方案2】:

AIUI,如果有一个包含字符串“error”的事件,那么所有具有相同transid值的事件都将被丢弃,对吗?

如果是这样,那么您可以使用transaction 命令。该命令将具有公共字段值的事件分组为单个事件,然后可以对其进行过滤。 transaction 命令可能很慢且占用大量内存。

*base-search*
| transaction transid
| search NOT "error"

另一种方法使用子搜索来识别其中有“错误”的transid,因此主搜索可以避免这些transid。子搜索限制为 50,000 个结果。

*base-search* NOT [ search *base-search* "error" | fields transid | format ]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-20
    • 2020-05-22
    • 2017-04-22
    • 1970-01-01
    • 2021-05-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多