run_monitor.sh 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. #!/bin/bash
  2. path=$1 # 爬虫路径
  3. log_type=$2 # 爬虫策略
  4. crawler=$3 # 哪款爬虫
  5. env=$4 # 环境
  6. if [ ${env} = "dev" ];then
  7. piaoquan_crawler_dir=/Users/wangkun/Desktop/crawler/piaoquan_crawler/
  8. profile_path=/etc/profile
  9. python=python3
  10. log_path=${piaoquan_crawler_dir}monitor/logs/$(date +%Y-%m-%d)-shell.log
  11. else
  12. piaoquan_crawler_dir=/root/piaoquan_crawler/
  13. profile_path=/etc/profile
  14. python=python3
  15. log_path=${piaoquan_crawler_dir}monitor/logs/$(date +%Y-%m-%d)-shell.log
  16. fi
  17. echo "开始..." >> ${log_path}
  18. # ====================进程心跳检测====================
  19. echo "$(date "+%Y-%m-%d %H:%M:%S") 正在监测 run_cpu_memory 进程状态" >> ${log_path}
  20. if pgrep -f "run_cpu_memory.py" >/dev/null; then
  21. echo "$(date "+%Y-%m-%d %H:%M:%S") run_cpu_memory 进程状态正常。" >> ${log_path}
  22. else
  23. echo "$(date "+%Y-%m-%d_%H:%M:%S") 未运行, 正在启动..." >> ${log_path}
  24. cd ${piaoquan_crawler_dir} && nohup ${python} -u ${path} --log_type="${log_type}" --crawler="${crawler}" --env="${env}" >> ${log_path} &
  25. echo "$(date "+%Y-%m-%d %H:%M:%S") 启动完成!" >> ${log_path}
  26. fi
  27. # ===================================================
  28. # 删除日志
  29. echo "$(date "+%Y-%m-%d %H:%M:%S") 开始清理 10 天前的日志文件" >> ${log_path}
  30. find ${piaoquan_crawler_dir}monitor/logs/ -mtime +10 -name "*.log" -exec rm -rf {} \;
  31. echo "$(date "+%Y-%m-%d %H:%M:%S") 日志文件清理完毕" >> ${log_path}
  32. exit 0