CnOps 智能运维与可观测社区
首页开源项目实践文章视频课程常见问答开发者工具STAROps 专题
导航菜单
首页开源项目实践文章视频课程常见问答开发者工具STAROps 专题

CnOps 智能运维与可观测社区

愿景

CnOps 智能运维与可观测社区是一个以"智能运维与可观测"为核心的开放、包容、分享的技术社区,旨在聚集运维专家、开发者和爱好者,共同探讨、学习和分享可观测最佳实践与最新技术,与众多技术社区合作互动,共同探讨交叉领域的技术挑战,推动可观测领域的创新与进步。

内容社区

  • 实践文章
  • 视频课程
  • 开源项目
  • 常见问答
  • 开发者工具

友情链接

  • Prometheus
  • Grafana Lab
  • OpenTelemetry
  • LoongCollector

关注我们

阿里云云原生公众号阿里云云原生
阿里云可观测公众号阿里云可观测

Copyright © 2026 CnOps 社区. All rights reserved.

首页/开源项目/LoongCollector/什么是输出插件
文档目录
概览版本管理
什么是输出插件

LoongCollector

什么是输出插件

输出插件(Flusher)位于采集配置末端,负责将聚合后的 Event / EventGroup 写出到下游:日志服务、消息队列、时序库、搜索与分析引擎、本地文件或标准输出等。每个采集配置必须至少配置 一个 Flusher;也可配置 多个 Flusher,实现一条数据多路投递。 LoongCollector 提供两类输出插件: -...

输出插件

输出插件(Flusher)位于采集配置末端,负责将聚合后的 Event / EventGroup 写出到下游:日志服务、消息队列、时序库、搜索与分析引擎、本地文件或标准输出等。每个采集配置必须至少配置 一个 Flusher;也可配置 多个 Flusher,实现一条数据多路投递。

LoongCollector 提供两类输出插件:

  • 原生输出插件(C++):与核心进程同构,路径短、默认集成度高,适合作为云上默认链路与高稳定场景。
  • 扩展输出插件(Golang):由插件运行时加载,易于对接开源与自建系统,功能覆盖面广。

插件类型介绍

原生插件

原生 Flusher 采用 C++ 实现,常见特点:

  • 与主进程共享运行时,默认链路上延迟与资源占用更可控
  • 适合云上默认写入(如 flusher_sls)、调试丢弃(flusher_blackhole)、本地落盘(flusher_file)、Kafka C++ 实现(flusher_kafka_native)等
  • 路由 并非独立「网络输出」,而是由 router 与若干支持分流的 Flusher 协同完成多路输出;适用条件见 多 Flusher 路由
名称 提供方 功能简介
flusher_blackhole
黑洞
SLS 官方 丢弃事件,常用于压测或占位。
flusher_file
本地文件
SLS 官方 将数据写入本地文件(如自监控指标落盘)。
flusher_kafka_native
Kafka
ChaoEcho 使用 C++ 实现将数据输出到 Kafka。
flusher_sls
SLS
SLS 官方 将数据写入阿里云日志服务(SLS)。
router
多 Flusher 路由
SLS 官方 在原生处理链路与支持的 Flusher 上按事件类型或 Tag 分流。

上表按插件 Type 字典序排列。

扩展插件

扩展 Flusher 基于 Golang 实现,特点包括:

  • 对接种类多(HTTP、ClickHouse、Doris、ElasticSearch、Kafka、Loki、OTLP、Prometheus Remote Write、Pulsar 等)
  • 参数与批处理、重试、认证等多在各篇文档中单独说明,需按目标系统调优
  • 与 扩展机制(如 ext_basicauth、ext_request_breaker 等)组合使用时,见 插件概览 - 扩展
名称 提供方 功能简介
flusher_clickhouse
ClickHouse
社区
kl7sn
写入 ClickHouse。
flusher_doris
Apache Doris
社区 Stream Load 写入 Apache Doris。
flusher_elasticsearch
ElasticSearch
社区
joeCarf
写入 ElasticSearch。
flusher_http
HTTP
社区
snakorse
以 HTTP 方式推送到自定义后端。
flusher_kafka
Kafka
社区 输出到 Kafka(旧版实现)。
flusher_kafka_v2
Kafka V2
社区
shalousun
输出到 Kafka,优先推荐。
flusher_loki
Loki
社区
abingcbc
推送到 Grafana Loki。
flusher_otlp_log
OTLP 日志
社区
liuhaoyang
兼容 OpenTelemetry Logs 的后端。
flusher_prometheus
Prometheus
社区 Remote Write 写入 Prometheus 兼容时序库。
flusher_pulsar
Pulsar
社区
shalousun
写入 Apache Pulsar。
flusher_stdout
标准输出/文件
SLS 官方 标准输出或文件,便于本地调试与排障。

上表按插件 Type 字典序排列。完整稳定性等级与其它交叉引用仍以 插件概览 为准。

插件特性对比

特性 原生 Flusher 扩展 Flusher
实现语言 C++ Golang
典型用途 默认上云、路由、本地文件/黑洞、C++ Kafka 开源栈与自定义 HTTP/SDK 对接
加载方式 核心内建 插件运行时动态加载
与 router 配合 router 仅在与原生处理链及支持的 Flusher 组合下生效 视具体 Flusher 是否支持 Match 等字段,见单篇文档

使用说明

  • 必填:每个采集配置的 flushers 列表至少包含一项;Aggregation 完成后数据由 Flusher 消费并写出。一级字段与约束见 采集配置。
  • 与 Input / Processor 的衔接:仅扩展 Input 时,处理链须遵守 处理插件 中的组合规则(仅扩展 Processor 或级联模式等);Flusher 侧通常同时受数据形态与下游协议影响,需在单篇 Flusher 文档中核对 TelemetryType、Format 等参数。
  • 路由:需要按事件类型或 Tag 拆流到不同下游时,在支持的场景下使用 router,并为各 Flusher 配置匹配规则。
  • 认证与加密:云上 AK/SK 等常通过 系统参数 与 flusher_sls 配合;HTTP 类扩展 Flusher 可使用概览中的 扩展 表内认证、熔断等能力。

选型建议

  1. 写入阿里云 SLS:优先使用原生 flusher_sls,并正确配置 Endpoint、Project、Logstore(及 TelemetryType 等)。
  2. 本地调试或 CI:使用 flusher_stdout 观察序列化结果;仅需吞吐压测、不需下游时使用 flusher_blackhole。
  3. Kafka:新部署优先评估 flusher_kafka_v2;若需与核心进程最短路径对接,可了解 flusher_kafka_native(C++)。
  4. ClickHouse / Doris / ES / Loki / Pulsar / HTTP / OTLP / Prometheus:选用对应扩展 Flusher,并按目标系统的批大小、重试、TLS、认证段落逐项配置。
  5. 多副本、多环境投递:在符合条件时用 router 配合多个 Flusher,避免在应用外再写多套采集配置重复采同一源(仍以实际支持与单篇说明为准)。

文章大纲