我正在使用fluenbit将日志从我的K8s集群发送到elasticsearch。当我查看kibana的时候,我看到了很多不适用于我的集群pod的liveness和readiness条目。正因为如此,我试图通过使用过滤器部分来阻止我的elasticsearch集群获取这些类型的消息,如下所示:
fluent-bit.conf: |
[SERVICE]
Daemon Off
Flush 5
Log_Level error
Parsers_File /fluent-bit/etc/parsers.conf
Parsers_File /fluent-bit/etc/conf/custom_parsers.conf
HTTP_Server On
HTTP_Listen 0.0.0.0
HTTP_Port 2020
Health_Check On
[INPUT]
Name tail
Path /var/log/containers/*.log
multiline.parser docker, cri
Tag kube.*
Mem_Buf_Limit 50MB
Buffer_Max_Size 1MB
Skip_Long_Lines On
Buffer_Chunk_Size 1M
[INPUT]
Name systemd
Tag host.*
Systemd_Filter _SYSTEMD_UNIT=kubelet.service
Read_From_Tail On
[FILTER]
Name kubernetes
Match kube.*
Merge_Log On
Keep_Log Off
K8S-Logging.Parser On
K8S-Logging.Exclude On
[FILTER]
Name grep
Match kube.*
Exclude log .*liveness.*|.*readiness.*
字符串
我不知道为什么,但这些日志一直出现在我的elasticsearch中。我是不是忘了什么?
- 谢谢-谢谢
3条答案
按热度按时间yb3bgrhw1#
在本forum中也讨论了类似的问题。简单地禁用设置可能无法在kubernetes的情况下禁用日志,您需要更改包含fluentbit配置的manifest文件,并在应用manifest文件之前删除旧部署沿着包含旧manifest文件的作业。现在应用这些更改,它将创建一个新的部署,其中将配置新的fluentbit设置。
w6lpcovy2#
你的解析器在哪里?我认为“日志”不是一个字段。您可以使用解析器中的字段来代替“log”
smdnsysy3#
例如,在一个示例中,
字符串
我认为斜线或圆点仍然不起作用,错误仍然存在,所以你必须更换它们。