logstash - 如何在 logstash 输入生成部分中传递硬编码数据
问题描述
如何从生成的输入中传递硬编码数据,当我通过输入部分传递此输入时,logstash 已成功执行,但未在控制台中产生任何过滤输出。有没有办法在输入生成器部分传递 json?
注意-我已经从一些日志文件中获取了这个输入数据......
input {
generator {
lines => [\"clientContextId\":\"INTERNAL-b8d19563-94a1-442d-9a09-dde36743fb7d\",\"description\":\"A N1QL EXPLAIN statement was executed\",\"id\":28673,\"isAdHoc\":true,\"metrics\":{\"elapsedTime\":\"11.921ms\",\"executionTime\":\"11.764ms\",\"resultCount\":1,\"resultSize\":649},\"name\":\"EXPLAIN statement\",\"node\":\"127.0.0.1:8091\",\"real_userid\":{\"domain\":\"builtin\",\"user\":\"Administrator\"},\"remote\":{\"ip\":\"127.0.0.1\",\"port\":44695},\"requestId\":\"958a7e12-d5a6-4d7b-bd40-ac9bb60cf4a3\",\"statement\":\"explain INSERT INTO `Guardium` (KEY, VALUE) \\nVALUES ( \\\"id::5554\\n\\\", { \\\"Emp Name\\\": \\\"Test4\\\", \\\"Emp Company\\\" : \\\"GS Lab\\\", \\\"Emp Country\\\" : \\\"India\\\"} )\\nRETURNING *;\",\"status\":\"errors\",\"timestamp\":\"2021-01-07T09:37:00.486Z\",\"userAgent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 (Couchbase Query Workbench (6.6.1-9213-enterprise))\"]
}
}
filter{
// filter logic
}
output{
stdout { codec => rubydebug }
}
解决方案
是的,您可以在生成器输入中包含 JSON。例如
input { generator { count => 1 lines => [ '{ "id": "43fb7d", "description": "..." }' ] } }
filter { json { source => "message" } }
将导致
"description" => "...",
"id" => "43fb7d",
推荐阅读
- reactjs - 如何在本地网络上部署带有 apollo cient 和 apollo-server 后端的 React 应用程序
- javascript - 使用 Firebase 在声明中动态设置 X-Hasura-role
- asp.net - 如何使用 IIS 配置 Asp.Net Web 应用程序
- html - 转换后我的搜索图标消失了
- wordpress - 该插件在激活期间生成了 242 个字符的意外输出。如果您注意到“标头已发送”消息
- ruby-on-rails - 从 ActiveRecord 弹出记录而不在数据库 Rails 5.2 中删除
- firebase - 如何在颤动的列表视图中显示firebase数组
- python-3.x - 根据 Python 中的名称创建多个可能的电子邮件地址
- html - 如何通过 html 中的动态链接解析多个变量?
- javascript - 将对象和数组作为多播类型传递到 Angular 2 的函数参数的问题(Typescript Question)