elasticsearch - 运行命令后logstash卡住

标签 elasticsearch logstash

我已经定义了这个配置文件

input {
  file {
    path => "C:\Users\Jack\Desktop\logsatash_practice"
    type => "txt"
  }
}


output {
  file {
    path => "C:\Users\Jack\Desktop\logsatash_practice\op"
  }
}

并通过 cmd 运行“logstash agent -f local_config.conf”命令。

之后我收到一条消息,然后超过 1 小时没有发生任何事情。

打印的消息:
"C:\Users\Jack\Desktop\logstash-1.4.2\bin>logstash 代理 -f local_config.conf
←[33m使用里程碑2输入插件'文件'。这个插件应该是稳定的,但是如果
你看到奇怪的行为,请告诉我们!有关插件 mi 的更多信息
莱斯通,见 http://logstash.net/docs/1.4.2/plugin-milestones {:level=>:warn}←[
0米
←[33m使用里程碑2输出插件'文件'。这个插件应该是稳定的,但我
如果您看到奇怪的行为,请告诉我们!有关插件 m 的更多信息
石像,见 http://logstash.net/docs/1.4.2/plugin-milestones {:level=>:warn}←
【0米”

可以肯定的是,我确认配置文件存在于我在配置文件中定义的路径中。

有任何想法吗?

最佳答案

Logstash 第一次看到一个文件时,它的行为取决于 start_position 你设置。您似乎期望它会从 beginning 中读取。文件,但默认行为是从 end 开始.

所以,你可能想要:

  file {
    path => "C:\Users\Jack\Desktop\logsatash_practice"
    type => "txt"
    start_position => "beginning"
  }

但是,每次 Logstash 看到一个文件时,它都会用 sincedb 标记它的进度。入口。现在 Logstash 已经查看过您的文件一次,它不会再将其视为"new"文件。如果您删除该条目并重新启动 Logstash,它将忘记它已经看到了该文件。

sincedb 数据保存在文件中。您可以为它们指定路径,但默认设置会将它们保留在您的主目录中。

如果您只是在练习并且不关心您的数据,您可以简单地删除所有这些数据。

如果您确实要小心,可以使用 -v 运行 Logstash。打印出每个 sincedb 路径,并找到您需要删除的特定文件。

关于elasticsearch - 运行命令后logstash卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30079250/

相关文章:

elasticsearch - 筛选聚合中的多值字段

elasticsearch - Jenkins Logstash插件无法发布到ElasticSearch

java - ElasticSearch - 使用 Java HighLevel HTTP 客户端删除索引

json - Logstash:处理大消息

elasticsearch - Logstash 调度第一次运行

elasticsearch - 基于多个字段的Kibana可视化

elasticsearch - 即使 Elasticsearch 具有其映射,在Kibana中可视化字段的问题

ruby - 如何在 ruby​​ 中将 timeuuid 转换为时间戳

elasticsearch - Kibana显示带有 future 日期的文件

elasticsearch - Logstash 检查嵌套 json 中的字段是否存在