본문 바로가기

삽질/도커

Logstash jdbc_driver_library not loaded 오류 해결

728x90

문제

logstash의 jdbc 모듈을 사용하기 위해서는 mysql-connector-java-5.1.48-bin.jar 파일을 포함시켜야 한다.

 

docker-compose에서 환경 변수로 넘겨줬기 때문에 "${LOGSTASH_JDBC_DRIVER_JAR_LOCATION}" 이렇게 포함시켰다.

실제 경로는 "/usr/share/logstash/logstash-core/lib/jars/mysql-connector-java-5.1.48-bin.jar" 이다.

 

분명 도커 컨테이너 내부에 존재하고 경로도 확실한데 자꾸 jdbc_driver_library not loaded라는 에러가 떴다.

버전도 바꿔가고 위치도 바꿔가면서 해봤는데 여전히 오류가 났다.

 

해결

문제점을 찾다 어느 한 블로그에서 mysql-connector-java-5.1.48-bin.jar 에서 bin을 강조시켜 놓은 글을 보았다.

설마 하고 내가 받은 jar 파일들을 살펴보니 bin 이 붙어 있지 않은 파일들만 있었다.

 

내가 받았을 때는 jar 바이너리 파일이 없었는데..... 다른 버전을 받으니 어떤 건 또 있었다.

 

https://www.elastic.co/guide/en/logstash/current/plugins-inputs-jdbc.html

 

Jdbc input plugin | Logstash Reference [7.4] | Elastic

Building count queries around a prepared statement is not supported at this time and because jdbc paging uses count queries under the hood, jdbc paging is not supported with prepared statements at this time either. Therefore, jdbc_paging_enabled, jdbc_page

www.elastic.co

 

 

공식 문서에서도 mysql-connector-java-5.1.36-bin.jar 파일을 포함시켰다.

 

공식 문서를 자세히 읽어보자...

 

728x90