问题描述
我们目前正在使用尾部输入来收集IIS日志,并使用fluentbit将它们发送到New Relic。
fluent-bit.conf
[SERVICE]
Flush 1
Log_File C:\inetpub\logs\LogFiles\W3SVC1\*.log
Parsers_File C:\Program Files\New Relic\newrelic-infra\parsers.conf
[INPUT]
Name tail
Path C:\inetpub\logs\LogFiles\W3SVC1\*.log
Parser iis_logs_parser
Mem_Buf_Limit 1000MB
[OUTPUT]
name nrlogs
match *
api_key {{NewRelicKey}}
现在,我们想收集另一个可以在Azure Blob存储中访问的日志源。我们希望使用fluentbit,以便以相同的方式对两个数据源进行解析,确保收集的字段相同,并仅使用源进行扩展。这样,我们可以几乎以相同的方式处理/可视化这两个数据源。
如何配置fluentbit以从Azure Blob存储读取日志?我们在寻找什么流线型输入?
解决方法
以下是受支持的fluentbit输入: https://docs.fluentbit.io/manual/pipeline/inputs
不支持Azure Blob存储,也不支持Amazon S3。 FluentBit被设计为轻量级/嵌入式日志收集器,因此其输入待办事项具有相应的优先级。所有的繁重工作通常都是流利的。
我也签到了流利的软件-有几个用于Azure blob存储的插件,但找不到一个支持输入的插件(S3既支持输入/输出)。看来解决方案将是由存储事件触发的azure函数,读取文件并进一步发送数据。
print(df)
Customer Date Score Result
0 A 2017-12-10 10 10.0
1 A 2018-01-10 10 10.0
2 A 2018-01-15 11 10.5
3 A 2018-01-16 12 11.5
4 A 2018-01-16 13 11.5
5 B 2018-01-16 10 10.0
6 A 2018-03-01 10 10.0