logstash的output插件rocketmq版
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
1.9 KiB

# 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=<target_folder>/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
```