初始化提交

This commit is contained in:
2025-10-07 15:58:15 +08:00
commit 0e593caf99
378 changed files with 77890 additions and 0 deletions

View File

@@ -0,0 +1,73 @@
#!/bin/bash
# 配置区域
PROJECT_DIR="/data/webapps/yt_data_update"
SCRIPT_NAME="update_yt.py"
START_SCRIPT="$PROJECT_DIR/run_update_yt_day.sh"
LOG_DIR="$PROJECT_DIR/logs"
TODAY=$(date +%F)
LOG_FILE="$LOG_DIR/monitor/monitor_day_$TODAY.log"
MAX_RETRY=3
SLEEP_BETWEEN_CHECK=10
# 保证日志目录存在
mkdir -p "$LOG_DIR"
# 计数器文件
COUNT_FILE="$LOG_DIR/monitor/monitor_day_count_$TODAY.txt"
[ ! -f "$COUNT_FILE" ] && echo 0 > "$COUNT_FILE"
COUNT=$(cat "$COUNT_FILE")
COUNT=$((COUNT + 1))
echo $COUNT > "$COUNT_FILE"
log() {
echo "$(date '+%F %T') [第 $COUNT 次执行检查] $1" >> "$LOG_FILE"
}
# 检查是否运行: 匹配到进程:返回状态码 0匹配不到进程:返回退出状态码1
is_running() {
pgrep -f "python $SCRIPT_NAME" > /dev/null 2>&1
return $?
}
# 尝试启动
start_script() {
log "尝试启动脚本..."
bash "$START_SCRIPT"
sleep 1
# 再次检测
if is_running; then
PID=$(pgrep -f "python $SCRIPT_NAME" | head -n 1)
echo "$PID" > "$PROJECT_DIR/update_yt_day.pid"
log "启动成功PID=$PID"
return 0
else
log "启动失败"
return 1
fi
}
# 主流程
if is_running; then
PID=$(pgrep -f "python $SCRIPT_NAME" | head -n 1)
log "脚本已在运行中PID=$PID"
exit 0
fi
log "检测到脚本未运行,开始重启流程..."
RETRY=0
while [ $RETRY -lt $MAX_RETRY ]; do
start_script
sleep $SLEEP_BETWEEN_CHECK
if is_running; then
log "$((RETRY+1)) 次尝试启动成功。"
exit 0
else
log "$((RETRY+1)) 次尝试启动失败。"
fi
RETRY=$((RETRY + 1))
done
log "连续 $MAX_RETRY 次重启失败,放弃本轮重试。"
exit 1

View File

@@ -0,0 +1,73 @@
#!/bin/bash
# 配置区域
PROJECT_DIR="/data/webapps/yt_data_update"
SCRIPT_NAME="update_yt_week.py"
START_SCRIPT="$PROJECT_DIR/run_update_yt_week.sh"
LOG_DIR="$PROJECT_DIR/logs"
TODAY=$(date +%F)
LOG_FILE="$LOG_DIR/monitor/monitor_$TODAY.log"
MAX_RETRY=3
SLEEP_BETWEEN_CHECK=10
# 保证日志目录存在
mkdir -p "$LOG_DIR"
# 计数器文件
COUNT_FILE="$LOG_DIR/monitor/monitor_count_$TODAY.txt"
[ ! -f "$COUNT_FILE" ] && echo 0 > "$COUNT_FILE"
COUNT=$(cat "$COUNT_FILE")
COUNT=$((COUNT + 1))
echo $COUNT > "$COUNT_FILE"
log() {
echo "$(date '+%F %T') [第 $COUNT 次执行检查] $1" >> "$LOG_FILE"
}
# 检查是否运行: 匹配到进程:返回状态码 0匹配不到进程:返回退出状态码1
is_running() {
pgrep -f "python $SCRIPT_NAME" > /dev/null 2>&1
return $?
}
# 尝试启动
start_script() {
log "尝试启动脚本..."
bash "$START_SCRIPT"
sleep 1
# 再次检测
if is_running; then
PID=$(pgrep -f "python $SCRIPT_NAME" | head -n 1)
echo "$PID" > "$PROJECT_DIR/update_yt_week.pid"
log "启动成功PID=$PID"
return 0
else
log "启动失败"
return 1
fi
}
# 主流程
if is_running; then
PID=$(pgrep -f "python $SCRIPT_NAME" | head -n 1)
log "脚本已在运行中PID=$PID"
exit 0
fi
log "检测到脚本未运行,开始重启流程..."
RETRY=0
while [ $RETRY -lt $MAX_RETRY ]; do
start_script
sleep $SLEEP_BETWEEN_CHECK
if is_running; then
log "$((RETRY+1)) 次尝试启动成功。"
exit 0
else
log "$((RETRY+1)) 次尝试启动失败。"
fi
RETRY=$((RETRY + 1))
done
log "连续 $MAX_RETRY 次重启失败,放弃本轮重试。"
exit 1

View File

@@ -0,0 +1,8 @@
#!/bin/bash
source ~/.bashrc
conda activate py310
cd /data/webapps/yt_data_update/
pip install -r requirements.txt
python update_yt.py >> logs/yt_up_date_day_outup/output_day_$(date +%F).log 2>&1 &

View File

@@ -0,0 +1,8 @@
#!/bin/bash
source ~/.bashrc
conda activate py310
cd /data/webapps/yt_data_update/
pip install -r requirements.txt
python update_yt_week.py >> logs/yt_up_date_week_outup/output_week_$(date +%F).log 2>&1 &