fluent-plugin-prometheus 출시
3877 단어 prometheus
Gem : htps : / / 루 바이 게 ms. 오 rg / 게 ms / f ぅ 엔 tp
Prometheus은 최근에 만들어진 OSS 모니터링 시스템입니다. 발표 당시에는 조금 만지고 있는 사람이 있었습니다만 지금은 그다지 듣지 않게 되었습니다. 개발 자체는 순조롭게 진행되고 있는 것 같습니다. 일본어에서는 이 근처에서 소개되고 있습니다.
Prometheus는 Graphite와 마찬가지로 메트릭을 수집하여 그래프화나 경고 등을 할 수 있는 것입니다.
이번에 만든 fluent-plugin-prometheus은 Fluentd에서 메트릭을 수집하여 Prometheus와 연계합니다. 약간 다른 것은 Fluentd에서 Prometheus로 보내는 것이 아니라 Prometheus에서 Fluentd로 메트릭을 얻는 것입니다.
여담입니다만 왜 Prometheus를 사용하고 있는가 하면, Kubernetes가 시스템 내부의 메트릭스 수집에 Prometheus를 사용하고 있기 때문입니다. 아직 Prometheus 자체 미묘한 곳도 있지만, 지금부터 고조 될지도 모릅니다.
사용법
fluent-plugin-prometheus에는 4개의 플러그인이 내장되어 있으므로 각각 설명합니다.
prometheus input plugin
플러그인에서 수집한 지표를 Prometheus에 전달하기 위한 엔드포인트를 설정하는 플러그인입니다. 반드시 설정해 둘 필요가 있습니다.
<source>
type prometheus
</source>
이제 포트 23231에서 LISTEN되므로 Prometheus에서 메트릭을 얻을 수 있습니다.
prometheus_monitor input plugin
Fluentd 본체에 내장으로 들어 있다 monitor_agent 플러그인의 정보를 자동적으로 취득해 Prometheus에 건네주는 플러그인입니다.
현재 취득할 수 있는 것은 BufferedOutput 플러그인의 다음의 정보입니다.
prometheus output/filter plugin
주요 메트릭을 수집하는 플러그인입니다. Output과 Filter를 모두 지원합니다. 사용성은 거의 동일합니다. 이 섹션에서는 Filter에서 사용하는 방법을 설명합니다.
<filter message>
type prometheus
## レコード中のfooの値をcounterメトリクスとして収集
<metric>
name message_foo_counter ## Prometheusのmetric名
type counter ## Prometheusのmetric type
desc The total number of foo in message. ## Prometheusのmetricの説明文
key foo ## どのkeyの値を収集するか
<labels> ## 付与するラベル
key foo ## key=foo でラベルを追加
data_type ${type} ## レコード中のtypeの値をラベルの値として利用
</labels>
</metric>
## レコード中のbarの値をcounterメトリクスとして収集
<metric>
name message_bar_counter
type counter
desc The total number of bar in message.
key bar
<labels>
key foo
</labels>
</metric>
## 2つのメトリクスの共通のラベル
<labels>
host ${hostname}
tag ${tag}
</labels>
</filter>
<match message>
type stdout
</match>
위와 같이 메트릭을 수집하려는 레코드에 처리를 끼우도록 Filter를 추가하기만 하면 됩니다. Filter 플러그인이지만 원래 레코드의 값을 변경하지 않습니다.
이 상태에서
message
라는 태그 이름으로 foo나 bar를 포함하는 레코드를 보내면 message_foo_counter
와 message_bar_counter
라는 메트릭이 생성되어 Prometheus에서 수집됩니다.Prometheus에서 중요한 개념인 라벨도 자유롭게 설정할 수 있도록 하고 있습니다. 레코드 안에서 값을 설정할 수 있으므로, 예를 들어 HTTP의 응답 코드를 라벨의 값으로서 추가해 응답 코드 마다의 비율을 그래프화 등도 가능합니다.
튜토리얼
데이터를 준비하거나 Prometheus 설정이 번거롭다면 튜토리얼도 준비되어 있으므로 시도해보십시오.
Reference
이 문제에 관하여(fluent-plugin-prometheus 출시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kazegusuri/items/d526cbbf9807d0daec75텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)