filebeat的服务启停
filebeat的启动通过二进制文件来实现,如:
./filebeat -e -c filebeat.yml.
注:-e指定filebeat.yml配置文件
实现后台启动可以通过nohup命令实现,如:
nohup ./filebeat -e -c filebeat.yml >/dev/null 2>&1 &)
注:将所有标准输出及标准错误输出到/dev/null空设备,即没有任何输出
但filebeat的进程依赖会话,当启动filebeat的ssh断开后,filebeat会自动停止,
所以要使用特殊命令保证filebeat的运行,如下:
(nohup ./filebeat -e -c filebeat.yml >/dev/null 2>&1 &)
注:功能:将一个或多个命名包含在“()”中就能让这些命令在子 shell 中运行
进程的父ID(PPID)是init而不是当前终端的进程 ID,因而关闭终端无任何影响。
停止服务,杀死filebeat的进程文章来源:https://www.toymoban.com/news/detail-504402.html
ps -ef |grep filebeat
kill -9 进程号
注:可使用 ps -ef|grep filebeat|awk -F ' ' '{print $2}' 杀死进程
扩展--shell文件
shell文件实现的filebeat启停服务:文章来源地址https://www.toymoban.com/news/detail-504402.html
#!/bin/bash
#current_path=`pwd`
case "`uname`" in
Linux)
bin_absolute_path=$(readlink -f $(dirname $0))
;;
*)
bin_absolute_path=`cd $(dirname $0);pwd`
;;
esac
PRGDIR=`dirname "$PRG"`
FILEBEAT_HOME=$(cd $(dirname $0)/ && pwd)
fileName="script-dt-log.yml"
logName="script.log"
#echo $FILEBEAT_HOME
filebeatNum=`ps -ef|grep filebeat|grep $fileName|grep iotplatform|wc -l`
function start(){
if [ $filebeatNum -eq 0 ];then
echo "start filebeat..."
(nohup $FILEBEAT_HOME/filebeat -c $FILEBEAT_HOME/$fileName > $FILEBEAT_HOME/$logName 2>&1 &)
else
echo "filebeat already starting"
fi
}
function stop(){
if [ $filebeatNum -gt 0 ];then
echo "stop filebeat..."
ps -ef|grep filebeat|grep $fileName|grep iotplatform|awk -F " " '{print $2}'|xargs kill
else
echo "filebeat is not running"
fi
}
function status(){
if [ $filebeatNum -gt 0 ];then
echo "filebeat is starting"
elif [ $filebeatNum -eq 0 ];then
echo "filebeat is not running"
fi
}
if [ "$#" == 0 ]
then
echo "INFO:{start|stop|status}"
fi
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status
;;
*)
;;
esac
到了这里,关于filebeat服务启停的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!