我的目标是能够根据内容更改日志标记,然后将它们转储为弹性的特殊非默认索引(默认索引名称为logstash-%date%
)。
我使用https://github.com/uken/fluent-plugin-elasticsearch
插件,以便能够将日志转储为弹性(with the following default configmap)。
但是,我会尝试总结一下配置的相关部分,这样一个不熟悉kubernetes而且熟悉vanilla的人就能理解。
这是配置文件:
<source>
tags all pods logs with "kubernetes.*" tag
</source>
<filter kubernetes.**>
@type grep
<regex>
key name
pattern ^bi$
</regex>
</filter>
<filter kubernetes.**>
@type record_transformer
<record>
tag bi
</record>
</filter>
<match bi>
@type elasticsearch
host ...
port ...
index_name bi
</match>
我在这里尝试做的是首先过滤所有用&#34; kubernetes。**&#34;标记的日志,并检查他们的名字&#34;&#34;字段包含&#34; bi&#34; (从我的应用程序中抛出) 然后,下一个过滤器应该将标签更改为&#34; bi&#34;用于与先前过滤器匹配的日志 最后,我尝试捕获用&#34; bi&#34;标记的日志。并将它们转储到名为&#34; bi&#34;。
的特殊索引中但是,配置无法更改日志标记。