Запустите несколько файлов conf в службе Windows Logstash - PullRequest
0 голосов
/ 06 ноября 2019

Я установил Logstash 7.1.0 в качестве службы в Windows через NSSM. Я не предоставил никаких аргументов в NSSM.

И в pipelines.yml я устанавливаю разные конвейеры, просто включив

- pipeline.id: dataupdate
      path.config: "D:\logstash-7.1.0\logstash-7.1.0\bin\myupdate.conf"
 - pipeline.id: groklogs
      path.config: "D:\logstash-7.1.0\logstash-7.1.0\bin\logs.conf"

Когда я запускаю службу, файлы conf некажется, работает. Я предполагал, что когда вы не дадите никаких аргументов в NSSM, pipelines.yml будет направлен на выполнение.

Мне нужно запустить несколько файлов conf в моей службе logstash без прерывания. Если я запускаю cmd, он остановится, как только я закрою cmd, я этого не хочу. Вот содержимое файлов конфигурации:

logs.conf:

input {
  beats {
    port => 5044
  }
}
filter {
    grok {
match => {"message" =>"\[%{TIMESTAMP_ISO8601:timestamp}\]%{SPACE}\[%{DATA:Severity}\]%{SPACE}\[%{DATA:Plugin}\]%{SPACE}\[%{DATA:Servername}\](?<short_message>(.|\r|\n)*)"}
    }
} 
output {
  elasticsearch {
    hosts => ["localhost:9200"]
    index => "groklogs"
}
          stdout { codec => rubydebug }
}

myupdate.conf:

input {
    jdbc {
        jdbc_connection_string => "jdbc:sqlserver://mydb:1433;databasename=db01;integratedSecurity=true"
        jdbc_driver_class =>  "com.microsoft.sqlserver.jdbc.SQLServerDriver"
    jdbc_driver_library => "C:\Program Files\sqljdbc_6.2\enu\mssql-jdbc-6.2.2.jre8.jar"
        jdbc_user => nil
        statement => "SELECT * from agedata WHERE updated_on > :sql_last_value  ORDER BY updated_on"
    use_column_value =>true
        tracking_column =>updated_on
        tracking_column_type => "timestamp"
    }
}
output {
          elasticsearch { hosts => ["localhost:9200"] 
        index => "thisisit"
        action => update
            document_id => "%{id}"
            doc_as_upsert =>true}
          stdout { codec => rubydebug }
       }

Пожалуйста, помогите мне.

...