Как получить разные имена индексов для разных журналов от одного и того же файла до logstash - PullRequest
0 голосов
/ 25 сентября 2019

Я установил версию (7.3.1) ELK.filebeat (7.3.1) на другой виртуальной машине.У меня есть несколько журналов на виртуальной машине с установленным Filebeat.Я хочу иметь разные индексы для разных журналов.Я пробовал способ, который не работает, файлы конфигурации, как показано ниже

filebeat.yml

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /data01/-----/LOG1/forecaster.log
  fields:
  log_type: type1
- type: log
  enabled: true
  paths:
    - /data01/-----/LOG2/forecaster.log
  fields:
  log_type: type2
- type: log
  enabled: true
  paths:
    - /data01/-----/LOG3/forecaster.log
  fields:
  log_type: type3

logstash.conf

input {
    beats {
                type => "filebeat"
                port => "5044"
    }
}

filter {
  #If log line contains tab character followed by 'at' then we will tag that entry as stacktrace
  if [message] =~ "\tat" {
    grok {
      match => ["message", "^(\tat)"]
      add_tag => ["stacktrace"]
    }
  }
}
output {
stdout {
    codec => rubydebug
  }
if ([fields][log_type] == "type1") {
elasticsearch {
hosts => ["IP:9200"]
index => "log1"
}
}
if ([fields][log_type] == "type2") {
elasticsearch {
hosts => ["IP:9200"]
index => "log2"
}
}
if ([fields][log_type] == "type3") {
elasticsearch {
hosts => ["IP:9200"]
index => "log3"
}
}
}

с использованием вышеуказанных конфигураций и после анализа журналов EL и filebeat файлы журналов извлекаются из filebeat и отправляются в logstash, где они обрабатываются, но не отправляются в эластичный поиск.

Мне нужна помощь, чтобы выяснить, что не так / отсутствует, чтобы сделать эту работу

Спасибо

1 Ответ

0 голосов
/ 26 сентября 2019

Кажется, что отступ в конфигурации filebeat неправильный в разделе полей, вам не хватает двух пробелов

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /data01/-----/LOG1/forecaster.log
  fields:
    log_type: type1                            <-- fis this line
- type: log
  enabled: true
  paths:
    - /data01/-----/LOG2/forecaster.log
  fields:
    log_type: type2                            <-- fis this line
- type: log
  enabled: true
  paths:
    - /data01/-----/LOG3/forecaster.log
  fields:
    log_type: type3                            <-- fis this line
...