要監控LNMP(Linux, Nginx, MySQL, PHP)環境的運行狀態,可以采用以下幾種方法:
sudo systemctl status nginx
sudo systemctl status mysql
sudo systemctl status php-fpm
sudo tail -n 10 /var/log/nginx/error.log
sudo tail -n 10 /var/log/mysql/error.log
sudo tail -n 10 /var/log/php7.x/error.log
#!/bin/bash
# 獲取當前時間
echo "$(date +'%Y-%m-%d %H:%M:%S')"
# 檢查php-fpm服務是否運行
if ! netstat -an | grep php-cgi | wc -l; then
# 重啟php-fpm服務
/etc/init.d/php-fpm restart
# 寫入日志
echo "$(date +'%Y-%m-%d %H:%M:%S') php-fpm service is down... restart..." >> /home/checkfail-lnmp.log
fi
# 檢查mysql服務是否運行
if ! netstat -anpt | grep mysqld | awk '{print $4}' | awk -F: '{print $2}' | wc -l; then
# 重啟mysql服務
/etc/init.d/mysql restart
# 寫入日志
echo "$(date +'%Y-%m-%d %H:%M:%S') mysqld service is down... restart..." >> /home/checkfail-lnmp.log
fi
# 檢查nginx服務是否運行
if ! netstat -anpt | grep nginx | awk '{print $4}' | awk -F: '{print $2}' | wc -l; then
# 重啟nginx服務
/etc/init.d/nginx restart
# 寫入日志
echo "$(date +'%Y-%m-%d %H:%M:%S') nginx service is down... restart..." >> /home/checkfail-lnmp.log
fi
為腳本添加執行權限,并將其添加到crontab中,可以每分鐘檢查一次服務狀態:
通過上述方法,可以有效地監控LNMP環境的運行狀態,確保服務的穩定性和可靠性。