如何在Logstash中过滤具有相同名称的多个字段?

彼德

我将tsung日志放入ElasticSearch(ES),以便可以使用Kibana过滤,可视化和比较结果。

我正在使用logstash及其JSON解析过滤器将JSON格式的tsung日志推送到ES。

Tsung日志有点复杂(IMO),将数组对象分为数组对象,多行事件和几个具有相同名称的字段,例如以下示例中的“值”。

我想改变这个事件:

{
 "stats":[
  {"timestamp": 1317413861,  "samples": [
   {"name": "users", "value": 0, "max": 1},
   {"name": "users_count", "value": 1, "total": 1},
   {"name": "finish_users_count", "value": 1, "total": 1}]}]}

到这个:

{"timestamp": 1317413861},{"users_value":0},{"users_max":1},{"users_count_value":1},{"users_count_total":1},{"finish_users_count_value":1},{"finish_users_count_total":1}

由于整个聪日志文件在性能测试活动结束转发到logstash,我想使用正则表达式删除CR和unusefull统计数据样本,以便简化一点点发送事件logstash前阵列。

然后,我将使用那些JSON过滤器选项:

add_field => {"%{name}_value" => "%{value}"}
add_field => {"%{name}_max" => "%{max}"}
add_field => {"%{name}_total" => "%{total}"}

但是,我应该如何处理一个事件中包含多个字段的事实呢?最好的事情是什么?

谢谢你的帮助。

阿兰·柯林斯(Alain Collins)

这里需要使用ruby {}过滤器。循环访问“样本”字段中的条目,并根据名称/值/总数/最大值构造自己的字段。

在SO的其他地方也有这种类型的行为的示例。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Spring中具有相同名称的多个字段

Python如何在多个字段具有相同名称的情况下为POST数据选择字段

发布具有相同名称的多个字段

如何在Google App Engine搜索API的搜索文档中获取具有相同名称的多个字段的所有值?

当多个字段具有相同名称时,如何插入xml python?

如何在具有相同名称Laravel的任何单个字段上应用验证?

具有多个具有相同名称的字段的 POST

加载具有相同名称的多个字段的数据框

如何在数据源中解析多个具有相同名称的列?

如何在Node Agenda中以编程方式定义多个具有相同名称的作业

当多个节点具有相同名称时,如何在XML中编辑特定节点的值?

如何在列中添加多个具有相同名称的数字?

在Laravel中发布多个具有相同名称的字段

如何从多个具有相同名称的输入文本字段中仅获取一个值?

如何从多个具有相同名称的输入中获取值,其中使用jQuery动态创建输入字段?

如何在 Django 中过滤具有多个字段对象的查询集?

如何在Linux中将多个7zip存档提取到具有相同名称的文件夹中?

如何在 R 中快速调用具有相同名称的多个数据帧/向量,但结尾除外

如何拼合具有相同名称的字段

如何在具有完善功能的流中缓存/定位具有相同名称的任务?

如何合并多个具有相同名称的列的表

在MVC中处理具有相同名称的多个动作

熊猫中具有相同名称的多个列

在DOM中访问多个具有相同名称的项目

SQL Server中多个具有相同名称的表

在Linux中创建具有相同名称的多个文件

从多个表中获取具有相同名称的列

如何在Vuejs项目中导入具有相同名称的多个组件?

如何在 ASP.NET MVC 中保存多个具有相同名称属性的数据?