# Logstash Java Plugin This is a Java plugin for [Logstash](https://github.com/elastic/logstash). It is fully free and fully open source. The license is Apache 2.0, meaning you are free to use it however you want. The documentation for Logstash Java plugins is available [here](https://www.elastic.co/guide/en/logstash/current/java-output-plugin.html). --- # 过程记录 - 根据指引下载 tag 版本为 v7.17.2 的代码: git clone -b v7.17.2 https://github.com/elastic/logstash.git - 并进行编译,以得到 jar 包: windows: .\gradlew.bat assemble - 在插件工程根目录创建 gradle.properties 配置文件并添加配置([build.gradle](build.gradle)有2处要用到) LOGSTASH_CORE_PATH=/logstash-core - 配置引用相关依赖,编写插件逻辑,编译插件 .\gradlew.bat gem 或 .\gradlew.bat gem --warning-mode all - 下载可运行的[二进行文件](https://www.elastic.co/cn/downloads/past-releases/logstash-7-17-2)到无中文的目录 - 将编译好的[logstash-output-rocketmq-0.0.1.gem](logstash-output-rocketmq-0.0.1.gem)复制到二进制文件解压目录中进行安装 .\bin\logstash-plugin install --no-verify --local logstash-output-rocketmq-0.0.1.gem - 准备离线包,[参考文档](https://www.elastic.co/guide/en/logstash/7.17/offline-plugins.html) .\bin\logstash-plugin prepare-offline-pack --output .\logstash-offline-plugins-7.17.2.zip --overwrite logstash-output-rocketmq - 添加配置文件并启动程序并验证 .\bin\logstash -f logstash-test-jdbc.conf Dockerfile ```dockerfile FROM logstash:7.17.2 COPY --chown=logstash:logstash logstash-offline-plugins-7.17.2.zip /tmp/logstash-offline-plugins-7.17.2.zip COPY --chown=logstash:logstash mysql-connector-java-8.0.20.jar /usr/share/logstash/vendor/mysql-connector-java-8.0.20.jar RUN logstash-plugin install file:///tmp/logstash-offline-plugins-7.17.2.zip \ && rm -f /tmp/logstash-offline-plugins-7.17.2.zip ```