process_mq.bat 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set "crawler=%1"
  4. set "path=%2"
  5. set "log_type=%3"
  6. set "env=%4"
  7. if "%env%" == "dev" (
  8. set "piaoquan_crawler_dir=C:\Users\tzld\Desktop\piaoquan_crawler\"
  9. set "python=python.exe"
  10. set "log_path=!piaoquan_crawler_dir!main\main_logs\process-mq-!date:~0,4!-!date:~5,2!-!date:~8,2!.log"
  11. ) else if "%crawler%" == "zfqz" (
  12. set "piaoquan_crawler_dir=C:\Users\piaoquan\Desktop\piaoquan_crawler\"
  13. set "python=python.exe"
  14. set "log_path=!piaoquan_crawler_dir!main\main_logs\process-mq-!date:~0,4!-!date:~5,2!-!date:~8,2!.log"
  15. ) else (
  16. set "piaoquan_crawler_dir=C:\root\piaoquan_crawler\"
  17. set "python=python.exe"
  18. set "log_path=!piaoquan_crawler_dir!main\main_logs\process-mq-!date:~0,4!-!date:~5,2!-!date:~8,2!.log"
  19. )
  20. echo run_!crawler!_!log_type!.py
  21. echo topic:!crawler!_!log_type!_!env!
  22. echo GID:!crawler!_!log_type!_!env!
  23. set "time=!time!"
  24. echo !time! 开始监测爬虫进程状态 >> !log_path!
  25. echo !time! 开始更新代码 >> !log_path!
  26. cd !piaoquan_crawler_dir! && git pull origin master --force
  27. echo !time! 代码更新完成! >> !log_path!
  28. echo !time! 正在监测 !crawler!_!log_type! 进程状态 >> !log_path!
  29. tasklist /v | findstr "run_!crawler!_!log_type!.py" | findstr /v "findstr"
  30. if "!errorlevel!" == "1" (
  31. echo !time! 异常停止,正在重启! >> !log_path!
  32. cd !piaoquan_crawler_dir! && start "Crawler" "!python!" -u !path!\!path!_main\run_!crawler!_!log_type!.py --log_type="!log_type!" --crawler="!path!" --topic_name="!crawler!_!log_type!_!env!" --group_id="!crawler!_!log_type!_!env!" --env="!env!" >> !path!\logs\!log_type!-shell.log 2>&1
  33. echo !time! 重启完成! >> !log_path!
  34. ) else (
  35. echo !time! !crawler!_!log_type! 进程状态正常 >> !log_path!
  36. )
  37. echo !time! 开始清理 10 天前的日志文件 >> !log_path!
  38. forfiles /p !piaoquan_crawler_dir!main\main_logs\ /m *.log /d -10 /c "cmd /c del @file"
  39. echo !time! 日志文件清理完毕 >> !log_path!
  40. exit /b 0