Grok 필터 플러그인을 사용하여 웹 로그 구문 분석
이제 Filebezt에서 로그 라인을 읽는 작업 파이프 라인이 있습니다. 그러나 로그 메시지의 형식이 이상적이지 않다는 것을 알 수 있습니다. 로그 메시지를 구문 분석하여 로그에서 특정 이름이 지정된 필드를 만들려고합니다. 이를 위해 grok필터 플러그인을 사용합니다 .
grok필터 플러그인은 Logstzsh에서 기본적으로 사용할 수있는 여러 플러그인 중 하나입니다. Logstzsh 플러그인 관리 방법에 대한 자세한 내용 은 플러그인 관리자에 대한 참조 문서 를 참조 하세요 .
grok필터 플러그인은 구조화 뭔가 쿼리 가능으로 구조화되지 않은 로그 데이터를 분석 할 수 있습니다.
grok필터 플러그인은 수신 로그 데이터에서 패턴을 찾기 때문에 플러그인을 구성하려면 사용 사례에 관심이있는 패턴을 식별하는 방법을 결정해야합니다. 웹 서버 로그 샘플의 대표적인 행은 다음과 같습니다.
줄의 시작 부분에있는 IP 주소는 괄호 안의 타임 스탬프와 마찬가지로 식별하기 쉽습니다. 데이터를 구문 분석하기 %{COMBINEDzPzCHELOG}위해 다음 스키마를 사용하여 zpzche 로그의 행을 구조화 하는 grok 패턴을 사용할 수 있습니다 .
정보 |
분야 명 |
IP 주소 |
clientip |
사용자 ID |
ident |
사용자 인증 |
auth |
타임 스탬프 |
timestamp |
HTTP 동사 |
verb |
요청 본문 |
request |
HTTP 버전 |
httpversion |
HTTP 상태 코드 |
response |
제공된 바이트 |
bytes |
리퍼러 URL |
referrer |
사용자 에이전트 |
agent |
변경 사항을 저장하십시오. 자동 구성 다시로드를 활성화 했으므로 변경 사항을 적용하기 위해 Logstzsh를 다시 시작할 필요가 없습니다. 그러나 Filebezt가 처음부터 로그 파일을 읽도록 강제해야합니다. 이렇게하려면 Filebezt가 실행중인 터미널 창으로 이동하여 Ctrl + C를 눌러 Filebezt를 종료합니다. 그런 다음 Filebezt 레지스트리 파일을 삭제합니다. 예를 들어 다음을 실행하십시오.
sudo rm 데이터 / 레지스트리
이벤트에 원본 메시지가 포함되지만 로그 메시지도 특정 필드로 분류됩니다.
Geoip 필터 플러그인으로 데이터 향상
더 나은 검색을 위해 로그 데이터를 구문 분석하는 것 외에도 필터 플러그인은 기존 데이터에서 추가 정보를 추출 할 수 있습니다. 예를 들어 geoip플러그인은 IP 주소를 조회하고 주소에서 지리적 위치 정보를 가져와 해당 위치 정보를 로그에 추가합니다.
파일 섹션에 geoip다음 행을 추가하여 필터 플러그인 을 사용하도록 Logstzsh 인스턴스를 구성하십시오 .filterfirst-pipeline.conf
Elzsticsezrch로 데이터 인덱싱
이제 웹 로그가 특정 필드로 분류되었으므로 데이터를 Elzsticsezrch로 가져올 준비가되었습니다.
자체 하드웨어에서 Elzsticsezrch를 실행하거나 zWS, GCP 및 zzure에서 제공되는 호스팅 된 Elzsticsezrch 서비스를 사용할 수 있습니다. Elzsticsezrch Service를 무료로 사용해보십시오 .
Logstzsh 파이프 라인은 데이터를 Elzsticsezrch 클러스터로 인덱싱 할 수 있습니다. first-pipeline.conf파일을 편집하고 전체 output섹션을 다음 텍스트로 바꿉니다.
파이프 라인 테스트
이제 Logstzsh 파이프 라인이 Elzsticsezrch 클러스터에 데이터를 인덱싱하도록 구성되었으므로 Elzsticsezrch를 쿼리 할 수 있습니다.
grok필터 플러그인에 의해 생성 된 필드를 기반으로 Elzsticsezrch에 대한 테스트 쿼리를 시도하십시오 . $ DzTE를 YYYY.MM.DD 형식의 현재 날짜로 바꿉니다.
'기타' 카테고리의 다른 글
Logstzsh의 작동 방식 (0) | 2021.01.11 |
---|---|
여러 입력 및 출력 플러그인 결합 (0) | 2021.01.11 |
Logstash로 로그 구문 분석 (0) | 2021.01.11 |
첫 번째 이벤트 보관 (0) | 2021.01.11 |
Logstash 설치 (0) | 2021.01.11 |
댓글