CSV 로그 파서

개요

다음을 사용하여 csv 로그 파서를 사용하면 각 행을 키-값 매핑이 있는 간단한 JSON 객체로 변환하여 CSV 파일을 파싱합니다. 이를 위해 각 열에 이름을 지정해야 합니다.

헤더가 없는 CSV 로그

헤더 행이 없는 CSV 로그를 파싱하려면 Panther는 각 열에 어떤 이름을 할당할지 알아야 합니다.

예를 들어 로그가 year, month, day, time, action, ip_address, message의 7개 열로 된 CSV라고 가정해 보겠습니다. 이 파일의 몇 가지 예시 행은 다음과 같을 수 있습니다:

# 20200901의 접근 로그
2020,09,01,10:35:23, SEND ,192.168.1.3,"PING"
2020,09,01,10:35:25, RECV ,192.168.1.3,"PONG"
2020,09,01,10:35:25, RESTART ,-,"System restarts"

다음 LogSchema 를 사용하여 로그 유형을 정의합니다:

Panther 콘솔에서는 다음을 따릅니다 사용자 지정 스키마를 수동으로 생성하는 방법 안내을 선택하고, CSV 파서를 선택합니다.

Under a "Parser" header is a form with various fields, including "Has Header," "Delimiter," "Columns," "Empty Values," and more.

다음 스키마 작성 섹션(위 스크린샷에 표시된 파서 섹션 아래), 우리는 필드를 정의합니다:

필드:
- 이름: timestamp
  type: timestamp
  timeFormats: 
   - rfc3339
  isEventTime: true
  required: true
- 이름: action
  type: string
  required: true
- 이름: ip_address
  type: string
  indicators: [ip]
- name: message
  type: string

헤더가 있는 CSV 로그

헤더 행으로 시작하는 CSV 파일을 파싱하려면 두 가지 옵션이 있습니다:

circle-exclamation

헤더의 이름을 사용하려면 파서 구성은 다음과 같아야 합니다:

헤더를 무시하고 열에 대한 이름 집합을 정의하려면 다음을 사용하세요:

Last updated

Was this helpful?