介绍
Fluent Bit
是一个开源的多平台日志处理和分发工具。
如今,数据来自不同的来源,而Fluent Bit可以帮助你聚合和处理所有日志数据。
现在,Manticore也支持将Fluent Bit用作处理管道。这允许收集和转换的数据被发送到Manticore。
让我们来看一个索引 dpkg.log
的简单示例,这是Debian软件包管理器的标准日志文件。日志本身具有简单的结构,如下所示:
2023-05-31 10:42:55 status triggers-awaited ca-certificates-java:all 20190405ubuntu1.1
2023-05-31 10:42:55 trigproc libc-bin:amd64 2.31-0ubuntu9.9 <none>
2023-05-31 10:42:55 status half-configured libc-bin:amd64 2.31-0ubuntu9.9
2023-05-31 10:42:55 status installed libc-bin:amd64 2.31-0ubuntu9.9
2023-05-31 10:42:55 trigproc systemd:amd64 245.4-4ubuntu3.21 <none>
配置
这里是一个Fluent配置文件的示例,可以用来与Manticore配合使用:
[SERVICE]
flush 1
daemon On
log_level info
[INPUT]
name tail
path /var/log/dpkg.log
inotify_watcher false
read_from_head true
[OUTPUT]
name es
match *
host 127.0.0.1
port 9308
index dpkg_log
注意,我们的示例是为了在Docker中运行,因此我们以守护进程模式启动FluentBit,并禁用INPUT inotify_watcher选项,以避免可能对Docker环境造成的问题,这可能导致错误。同时,我们假设Manticore在默认的http端口9308上启动。
结果
现在,你可以使用上面的配置运行Fluentbit。来自dpkg日志的数据将传递到Manticore并正确索引。
这里是创建的表的结果架构和插入文档的示例:
mysql> DESCRIBE dpkg_log;
+-------------+--------+----------------+
| Field | Type | Properties |
+-------------+--------+----------------+
| id | bigint | |
| @timestamp | text | indexed stored |
| log | text | indexed stored |
+-------------+--------+----------------+
mysql> SELECT * FROM dpkg_log LIMIT 3\G
*************************** 1. row ***************************
id: 7856533729353662465
@timestamp: 2023-08-04T15:09:21.191Z
log: 2023-06-05 14:03:04 startup archives install
*************************** 2. row ***************************
id: 7856533729353662466
@timestamp: 2023-08-04T15:09:21.191Z
log: 2023-06-05 14:03:04 install base-passwd:amd64 <none> 3.5.47
*************************** 3. row ***************************
id: 7856533729353662467
@timestamp: 2023-08-04T15:09:21.191Z
log: 2023-06-05 14:03:04 status half-installed base-passwd:amd64 3.5.47
结论
Manticore与Fluent Bit的集成提供了一种强大而高效的解决方案,用于处理和索引日志数据,使各种应用程序更易于访问和管理。通过这个简单的配置和清晰的示例,即使是新手也可以快速入门,受益于Manticore和Fluent Bit合作的强大能力。无论你是处理标准日志还是更复杂的数据源,这种协作简化了过程,为有效的数据管理开辟了新可能性。