[shell]服务器监控脚本

#!/bin/bash

# 定义项目的 URL
URL="http://127.0.0.1:8080/swagger-ui/index.html"

# 发送 HTTP 请求检测项目是否正常运行
response=$(curl -m 10  -s  -o /dev/null -w "%{http_code}" $URL)

echo $response

current_dir=$(pwd)
echo "$current_dir"
echo "切换到工程目录"
cd /root/campus/app
pro_dir=$(pwd)
echo "工作目录:$pro_dir"
echo "切换到工程目录"

# 检查 HTTP 响应码
if [ $response -eq 200 ]; then
    suc_time=$(date +"%Y-%m-%d %H:%M:%S")
    echo "项目正常运行at: $suc_time" >> success.log
else
    echo "项目宕机,执行重启操作"
    task=$(ps -ef | grep java |  awk '{print $2}' | xargs kill -9)

    echo "$task"
    restart_time=$(date +"%Y-%m-%d %H:%M:%S")

    # 追加重启时间到 restart.txt 文件
    echo "$restart_time" >> restart.txt
    nohup java -Xms4096m -Xmx4096m -XX:+HeapDumpOnOutOfMemoryError  -Dspring.profiles.active=prod -jar starter-0.0.1-SNAPSHOT.jar &> /dev/null &
    res=$?
    echo "重启结果$res" >> restart.txt

fi


你可能感兴趣的:(Java探索者之路,服务器,运维)