开源插件开发引导
Last updated
LoongCollector 插件的实现原理、整体架构、系统设计等介绍,请参考插件系统。
LoongCollector 原生插件的开发主要有以下步骤:
创建Issue,描述开发插件功能,会有社区同学参与讨论插件开发的可行性,如果社区review 通过,请参考步骤2继续进行。
开发对应插件,可以参考以下文档:
提交Pull Request。
LoongCollector 插件的开发主要有以下步骤:
创建Issue,描述开发插件功能,会有社区同学参与讨论插件开发的可行性,如果社区review 通过,请参考步骤2继续进行。
实现相应接口。
通过init函数注册插件。
将插件加入插件引用配置文件的 common 配置节;若仅运行于指定系统,请添加到 linux 或 windows。构建时会根据该文件生成 plugins/all/all.go(含 all_linux.go / all_windows.go),请勿手改生成文件;改完后执行 make all(或你常用的构建目标)以重新生成并完成链接。
使用 make lint 检查代码规范。
提交Pull Request。
在开发时,Logger 接口和自监控指标接口或许能对您有所帮助。此外,可以使用纯插件模式启动 LoongCollector,用于对插件进行轻量级测试。
Go 侧插件注册表与 Add*Creator 定义见仓库 pkg/pipeline/plugin.go;各插件类型的 V1 / V2 扩展接口见同目录下的 input.go、processor.go、aggregator.go、flusher.go(旧文档仅描述 V1 时,请以源码为准)。
更详细的开发细节,请参考:
开发完成后,可以参考如何生成插件文档生成插件的使用文档,也可以手动编写插件文档。
文档的编写主要有如下步骤:
Last updated