worklog/scripts/status.sh
zhangjf 814265d88e refactor: 重构项目目录结构和打包配置
1. 配置文件不包含 *example 文件
2. scripts 目录迁移到项目根目录
3. env.properties 迁移到 scripts 目录
4. MAIN_CLASS 参数迁移到 service.properties
5. assembly.xml 更新脚本和配置文件路径
6. 添加前端打包脚本:
   - build-web.sh: 管理后台打包
   - build-mobile.sh: 移动端H5打包
   - build-all.sh: 全量打包
7. 更新 .gitignore 忽略配置
2026-02-24 18:28:04 +08:00

75 lines
2.0 KiB
Bash
Executable File

#!/bin/bash
# ====================================================
# 工作日志服务平台 - 应用状态查看脚本
# ====================================================
# 应用配置
APP_NAME="worklog-api"
APP_HOME="/opt/worklog/${APP_NAME}"
PID_FILE="${APP_HOME}/${APP_NAME}.pid"
# 颜色输出
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color
echo "========================================"
echo "应用状态查看: ${APP_NAME}"
echo "========================================"
# 检查 PID 文件是否存在
if [ ! -f "${PID_FILE}" ]; then
echo -e "${RED}[未运行]${NC} 未找到 PID 文件,应用可能未启动"
exit 1
fi
# 读取 PID
PID=$(cat "${PID_FILE}")
# 检查进程是否存在
if ! ps -p ${PID} > /dev/null 2>&1; then
echo -e "${RED}[异常]${NC} PID 文件存在但进程不存在 (PID: ${PID})"
echo "建议:执行 stop.sh 清理残留文件后重新启动"
exit 1
fi
# 应用正在运行,显示详细信息
echo -e "${GREEN}[运行中]${NC} 应用正在运行"
echo ""
echo "进程信息:"
echo " PID: ${PID}"
echo " 启动时间: $(ps -p ${PID} -o lstart=)"
echo " 运行时长: $(ps -p ${PID} -o etime=)"
echo " CPU 占用: $(ps -p ${PID} -o %cpu=)%"
echo " 内存占用: $(ps -p ${PID} -o %mem=)%"
echo ""
# 显示端口监听情况
echo "端口监听:"
netstat -tlnp 2>/dev/null | grep ${PID} | awk '{print " " $4}' || \
ss -tlnp 2>/dev/null | grep ${PID} | awk '{print " " $5}'
echo ""
# 显示最近日志
LOG_DIR="${APP_HOME}/logs"
if [ -d "${LOG_DIR}" ]; then
echo "最近日志 (最后 10 行):"
echo "----------------------------------------"
if [ -f "${LOG_DIR}/app.log" ]; then
tail -n 10 "${LOG_DIR}/app.log"
else
echo " 未找到日志文件"
fi
else
echo "日志目录不存在: ${LOG_DIR}"
fi
echo ""
echo "========================================"
echo "查看实时日志: tail -f ${LOG_DIR}/app.log"
echo "查看 SQL 日志: tail -f ${LOG_DIR}/sql.log"
echo "========================================"
exit 0