개념 사전 · 프로그램
Logstash
로그스태시
는 여러 입력에서 이벤트를 받아 파싱·변환한 뒤 출력 대상으로 전달하는 데이터 처리 파이프라인이다. 의 저장 기능이나 의 화면 기능과 책임이 다르다.
밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.
로고: Elastic 공식 자료. 제품 식별을 위해 표시하며 각 상표의 권리는 권리자에게 있습니다.
01무엇이고, 어떤 일을 하나
- 파일·네트워크·수집기 입력을 이벤트로 받는다.
- ·JSON·date 필터로 필드와 발생 시각을 해석한다.
- 큐·재시도·출력 결과를 이용해 전달 흐름을 관리한다.
02어떤 순서로 동작하나
- 입력과 해독
plugin이 파일·네트워크 등의 자료를 받아 이벤트를 만든다. 은 JSON 같은 입출력 표현을 해독하거나 인코딩하는 역할을 한다.
- 필드와 시간 처리
가 패턴 추출·타입 변환·Date 파싱·태그 추가를 수행한다. 날짜에 시간대가 있는지와 실패 태그를 함께 확인해야 발생 시각이 잘못 이동하지 않는다.
- 대기와 출력
이벤트가 plugin을 통해 저장소로 전달된다. 를 쓰는 구성에서는 디스크 대기열과 재시도·용량 조건이 장애 시 동작에 영향을 준다.
- 최종 적재 대조
stdout에 보이는 처리 결과와 등에 실제 저장된 자료를 비교한다. 파싱 실패·출력 거부·재전송 중복을 따로 세어 유효 이벤트량을 확인한다.
03먼저 알아둘 용어와 구성요소
- 이벤트를 받아들이는 플러그인 단계.
- 파싱·변환·태그·필드 처리를 수행하는 단계.
- 처리한 이벤트를 저장소 등으로 전달하는 단계.
- 디스크 기반으로 대기 이벤트를 보관하는 기능.
- 정규표현식 기반 이름 있는 패턴으로 로그 필드를 추출하는 필터.
- 이벤트의 입출력 표현을 해독·인코딩하는 구성 요소.
- 파싱한 발생 시각 등을 담는 표준 이벤트 시간 필드.
- 후단 처리 지연이 앞단 입력 처리 속도에 영향을 주는 현상.
04예제로 따라가기
- 입력 조건: 초당 1,000건·이벤트당 1,000바이트가 들어오고 출력이 1시간 멈춘다고 가정한다. 이 크기는 설명용 원시 이벤트 크기다.
- 원시 누적량: 1,000×1,000×3,600=3,600,000,000바이트, 약 3.6GB가 쌓인다. 실제 큐 직렬화·페이지·안전 여유는 포함하지 않았다.
- 복구 처리율: 출력이 초당 1,500건을 처리하고 입력이 계속 1,000건이면 순감소 속도는 초당 500건이다.
- 해소 시간: 누적 3,600,000건을 초당 500건씩 줄이면 7,200초, 즉 2시간이 필요하다. 출력 복구와 적체 해소는 같은 시점이 아니다.
- 한도 도달: 큐 한도에 도달하면 입력의 ·드롭·송신 재시도 동작을 확인한다. 큐 용량을 늘리는 것만으로 처리율 부족은 해결되지 않는다.
05혼동하기 쉬운 점과 확인 기준
- 가 켜져 있어도 모든 입력 프로토콜의 송신 측 재전송까지 자동 보장되는 것은 아니다.
- 파싱 실패를 모두 버리면 대시보드는 조용해져도 실제 수집 범위가 사라질 수 있으므로 원본·실패 태그·오류 경로를 보존한다.
06상세 노트 · 실습 자료
헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.
공식 문서 · 표준
기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.