본문 바로가기
Back Side

Unknown filter plugin 'rewrite_tag_filter'. Run 'gem search -rd fluent-plugin' to find plugins 해결하기

by developerBeluga 2023. 8. 3.
728x90
반응형

 

 

 

 

현재 원하는대로 로그를 뽑던 중 동적으로 이름을 로그 파일 제목을 바꾸면 좋겠다고 생각해 개발하고 있었다.

태그를 이용하면 된다는 것을 알고 fluentd의 rewrite_tag_filter 플러그인을 사용하고자 했다.

 

https://docs.fluentd.org/output/rewrite_tag_filter

공식문서에 있어 fluentd 이미지에 내저되어져 있는 줄 알았는데 없었다.

k8s에서는 Docker와 달리 이미지를 가져오는 것이 로컬이 아닌 Docker Hub와 같은 레지스트리이기 때문에 테스트용으로 하나 올려뒀다.

 

FROM fluent/fluentd:v1.16.2-1.0
USER root
RUN gem install fluent-plugin-rewrite-tag-filter
USER fluent

아주 간단해서 공용으로 해두었는데 혹시 필요한 사람은 참고하길.

 

 

아무튼 k8s 매니페스트 파일도 수정해주고 AKS에 올렸는데 에러가 나왔다.

fluentd 로그를 확인해보니 Unknown filter plugin 'rewrite_tag_filter'. Run 'gem search -rd fluent-plugin' to find plugins 라는 문구가 보인다.

하지만 웃긴건 바로 위에 gem 'fluent-plugin-rewrite-tag-filter' version '2.4.0' 라고 설치 잘 되었다는 문구도 있다.

 

이상해서 찾아보니 난 바보였다.

repeatedly님이 말한 것처럼 rewrite-tag-filter 플러그인은 output plugin이다!

 

  <filter kubernetes.**>
    @type rewrite_tag_filter
    enable_ruby
    <rule>
      key message
      pattern /consoleLogModule/
      tag consoleLogModule.${record['message'].split(' ')[4].split('/')[0]}
    </rule>
  </filter>

하지만 나의 conf 파일을 보면 filter을 사용하고 있었다 😱

바로 match로 바꾸니 잘 해결되었다.

 

 

깃허브 링크는 아래에 있으니 한 번 봐보시길

https://github.com/fluent/fluent-plugin-rewrite-tag-filter/issues/52

 

Installation problem · Issue #52 · fluent/fluent-plugin-rewrite-tag-filter

Versions info: Fluentd version: 0.14.22 (installed as a gem) Ruby version: 2.4.2 OS: macOS 10.12.3 I can install the fluent-plugin-rewrite-tag-filter gem successfully: gem install fluent-plugin-rew...

github.com

 

 

 

 

 

728x90
반응형

댓글