kibana:没有索引错误

现有的答案都没有帮助,所以这里有一个新的问题。

用例 :redirectsyslog(或)监视静态文件。

我已经成功安装logstash(1.4.2),elasticsearch(1.1.1)和kibana(3.0.1),但努力摆脱错误

No results There were no results because no indices were found that match your selected time span 
  • 我可以访问http://example.com:9200 – >成功200邮件
  • 访问http://example.com:9200/_aliases?pretty – > {} – >空字典!
  • CLI /opt/logstash/bin/logstash -f </etc/logstash/conf.d/10-syslog.conf>

使用的示例logstash文件如下所示。 请让我知道,如果有什么需要从我的结束。

  1. syslog(监听端口9000,是的,我已经添加了“@@ localhost:9000”到/etc/rsyslog.d/50-default.conf并重新启动rsyslog)

     sudo cat > /etc/logstash/conf.d/10-syslog.conf <<EOF input { tcp { port => 9000 type => syslog } udp { port => 9000 type => syslog } } filter { if [type] == "syslog" { grok { match => { "message" => "%{SYSLOGTIMESTAMP:syslog_timestamp} %{SYSLOGHOST:syslog_hostname} %{DATA:syslog_program}(?:\[%{POSINT:syslog_pid}\])?: %{GREEDYDATA:syslog_message}" } add_field => [ "received_at", "%{@timestamp}" ] add_field => [ "received_from", "%{host}" ] } syslog_pri { } date { match => [ "syslog_timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss" ] } } } output { elasticsearch { host => localhost } stdout { codec => rubydebug } } EOF 
  2. 静态文件(与syslogtypes的数据一起存在的文件)

     input { file { path => "/var/log/awasthi.log" type => syslog start_position => "beginning" sincedb_path => "/dev/null" } } filter { if [type] == "syslog" { grok { match => [ "message", "%{SYSLOGTIMESTAMP} %{NOTSPACE:hostname1}/%{NOTSPACE}"] } } } output { stdout { codec => rubydebug } } 

正如另一个线程中提到的:

“我有类似的东西,这听起来像你没有设置ACL允许logstash用户查看该日志文件。

例如,使用'setfacl -mu:logstash-:rx / var / log',然后通过编辑/ etc / passwd并给logstash用户暂时给shell加以testing。 然后,su – logstash,并尝试cd或cat该文件。 如果有效,那么数据应该出现在你的Kibana设置中。“

我使用的是redisin的elasticsearch,所以我可以通过简单运行'LLEN'和'LPOP'来testinglogstash是否工作正常。

elasticsearch 1.1的文档不再可用(1.3或0.9),并且ES的默认networking行为已经改变(从最初监听非环回IP到默认监听环回)。

根据https://www.elastic.co/guide/en/elasticsearch/reference/1.3/modules-network.html

network.publish_host设置允许控制节点将在集群内自行发布的主机,以便其他节点能够连接到它。 当然,这不能是anyLocalAddress,并且默认情况下,它将是第一个非回环地址(如果可能的话)或本地地址。

虽然现在的问题在很大程度上是学术问题,但提问者面临的最可能的问题是由于试图发送数据到localhost ,而不是example.com (根据问题的信息,已知工作)。

随着更新的ES版本,我怀疑这个问题不会发生(因为ES现在默认只监听本地主机)。