正在检查Splunk日志中的一个字符串,而不是其他字符串



在Splunk中,我想搜索除并发超时异常之外的任何异常。并发超时异常在日志中显示为"java.util.Concurrent.TimeoutException"或"并发超时异常"。如果我执行以下查询:

("*exception*" AND (NOT "java.util.concurrent.TimeoutException"))

Splunk会找到所有不包含"java.util.concurrent.TimeoutException"的异常(包括那些包含"concurrent timeout exception"的异常,这是意料之中的)。但是,我不知道如何消除"java.util/concurrent.TimeoutException"one_answers"并发超时异常"。当我尝试时,它似乎消除了所有的异常,而不仅仅是那些包含前面提到的两个字符串的异常。

我试过这样的东西:

("*exception*" AND NOT ("java.util.concurrent.TimeoutException" OR "concurrent timeout exception"))

认为它会找到所有异常,但不会找到两个不需要的字符串。如果它们中的任何一个被评估为true,那么该语句将为true,所以我们会在哪里找到所有异常!这句话是真的。

没用。我尝试了其他各种组合,但都无济于事:

("exception" AND (NOT "java.util.concurrent.TimeoutException" OR NOT "concurrent timeout exception"))

有人能在这里给我指明正确的方向吗?或者提到我做错了什么?谢谢

@JerryJeremiah的建议应该有效。当你的查询被格式化时,它看起来像这样:

("*exception*" AND (NOT "java.util.concurrent.TimeoutException") AND (NOT "concurrent timeout exception"))

或者,为了可读性:

("*exception*" AND
(NOT "java.util.concurrent.TimeoutException") AND
(NOT "concurrent timeout exception")
)

最新更新