[Splunk] 기본 제공 소스타입과 INDEXED_EXTRACTIONS 활용법
본문 바로가기

Splunk

[Splunk] 기본 제공 소스타입과 INDEXED_EXTRACTIONS 활용법

728x90
반응형

1. 사전 학습된 소스타입 (Pretrained Sourcetypes)

Splunk에는 미리 정의된 소스타입들이 있음
props.conf에 사전 정의되어 있으며, Splunk가 어떻게 인덱싱하고 파싱해야 하는지 이미 알고 있는 포맷

  • 정의 위치:
    $SPLUNK_HOME/etc/system/default/props.conf
     
  • 사용 방법:
    • 데이터가 해당 포맷과 일치한다면, 그대로 소스타입을 지정해주는 것이 모범 사례
    • 자동 인식되지 않으면 Splunk Web이나 inputs.conf에서 직접 지정
  • 대표 소스타입 예시
    • access_combined → NCSA combined 형식 HTTP 로그
    • apache_error → Apache 웹 서버 에러 로그
    • cisco_syslog → Cisco 장비 syslog
    • websphere_core → WebSphere core 파일

👉 전체 목록은 [Splunk 공식 문서]에서 확인

 

 

2. INDEXED_EXTRACTIONS란?

INDEXED_EXTRACTIONS는 구조화된 파일 포맷을 Splunk가 이해할 수 있게 하는 설정
주로 CSV, IIS 로그, TSV, JSON처럼 헤더 기반 구조화 데이터에서 사용

 

  • 설정 위치: props.conf (Forwarder 쪽에서 적용해야 함)
  • 예시 구문:
[my_structured_data]
INDEXED_EXTRACTIONS = w3c | csv | tsv | psv | json

주의할 점

  • 반드시 Forwarder 단계에서 설정해야 함 → 인덱서에만 설정해도 효과 없음
  • 필드 추출/마스킹/라우팅 같은 작업이 필요하다면 Forwarder 쪽 props.conf에 포함시켜야 함

3. INDEXED_EXTRACTIONS 예시 (IIS 로그)

예를 들어, IIS 로그 파일은 헤더가 여러 줄 존재하며, 필드 정의가 따로 기록되어 있습니다.

 

샘플 로그

 
#Software: Microsoft Internet Information Services 7.5
#Version: 1.0
#Date: 2013-10-18 18:35:33
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip ...

 

inputs.conf

 
[monitor://C:\inetpub\logs\LogFiles\W3SVC1]
sourcetype = iis
 

props.conf

[iis]
INDEXED_EXTRACTIONS = w3c
 
 
 

📌 Splunk는 w3c 포맷임을 인식하여:

  • 앞 3줄은 주석(header) 처리
  • #Fields: 라인을 기준으로 필드 정의 적용
  • 각 이벤트를 자동으로 필드 매핑

 

728x90
반응형