카테고리 없음

Splunk 기초

flowertaekk 2021. 10. 17. 10:45

Index

Index란, 데이터를 종류별로 구분해서 관리할 수 있도록하는 하나의 태그 기능이라고 보면 됨.

Splunk의 모든 데이터는 Index가 설정되고, 유저가 아무 설정도 하지 않았을 때에는 default 설정(main index)에 저장.

 

내부 구조는 아래와 같이 bucket(ex: Hot bucket) 단위로 데이터를 구분해서 관리한다.

※ Tip: Splunk 용어로 하나의 데이터(로그)를 Event라고 부른다.

기본 bucket 관리

 

Search

  • Host
    호스트!
  • Source
    소스의 파일 또는 스프림명칭! 어디로부터 오는 이벤트인지 특정할 수 있는 개념.
    doc -> The source is the name of the file, stream, or other input from which a particular event originates.
  • Source type
    어디에서 발생한 로그인지를 나타낸다. 예를 들어, tomcat에서부터 발생한 로그라면, splunk가 source type을 인식하고, tomcat에 맞는 필드를 자동으로 생성한다.
    이미 등록되어 있는 Source type들이 있어서 편하게 사용할 수 있다.
    doc -> The sourcetype determines how Splunk software processes the incoming data stream into individual events according to the nature of the data.

Transforming commands

: 쿼리한 데이터를 테이블 또는 그래프화 하는 커맨드를 Transforming commands라고 부름.

Boolean operation

  • NOT
    hello NOT world # hello world (x)  # hello (o)
  • OR
    hello OR world # hello world​
  • AND
    hello AND world # hello world​

※ Boolean operation 에는 평가하는 순서가 정해져 있어서 위에 설정한 순서대로 쿼리의 평가가 이루어진다!

ex) a OR b NOT c AND d // b NOT c -> OR a -> AND d

 

But, `( )` 를 사용해서 우선순위를 바꿀 수 있다. `( )` 안 에 있는 쿼리부터 평가가 이루어짐!


Splunk Search Language

기본 구조

Search Command | command/function | command/function | ...

Commands

 field command
이벤트에서 특정 필드만 추출한다.

index=main | field log # log 만 출력
index=main | field - log # log 제거

table command
field name으로 구분된 테이블을 만들어준다.

index=main | table _time, log # time과 log로 이루어진 테이블 생성

rename command
 field name을 다시 명명한다. 너무 당연한 얘기인가..

index=main | rename log as result # log 필드를 result로 변경

dedup command
중복된 이벤트를 제거한다.

index=main | dedup name | table name log # 중복된 name 필드 제거

top command

가장 많은 이벤트순으로 정렬

index=main | top name # 가장 많이 등장한 이름과 등장 횟수가 출력

rare command

Top command와 반대! 가장 적은 이벤트 순으로 보여준다.


stats command

각 이벤트 별 이벤트 수의 통계치를 추출한다.

자주 쓰이는 stats functions are..:

  1. count
  2. dc (distinct count)
  3. sum
  4. avg (average)
  5. min
  6. max
  7. list
  8. values

 

참고: