[Splunk] SPL 검색(1) – 방식과 모드

Splunk SPL(Search Processing Language)

검색 방식 – Streaming / Transforming

  • Streamingindex 에 부하를 줌, search eval streamstats 등
  • TransformingSearch Header 에 부하를 줌, chartsort, stats 등
    • SPL 문을 Streaming(1)-Transforming-Streaming(2) 로 작성하는 경우: index 진행 후 S/H 에서 진행되는 검색은 다시 index 로 되돌아가지 않고 S/H에서 진행됨. (부하 많음)
    • 그러므로, Streaming을 검색어 초기에 모두 배치하는 것이 좋음.

검색 팁 – fields 커맨드

  • 불필요한 필드 제거: fields 명령어 활용
    • | fields <원하는 필드명> : 원하는 필드명만 남기기
    • | fields -<삭제할 필드명> : 필요없는 필드명 삭제하기

검색 시 주의사항

  • ORAND는 대문자로 작성 (소문자로 작성 시 키워드로 인식)
  • 스페이스는 AND로 판단함.
  • Wildcard * (와일드카드)는 비효율적이니 사용 자제.

검색 모드

  • 고속 모드stats 쓰면 결과만 알려줌. 검색에 사용된 이벤트는 보여주지 않음.
  • 스마트 모드: 고속 모드와 같으나, stats 명령을 쓰지 않으면 이벤트를 보여줌.

IP 검색 시 유의 사항

  • 125.17.14.100만 입력 시:
    • Base lispy: [ AND 100 125 14 17 ] – 4번 서치를 함
  • TERM(125.17.14.100) 입력 시:
    • Base lispy: [ AND 125.17.14.100 ] – 한 번만 서치
  • Why?
    • Minor Breaker(. 등)로 먼저 찾고, 그 이후 Major Breaker(Tab, “”따옴표 등)로 찾기 때문.
    • TERM("Willy Wonka")는 검색 결과가 없음. (공백은 Major Breaker라서 불가)

예시

  • 27.96.128.0 vs. TERM(27.96.128.0):
    • AND 100 125 14 17 vs. AND 125.17.14.100
  • status=200 vs. TERM(status=200):
    • AND [ OR 200 status::200 ] vs. AND status=200 (결과 없음)
  • MCB-6 vs. TERM(MCB-6) vs. TERM(product_id=MCB-6):
    • AND 6 mcb vs. AND mcb-6 (결과 없음) vs. AND product_id=mcb-6
    • -가 메이저 브레이커라서 불가

 

Splunk 전체 글 보기

https://alreadylog.com/category/it/spl/

Leave a Comment