ruby - 使用 ruby 过滤器创建一个新字段
问题描述
所以这里的参数是一个哈希,我想连接所有的键并将其存储到一个新字段中,我该如何实现呢?我发现可以在配置文件中使用内联 ruby 代码,但是我不知道如何分配 concat 的返回值。
grok { match => { "request" => [ "url", "%{URIPATH:url_path}%{URIPARAM:url_params}?" ]} }
urldecode{ field => "url_path" }
mutate { gsub => ["url_params","\?","" ] }
kv {
field_split => "&"
source => "url_params"
target => "params"
}
urldecode{ field => "params" }
ruby {
code => 'pattern= params.keys.join(",")'
#Pattern should be the new field that contains the key, separated by comma
}
预期结果应该是:
模式=“param1,param2,param3 ...等等”
解决方案
解决方案是:
event.set('field_name', field_value)
推荐阅读
- twitter-bootstrap - Bootstrap nav 下拉位置在鼠标移动时消失并且在切换下使 2 个单独的菜单出现在一个位置
- jquery - 我在 WordPress DatePicker 中看不到 UI
- python - 当图像只有黑暗时如何反转图像?
- r - 如何读取 R 中以某个字符串开头的行
- osrm - OSRM 给出负行驶距离,为什么?
- apache - Apache httpserver 虚拟主机不工作
- python - 允许在 python 脚本中连接到 gmail 帐户
- python - 第三方 SDK 和线程安全
- c# - 连接小型 SQL Server (LocalDB) C# 应用程序在第一次运行时总是超时。什么可能导致这种情况?
- javascript - 如何更改微调器日期选择器颜色?- 安卓工作室