kibana: никакая индексная ошибка

Ни один из существующих ответов не помог, так здесь новый вопрос.

Вариант использования: Перенаправление системного журнала (или) контроль статического файла.

Я успешно установил 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. системный журнал (слушающий на порте 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. Статический файл (файл дарят тип системного журнала данных),

    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 }
    }
    
3
задан 10 November 2014 в 07:25
3 ответа

Как упоминалось в другом потоке:

«У меня было что-то похожее, похоже, что вы не настроили ACL, чтобы позволить пользователю logstash просматривать этот файл журнала.

Используйте 'setfacl -mu: logstash-: rx / var / log ', например, а затем протестируйте, отредактировав / etc / passwd и временно предоставив пользователю logstash оболочку. Затем, su - logstash, попробуйте и cd или cat этот файл. Если он работает, то данные должны появиться в ваша установка Kibana. "

Я использую redis перед elasticsearch, поэтому я могу проверить, работает ли logstash, просто запустив 'LLEN' и 'LPOP'.

0
ответ дан 3 December 2019 в 08:12

Документация по эластичному поиску 1.1 больше недоступна (1.3 или 0. 9 есть), и поведение сети по умолчанию ES изменилось (от первоначального прослушивания IP-адресов без обратного шлейфа до прослушивания обратного шлейфа по умолчанию).

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

Настройка network.publish_host позволяет управлять хостом, на котором узел будет публиковать себя в кластере, чтобы другие узлы могли к нему подключаться. Конечно, это не может быть anyLocalAddress, и по умолчанию это будет первый некольцевой адрес (если возможно), или локальный адрес.

Хотя этот вопрос теперь в основном академический, Наиболее вероятная проблема, с которой столкнулся запрашивающий, была связана с попыткой отправить данные на localhost, а не на example.com (который по информации из вопроса, как известно, работает).

С более поздней версией ES, я подозреваю, что эта проблема не возникла бы (потому что ES теперь по умолчанию прислушивается только к локальному хосту).

0
ответ дан 3 December 2019 в 08:12

Перечислите все индексы с помощью curl localhost:9200/_cat/индексы?v для подтверждения того, что ваши лог-журналы начинают эластично искать. Затем убедитесь, что шаблон индекса, настроенный в kibana (иконка шестеренки в правом верхнем углу, я думаю), соответствует шаблону именования индексов, отображаемому в _cat/индиксах (который должен быть установлен в конфиге логстэша, но я больше не использую логстэш, так что я не уверен. Я очень предпочитаю модуль om-elasticsearch rsyslog, а не логсташ. Он гораздо более энергоэффективен.)

Также убедитесь, что путь эластичного поиска, настроенный в конфигурационном файле kibana, на 100% буквально доступен для копирования и вставки из вашего локального веб-браузера. Если вы сказали example.com, то лучше, чтобы хост example.com был скопирован на нужный сервер. localhost не будет работать вообще, если только на вашей рабочей станции не установлен elasticsearch и не подключен главный сервер...

.
0
ответ дан 3 December 2019 в 08:12

Теги

Похожие вопросы