fluentd (fluent/fluentd)
Searching Database…
这是干什么用的?
Fluentd 是一个开源的日志收集器,位于你整套日志系统的核心:它从多种数据源收集事件,然后写入文件、关系型数据库、NoSQL、IaaS、SaaS、Hadoop 等各种目的地。
它是我在代码里调用的库,还是部署在服务器上运行的服务?
它是一个独立的守护进程:安装之后用一个配置文件启动,它就会自己收集和分发日志,你的应用只需把事件发给它。
我怎么把它跑起来?
先安装 gem,生成配置,再启动守护进程:运行 'gem install fluentd',然后 'fluentd -s conf',再 'fluentd -c conf/fluent.conf &'。想测试的话,可以用 'fluent-cat debug.test' 管道传入一条 JSON 消息。
运行之前我需要装好哪些东西?
需要 Ruby 3.3 或更高版本,并且 PATH 里要有 git(在 Windows 上,README 建议用 GitHub for Windows 或 GitShell 来轻松完成 git 的安装配置)。
我还在用老的 0.12 分支,这样可以吗?
不行:v0.12 分支已被弃用,不再维护。开发都在 master 分支上进行,对应 v1 版本,所以请计划迁移到 v1。
我可以商用吗?要花钱吗?
它基于 Apache License 2.0 协议免费开源,允许商用。
为什么它自称统一日志层?
因为它把数据源和后端存储解耦了:不用把每个应用都逐个接到各种存储上,Fluentd 只需一次性收集事件,再把它们转发到该去的地方——文件、关系型数据库、NoSQL、IaaS、SaaS 或 Hadoop——从而统一你的日志基础设施。
我怎么快速确认它确实在接收事件?
在守护进程运行时,把一小段 JSON 数据通过管道送进 'fluent-cat' 命令,指定一个测试标签(比如 debug.test),然后观察数据流转。
What are similar projects?
vector, telegraf, thanos, signoz, kubescape, cat, jaeger, awesome-sysadmin
Which topics is it in?
pipelines, logs, data-pipeline, events, hadoop, audit, security-audit, cncf, logging, nosql, infrastructure, ruby