ElasticSearch Logstash RPM版 配置文件尋找過程

使用 systemctl start logstash.service方式啓動Logstash,尋找Logstash配置文件的過程,如下:

  1. 使用systemctl start logstash.service啓動Logstash時,
  2. 先去尋找/etc/systemd/system/logstash.service;
  3. 再去尋找/etc/default/logstash
  4. 最後去這裏查找配置文件 /etc/logstash

感覺上面分析的很對,但是我直接systemctl start logstash.service能啓動Logstash,但是數據無法發送到ElasticSearch,提示無法尋找配置文件。Fuck!!!

[qingyuan@centos bin]$ systemctl status logstash.service
● logstash.service - logstash
   Loaded: loaded (/etc/systemd/system/logstash.service; disabled; vendor preset: disabled)
   Active: active (running) since Thu 2019-12-12 15:00:18 CST; 9s ago
 Main PID: 31291 (java)
    Tasks: 17
   CGroup: /system.slice/logstash.service
           └─31291 /bin/java -Xms1g -Xmx1g -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Djava.awt.headless=true -Dfile.encoding=UTF-8...

 

/etc/systemd/system/logstash.service

		[Unit]
		Description=logstash

		[Service]
		Type=simple
		User=logstash
		Group=logstash
		# Load env vars from /etc/default/ and /etc/sysconfig/ if they exist.
		# Prefixing the path with '-' makes it try to load, but if the file doesn't
		# exist, it continues onward.
		EnvironmentFile=-/etc/default/logstash
		EnvironmentFile=-/etc/sysconfig/logstash
		ExecStart=/usr/share/logstash/bin/logstash "--path.settings" "/etc/logstash"
		Restart=always
		WorkingDirectory=/
		Nice=19
		LimitNOFILE=16384

		[Install]
		WantedBy=multi-user.target

 

/etc/default/logstash

		[root@centos default]# cat logstash
		LS_HOME="/usr/share/logstash"
		LS_SETTINGS_DIR="/etc/logstash"
		LS_PIDFILE="/var/run/logstash.pid"
		LS_USER="logstash"
		LS_GROUP="logstash"
		LS_GC_LOG_FILE="/var/log/logstash/gc.log"
		LS_OPEN_FILES="16384"
		LS_NICE="19"
		SERVICE_NAME="logstash"
		SERVICE_DESCRIPTION="logstash"

 

 

我只好如下操作

使用./logstash -f /etc/logstash/logstash.conf 可以啓動,可以發送到elasticsearch;但是缺少未指定的配置文件:

WARNING: Could not find logstash.yml which is typically located in $LS_HOME/config or /etc/logstash. You can specify the path using --path.settings. Continuing using the defaults
					
Could not find log4j2 configuration at path /usr/share/logstash/config/log4j2.properties. Using default config which logs errors to the console
					
ERROR: Failed to read pipelines yaml file. Location: /usr/share/logstash/config/pipelines.yml

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章