Fluent Bit 문서/개념/라우터

Jmnote (토론 | 기여)님의 2024년 3월 8일 (금) 18:08 판 (새 문서: ==개요== ;Router ;라우터 유연한 라우팅 규칙 만들기 라우팅은 필터를 통해 데이터를 '''라우팅'''하고 최종적으로 하나 이상의 대상으로...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

1 개요

Router
라우터

유연한 라우팅 규칙 만들기

라우팅은 필터를 통해 데이터를 라우팅하고 최종적으로 하나 이상의 대상으로 라우팅할 수 있는 핵심 기능입니다. 태그매칭 규칙의 개념에 따릅니다.

Logging pipeline input.png

라우팅에는 두 가지 중요한 개념이 있습니다.

  • 태그(Tag)
  • 매치(Match)

입력 플러그인에 의해 데이터가 생성되면, 태그(대부분의 경우 태그가 수동으로 설정됨)와 함께 제공되며, 태그는 데이터 소스를 식별하는 데 도움이 되는 사람이 읽을 수 있는 지시자입니다.

데이터가 라우팅되어야 하는 위치를 정의하려면, 출력 설정에 매치 규칙을 지정해야 합니다.

CPU 메트릭을 Elasticsearch 데이터베이스에 전달하고 메모리 메트릭을 표준 출력 인터페이스에 전달하는 것을 목표로 하는 다음의 설정 예시를 살펴봅시다.

[INPUT]
    Name cpu
    Tag  my_cpu

[INPUT]
    Name mem
    Tag  my_mem

[OUTPUT]
    Name   es
    Match  my_cpu

[OUTPUT]
    Name   stdout
    Match  my_mem
참고: 위의 내용은 라우팅 구성 방법을 보여주는 간단한 예시입니다.

라우팅은 입력 태그 및 출력 매치 규칙을 읽고 자동으로 작동됩니다. 데이터에 라우팅 시간과 맞지 않는다는 태그가 있는 경우, 해당 데이터는 삭제됩니다.

2 와일드카드 라우팅

라우팅은 Match 패턴에서 와일드카드를 지원할만큼 유연합니다. 아래 예시에서는 두 데이터 소스 모두에 대한 공통 대상을 정의합니다.

[INPUT]
    Name cpu
    Tag  my_cpu

[INPUT]
    Name mem
    Tag  my_mem

[OUTPUT]
    Name   stdout
    Match  my_*

매치 규칙은 my_*로 설정됩니다. 이는 my_로 시작하는 모든 태그와 매치한다는 의미입니다.

3 정규식 라우팅

라우팅은 또한 Match_Regex 패턴을 사용하여 정규식을 지원하므로, 보다 복잡하고 정확한 매치 기준이 가능합니다. 다음 예시에서는 정규표현식을 기반으로 소스에서 데이터를 라우팅하는 방법을 보여줍니다.

[INPUT]
    Name temperature_sensor
    Tag  temp_sensor_A

[INPUT]
    Name humidity_sensor
    Tag  humid_sensor_B

[OUTPUT]
    Name         stdout
    Match_regex  .*_sensor_[AB]

이 설정에서는 Match_regex규칙이 .*_sensor_[AB]로 설정됩니다. 이 정규표현식은 앞에 오는 내용에 관계없이, "_sensor_A" 또는 "_sensor_B"로 끝나는 모든 태그와 매치합니다. 이 접근 방식은 단일 라우팅 규칙으로 다양한 소스 태그를 처리하는 보다 유연하고 강력한 방법을 제공합니다.

4 참고

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}