我有一个工业系统生成的日志文件,其中一些行如下所示:
component1 v1 component2 v2 component3 v3 ...
其中vx
是一个数值(例如3.14159
)。
我正在运行一个超级基本的 ELK 堆栈,我想将这些提取为字段/值。
我不知道如何/在哪里解决这个问题。是否应该进行 logstash 配置以从单行中提取字段?
答案1
这太邪恶了。
过滤kv
器在这里不起作用,因为 key=value 分隔符与分隔元组的分隔符相同。
如果线条一致,grok 可能是您的救星。但如果组件的顺序发生变化,那么很快就会变得非常棘手。
^{WORD:component1} {%BASE10NUM:component1_val}...