개념 사전 · 프로그램

Logstash

로그스태시

는 여러 입력에서 이벤트를 받아 파싱·변환한 뒤 출력 대상으로 전달하는 데이터 처리 파이프라인이다. 의 저장 기능이나 의 화면 기능과 책임이 다르다.

밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.

로고: Elastic 공식 자료. 제품 식별을 위해 표시하며 각 상표의 권리는 권리자에게 있습니다.

01무엇이고, 어떤 일을 하나

  • 파일·네트워크·수집기 입력을 이벤트로 받는다.
  • ·JSON·date 필터로 필드와 발생 시각을 해석한다.
  • 큐·재시도·출력 결과를 이용해 전달 흐름을 관리한다.

02어떤 순서로 동작하나

  1. 입력과 해독

    plugin이 파일·네트워크 등의 자료를 받아 이벤트를 만든다. 은 JSON 같은 입출력 표현을 해독하거나 인코딩하는 역할을 한다.

  2. 필드와 시간 처리

    가 패턴 추출·타입 변환·Date 파싱·태그 추가를 수행한다. 날짜에 시간대가 있는지와 실패 태그를 함께 확인해야 발생 시각이 잘못 이동하지 않는다.

  3. 대기와 출력

    이벤트가 plugin을 통해 저장소로 전달된다. 를 쓰는 구성에서는 디스크 대기열과 재시도·용량 조건이 장애 시 동작에 영향을 준다.

  4. 최종 적재 대조

    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상세 노트 · 실습 자료

헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.

공식 문서 · 표준

기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.