开源插件开发引导
了解 LoongCollector 插件
LoongCollector 插件的实现原理、整体架构、系统设计等介绍,请参考插件系统。
原生插件开发流程(C++语言)
LoongCollector 原生插件的开发主要有以下步骤:
- 创建Issue,描述开发插件功能,会有社区同学参与讨论插件开发的可行性,如果社区review 通过,请参考步骤2继续进行。
- 开发对应插件,可以参考以下文档:
- 进行单测或者E2E测试,请参考如何使用单测 与 如何使用E2E测试.
- 提交Pull Request。
扩展插件开发流程(go语言)
LoongCollector 插件的开发主要有以下步骤:
- 创建Issue,描述开发插件功能,会有社区同学参与讨论插件开发的可行性,如果社区review 通过,请参考步骤2继续进行。
- 实现相应接口。
- 通过init函数注册插件。
- 将插件加入插件引用配置文件的
common
配置节, 如果仅运行于指定系统,请添加到linux
或windows
配置节. - 进行单测或者E2E测试,请参考如何使用单测 与 如何使用E2E测试.
- 使用 make lint 检查代码规范。
- 提交Pull Request。
在开发时,Logger接口和自监控指标接口或许能对您有所帮助。此外,可以使用纯插件模式启动 LoongCollector,用于对插件进行轻量级测试。
更详细的开发细节,请参考:
- 如何开发扩展Input插件
- 如何开发扩展Processor插件
- 如何开发扩展Aggregator插件
- 如何开发扩展Flusher插件
- 如何开发扩展Extension插件
- 插件配置项基本原则
- 如何开发外部私有插件
- 如何自定义构建产物中默认包含的插件
文档撰写流程
开发完成后,可以参考如何生成插件文档生成插件的使用文档,也可以手动编写插件文档。
文档的编写主要有如下步骤: