在生产环境中部署 Logstash

Deploy Logstash in production environment

大家好,我创建了一个 logstash 配置文件,每 5 分钟安排一次,它将数据从 MSSql 服务器传输到 Elasticsearch,我 运行 我的 logstash 应用程序使用 windows powershell 和以下命令 .\logstash-7.2.0\bin\logstash -f logstash.conf.txt

Logstash 配置

input {
jdbc {
jdbc_driver_library => ""
jdbc_driver_class => "com.microsoft.sqlserver.jdbc.SQLServerDriver"
jdbc_connection_string => "jdbc:sqlserver://xxxxxx\SQLEXPRESS:1433;databaseName=xxxx;"
jdbc_user => "xxxxx"
jdbc_password => "xxxx"
jdbc_paging_enabled => true
tracking_column => modified_date
use_column_value => true
clean_run => true
tracking_column_type => "timestamp"
schedule => "*/5 * * * * *"
statement => "SELECT * from [xxxxxxxx] where modified_date >:sql_last_value"
}
}

filter {
 mutate {
   remove_field => ["@version","@timestamp"]
 }
}

output {
elasticsearch {
hosts => "http://localhost:9200"
index => "employee"
document_type => "_doc"
document_id => "%{id}"

}
stdout { codec => rubydebug }
}

如何在生产环境部署同样的东西?因为在本地机器上我使用 windows powershell 来执行我的命令如何在生产环境中实现这个?

谁能指导如何在生产环境中将其部署为服务?

不确定我是否理解问题...您是否尝试在 Linux 生产服务器中部署相同的配置?

如果是这样,您应该更改 jdbc_driver_class,可能还更改 jdbc_connection_string 和主机参数,以匹配生产服务器。

另请查看以下问题: 它可能对你有帮助,虽然我说我不确定。

祝你好运! :-)