Filebeat (7.3.2)启动脚本

 

版本一:

cat << EOF >/etc/init.d/filebeat
#!/bin/bash
#chkconfig: 2345 22 80
#description: Filebeat Service
#Author:alisa
agent="/opt/iDataFusion/esuser/filebeat/filebeat"
args="-c /opt/iDataFusion/esuser/filebeat/filebeat.yml -path.home /opt/iDataFusion/esuser/filebeat -path.config /opt/iDataFusion/esuser/filebeat -path.data /data01/filebeat/data -path.logs /var/log/iDataFusion/filebeat"

test_args="-e"
#test_args="-e -configtest" 

#-configtest(Test configuration and exit)参数为filebeat-5.4版本中,在7版本中去除了该参数

test() {
\$agent \$args
#\$agent \$args \$test_args
}
FILEBEAT_PID=`ps -ef |grep /data01/filebeat/data |grep -v grep |awk '{print \$2}'`

start() {
if [ ! "\$FILEBEAT_PID" ];then
echo "Starting Filebeat: "
test
if [ \$? -ne 0 ]; then
echo
exit 1
fi
\$agent \$args &
if [ \$? == '0' ];then
echo "Filebeat service is running !"

else
echo "start Filebeat failed"
fi
else
echo "Filebeat service is still running!"
exit
fi
}
stop() {
echo -n \$"Stopping Filebeat: "

if [ ! "\$FILEBEAT_PID" ];then
echo "Filebeat is not running"
else
kill \$FILEBEAT_PID
echo "stop Filebeat ok"
fi
}
restart() {
stop
start
}
status(){

if [ ! "\$FILEBEAT_PID" ];then
echo "Filebeat is not running"
else
echo "Filebeat is running"
fi
}
case "\$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
status)
status
;;
*)
echo \$"Usage: \$0 {start|stop|restart|status}"
exit 1
esac
EOF
 

版本二:

cat /usr/lib/systemd/system/filebeat.service 
[Unit]
Description=Filebeat
After=network.target
 
[Service]
Type=simple
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=filebeat
User=root
WorkingDirectory=/opt/iDataFusion/esuser/filebeat
ExecStart=/opt/iDataFusion/esuser/filebeat/filebeat -e -c /opt/iDataFusion/esuser/filebeat/filebeat.yml
KillMode=process
TimeoutStopSec=60
Restart=on-failure
RestartSec=5
RemainAfterExit=no
 
[Install]
WantedBy=multi-user.target

 

posted @ 2021-07-22 16:33  alisapine  阅读(365)  评论(0编辑  收藏  举报