logstash - Logstash 自动更新数据
问题描述
我正在使用最新版本的 logstash(7.6.2)。我尝试上传示例数据,并能够使用 logstash(启用自动重新加载)成功将其上传到 elasticsearch,并且能够在 Kibana 界面中看到索引。
但是,当我对以下配置文件进行更改时,我无法在 Kibana 界面中看到更新的数据。我试图删除 mutate 过滤器插件并重新加载 logstash 管道,但 Kibana 中的数据未更新。有趣的是,它没有抛出任何错误。
示例.conf
input{
file{
path => "/usr/local/Cellar/sample.log"
start_position => "beginning"
}
}
filter{
grok{
match => ["message", "%{TIMESTAMP_ISO8601:timestamp_string}%{SPACE}%{GREEDYDATA:line}"]
}
date{
match => ["timestamp_string", "ISO8601"]
}
mutate{
remove_field => [message, timestamp_string]
}
}
output{
elasticsearch{
hosts => ["localhost:9200"]
index => "sample"
}
stdout{
codec => rubydebug
}
}
任何帮助在这里表示赞赏。TIA
PS - 我是 ElasticSearch 的新手!
解决方案
如果你想再次解析一个完整的文件,你需要:
- 删除 sindedb 文件
- 或者只删除 sincedb 文件中的对应行
然后,重新启动 Logstash。Logstash 将重新解析文件。
欲了解更多信息:https ://www.elastic.co/guide/en/logstash/current/plugins-inputs-file.html#sincedb_path
推荐阅读
- c++ - (为什么)是 std::chrono 文字左值?
- angular - 角度中的动态复选框问题
- python - 使用 pd.read_csv 读取 CSV 文件(不规则分隔符,自定义 NA)
- three.js - 我们可以为 obj-mtl/FBX Loader 支持三个 js 的 IBL
- python - 创建一个指定形状的 pandas DataFrame,每行包含相同的字典
- azure - Azure Cosmos DB 移动到另一个订阅
- javascript - $.ajax 在 ("click") 事件监听器中使用时不起作用
- sml - 在标准 ML 中使用乘法和迭代的幂函数
- reactjs - 从用户获取代码输入并像 Codepen 一样运行时,我应该采取哪些安全措施?
- angular - 如何为Angular正确设置cdk拖放?