我有一个在AKS中运行的客户端应用程序,带有一个将日志转发到的pod。该软件来自他们购买的第三方,我们使用JSON格式化程序(定制的Log4J2格式化程序,不是默认的,而是相同的基本主体)输出JSON日志。
问题是我一直收到这个错误:
[ warn] [input] tail.0 paused (mem buf overlimit)
我尝试了几种不同的配置,但回到了绘图板(我尝试切换到storage.type filesystem
,等等)。日志将持久化在存储帐户文件共享中,并通过SMB挂载被FluentBit荚访问。
我决定这样做(将多个文件放入一个文件中):
[SERVICE]
Flush 1
Log_Level warn
Daemon off
Parsers_File parsers.conf
@INCLUDE inputs-cots-app.conf
@INCLUDE output-law.conf
[PARSER]
Name cots-json
Format json
[INPUT]
Name tail
Tag cots.json
Path /opt/logMount/*podType*/rolling.json
Exclude_Path /opt/logMount/*podType*/rolling.log
Path_Key filename
Read_From_Head True
Mem_Buf_Limit 128MB
Buffer_Max_Size 64MB
Skip_Long_Lines On
Skip_Empty_Lines On
Refresh_Interval 60
Inotify_Watcher False
Parser cots-json
[OUTPUT]
name azure
match cots.json
Customer_ID ${LAW_WORKSPACE_ID}
Shared_Key ${LAW_ACCESS_KEY}
Log_Type cotsLogsJSON
有什么关于故障排除的提示吗?我似乎无法确定如何最好地解决这个问题。
发布于 2022-10-20 15:50:01
您期望通过这样的配置来处理哪些负载?也许您的mem_buf_limit
对于这样的负载来说太小了。请参阅https://docs.fluentbit.io/manual/administration/backpressure
https://stackoverflow.com/questions/74073819
复制相似问题