mongodb - “重启错误”上的 logstash-input-mongodb 循环 - 时间戳
问题描述
我尝试使用 mongodb 插件作为 logstash 的输入。这是我的简单配置:
input {
mongodb {
uri => 'mongodb://localhost:27017/testDB'
placeholder_db_dir => '/Users/TEST/Documents/WORK/ELK_Stack/LogStash/data/'
collection => 'logCollection_ALL'
batch_size => 50
}
}
filter {}
output { stdout {} }
但是我可能由于字段“时间戳”而面临“循环问题”,但我不知道该怎么做。
[2018-04-25T12:01:35,998][WARN][logstash.inputs.mongodb] MongoDB Input 抛出异常,重新启动 {:exception=>#TypeError: wrong argument type String (expected LogStash::Timestamp)>}
还有一个调试日志:
[2018-04-25T12:01:34.893000 #2900] 调试 -- : MONGODB | 查询 | 命名空间=testDB.logCollection_ALL 选择器={:_id=>{:$gt=>BSON::ObjectId('5ae04f5917e7979b0a000001')}} 标志=[:slave_ok] 限制=50 跳过=0 项目=nil | 运行时间:39.0000 毫秒
如何参数化我的 logstash 配置以在 stdout 控制台中获取我的输出?
解决方案
这是因为字段@timestamp
具有ISODate
数据类型。
您必须从所有文档中删除此字段。
db.getCollection('collection1').update({}, {$unset: {"@timestamp": 1}}, {multi: true})
推荐阅读
- python - 请告诉如何获取整个图像的 rgb 值。我已经打印了每个像素的 rgb 值
- javascript - 将值传递给 Firestore 数据库
- c# - ASP.NET Core 3.1 MVC JWT 登录返回 401
- python - 基于两列将颜色表示为图例
- ubuntu - 为什么笔记本在 ubuntu 上的 julia 中不起作用?
- spring - 健壮的框架(与编程相关)是什么意思?
- java - 如果创建用户时出错,我应该返回什么
- mql4 - MQL 中等效的 ThinkOrSwim 函数
- security - 将上下文相关的编码和/或验证应用于页面上呈现的用户输入是什么?
- solr - 为什么复制字段使用 SOLR _version_ 字段?