2017-10-30 8 views
1

Splunk에서 동시 발생 시간 초과 예외를 제외하고 모든 예외를 검색하려고합니다. 동시 타임 아웃 예외는 로그에 "java.util.concurrent.TimeoutException"또는 "concurrent timeout exception"으로 나타납니다. 내가 같은 쿼리를 수행 할 경우 :Splunk 로그에서 하나의 문자열 만 검사하지만 다른 문자열은 검사하지 않음

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

인 Splunk는 "java.util.concurrent.TimeoutException"를 포함하지 않는 (예상된다 "동시 시간 제한 예외"를 포함하는 것을 포함) 예외 모두 찾을 수 있습니다 . 그러나 "java.util.concurrent.TimeoutException"과 "concurrent timeout exception"을 모두 제거하는 방법을 알 수는 없습니다. 시도 할 때 앞에서 언급 한 두 문자열을 포함하는 예외를 제외하고 모든 예외를 제거하는 것처럼 보입니다. 이 모든 예외가 아니라이 원하지 않는 문자열을 찾을 것이라고 생각

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

: 같은

내가 해봤 물건. 둘 중 어느 하나가 true로 평가되면 진술이 참일 것입니다. 그래서 진술이 사실이라면 어디에서나 모든 예외를 발견하게 될 것입니다.

작동하지 않았습니다. 다른 다양한 조합을 사용해 보았습니다.

여기 올바른 방향으로 나를 가리키며 내가 뭘 잘못하고 있다고 언급 할 수 있습니까? 감사.

+1

NOT X OR NOT Y = NOT (X 및 Y)은 어떤 당신이 원하는 아니다 그래서 당신은 "예외"와 "java.util.concurrent.TimeoutException"이 아닌 "concurrent timeout exception"이 아니라고 생각합니다. –

+0

감사합니다. @JerryJeremiah – SuperCow

답변

1

@ 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") 
)