色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何在Windows下使用 Supervisor 重新拉起崩潰的Python程序

科技綠洲 ? 來源:Python實用寶典 ? 作者:Python實用寶典 ? 2023-10-21 11:23 ? 次閱讀

我們用Python定時跑一些自動化程序的時候會出現程序崩潰的情況。此時如果你本人不在電腦面前,或者沒有留意到程序的崩潰,沒有及時重新拉起程序,會造成或大或小的損失。

本文將教你如何在 Windows 下使用 Supervisor 重新拉起崩潰的Python程序。

1.準備

開始之前,你要確保Python和pip已經成功安裝在電腦上,如果沒有,可以訪問這篇文章:超詳細Python安裝指南 進行安裝。

**(可選1) **如果你用Python的目的是數據分析,可以直接安裝Anaconda:Python數據分析與挖掘好幫手—Anaconda,它內置了Python和pip.

**(可選2) **此外,推薦大家用VSCode編輯器,它有許多的優點:Python 編程的最好搭檔—VSCode 詳細指南

請選擇以下任一種方式輸入命令安裝依賴

  1. Windows 環境 打開 Cmd (開始-運行-CMD)。
  2. MacOS 環境 打開 Terminal (command+空格輸入Terminal)。
  3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.
pip install supervisor-win

如果你出現 “DLL load failed: 找不到指定的程序” 的報錯,請重新安裝pywin32:

pip install pywin32==223

2.編寫自重啟配置

接下來,你需要編寫一個讓你的Python程序自動運行,遇到報錯自動重啟的配置:

[program:cancel]
command=G:Anaconda3envs	dx_easytraderpython.exe D://CODE//tdx_easytrader//dataserver.py
    
[supervisord]
nodaemon=true

[supervisorctl]

前兩行就是你的程序運行命令,在上面的例子中,program: 后面的關鍵詞是你自定義的程序名,我的Python位于:

G:Anaconda3envstdx_easytraderpython.exe

我想要自重啟的腳本位于:

D://CODE//tdx_easytrader//dataserver.py

此外,后面的三行是必須配置的,按我的默認寫法即可。

編寫完成后將配置命名為 supervisord.conf 保存于任何地方,可以是項目目錄下,也可以是一個重要的配置目錄文件夾。

然后執行以下命令啟動 supervisord:

supervisord -c D:CODEtdx_easytradersupervisord.conf

注意 -c 參數后就是你的 supervisord.conf 的絕對路徑。啟動完畢顯示:

2022-06-27 19:58:54,809 INFO process group added: 'cancel'
2022-06-27 19:58:54,810 INFO supervisord started with pid 28472
2022-06-27 19:58:54,815 INFO Spawned: 'cancel' with pid 27220
2022-06-27 19:58:55,830 INFO success: cancel entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)

意思是,supervisord 進程已經啟動,pid為28472。我命名為cancel的Python進程也已經啟動,pid為27220。我們在任務管理器中可以查看到這兩個進程:

圖片

3.測試

接下來我們測試一下它能否自動重啟,讓我們強殺 27220 這個進程,觀察終端輸出:

2022-06-27 19:58:54,815 INFO Spawned: 'cancel' with pid 27220
2022-06-27 19:58:55,830 INFO success: cancel entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2022-06-27 20:02:58,077 INFO exited: cancel (exit status 1; not expected)
2022-06-27 20:02:58,590 INFO Spawned: 'cancel' with pid 16640
2022-06-27 20:02:59,603 INFO success: cancel entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)

可以看到, 20:02:58秒的時候 cancel 程序意外退出(exit status 1; not expected),然后supervisord重新幫我們拉起了一個cancel程序,pid為16640:

圖片

測試成功,程序成功自重啟。

Supervisor不僅會把日志輸出到終端中,在你運行命令的目錄中,它還會生成supervisord.log, 這里面也保存了所有運行日志:

圖片

當然,在上方我們supervisord的配置里,你也能配置日志輸出位置、最大大小、分片數量等:

[supervisord]
logfile = /tmp/supervisord.log
logfile_maxbytes = 50MB
logfile_backups=10
loglevel = info
pidfile = /tmp/supervisord.pid
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • WINDOWS
    +關注

    關注

    3

    文章

    3541

    瀏覽量

    88626
  • 程序
    +關注

    關注

    117

    文章

    3785

    瀏覽量

    81004
  • Supervisor
    +關注

    關注

    0

    文章

    54

    瀏覽量

    12480
  • python
    +關注

    關注

    56

    文章

    4792

    瀏覽量

    84628
收藏 人收藏

    評論

    相關推薦

    windows7怎樣安裝whl文件(python

    windows7怎樣安裝whl文件(python
    發表于 01-23 13:51

    Windows 8.1中的安裝崩潰

    Lovis,該程序的工作方式與Ronja相同。另外值得報道的是,我還嘗試在Lovis上安裝ISE 10.1。這沒用。然后我嘗試簡單地從Ronja復制文件,在Windows 7安裝它,然后啟動'ISE
    發表于 12-06 10:36

    windows安裝python 在linux安裝python 在masOS安裝python

    、Brython、Pyston等版本,有興趣的讀者可以自行了解。Windows環境可以在Python官方網站下載到PythonWindows安裝
    發表于 06-11 16:59

    何在WINDOWS系統使用tensorflow來下圍棋呢

    1、如何在WINDOWS系統安裝tensorflow并使用tensorflow來下圍棋呢 tensorflow0.12版本支持windows,需要
    發表于 06-02 16:17

    有誰知道wroom的開發板版本如何在拉起捆扎針的情況將引導加載程序置于串行模式?

    不需要拉起 GPIO2)有誰知道 wroom 的開發板版本如何在拉起捆扎針的情況將引導加載程序置于串行模式?我是否必須編寫自定義引導加載
    發表于 03-01 07:17

    有誰知道wroom的開發板版本如何在拉起捆扎針的情況將引導加載程序置于串行模式?

    不需要拉起 GPIO2)有誰知道 wroom 的開發板版本如何在拉起捆扎針的情況將引導加載程序置于串行模式?我是否必須編寫自定義引導加載
    發表于 04-13 07:00

    Windows CEGPIO驅動程序的設計與應用

    Windows CE 流接口設備驅動程序是一種基本的設備驅動程序。本文以S3C2410 開發板中的GPIO 流接口驅動為例,說明了驅動程序所包含的函數以及如
    發表于 01-06 16:02 ?48次下載

    何在DOS安裝Windows Me

    何在DOS安裝Windows Me 一、準備工作:1.WindowsMe(或98)啟動盤一張。內含format.com(硬盤分區格式化命令)。2.準備好Microsoft Windo
    發表于 03-01 10:36 ?5771次閱讀

    微軟推出Outlook桌面崩潰修復程序

    Microsoft的Windows Outlook電子郵件應用程序在啟動時就開始崩潰,今天全世界的許多用戶都在使用它。Office 365商業用戶報告說,Outlook似乎在最近更新之后啟動了,然后立即
    的頭像 發表于 07-16 16:11 ?2723次閱讀

    何在Linux環境實現Python環境的搭建

    本文檔的主要內容詳細介紹的是如何在Linux環境實現Python環境的搭建。
    發表于 08-24 12:12 ?14次下載
    如<b class='flag-5'>何在</b>Linux環境<b class='flag-5'>下</b>實現<b class='flag-5'>Python</b>環境的搭建

    使用python開發windows的應用程序詳細說明

    本人以前一直用的是C++,MFC ,畢業到了公司以后,公司用python 做流程,我順便最近研究了一python 開發windows 應用程序
    發表于 08-25 15:57 ?9次下載
    使用<b class='flag-5'>python</b>開發<b class='flag-5'>windows</b>的應用<b class='flag-5'>程序</b>詳細說明

    何在python代碼中使用HTTP代理IP

    何在python代碼中使用HTTP代理IP。
    的頭像 發表于 08-04 15:46 ?1275次閱讀

    重新內存分配的改變讓Firefox崩潰次數降低70%

    ,要了解為什么在 Windows 上運行的應用程序與其他操作系統相比更容易耗盡內存產生崩潰,就必須了解 Windows 如何處理內存。 所有
    的頭像 發表于 11-29 15:08 ?698次閱讀

    python調用windows命令

    Python是一種強大的編程語言,可以用于開發各種不同類型的應用程序。其中一個常見的用途是使用Python調用Windows命令來執行特定的任務。在本文中,我們將詳細討論如何使用
    的頭像 發表于 11-29 14:34 ?1045次閱讀

    如何使用linuxgdb來調試python程序

    如何使用linuxgdb來調試python程序? 在Linux,可以使用GDB(GNU調試器)來調試Python
    的頭像 發表于 01-31 10:41 ?2578次閱讀
    主站蜘蛛池模板: 福利片福利一区二区三区| 国产 亚洲 日韩 欧美 在线观看| 成年免费三级视频| 国产精一品亚洲二区在线播放| 久久成人免费观看全部免费| 欧美激情精品久久久久久不卡| 香蕉在线播放| 91亚洲精品| 国产午夜伦鲁鲁| 欧美xxxav| 亚洲欧美人成视频在线| yellow日本动漫观看免费| 娇喘嗯嗯 轻点啊视频福利| 欧美在线看欧美视频免费| 亚洲精品偷拍影视在线观看| www.x日本| 久久久精品久久| 哇嘎在线精品视频在线观看| 51国产偷自视频在线视频播放| 国产精品青青草原app大全| 美女打开双腿扒开屁股男生| 午夜看片网| xx在线观看| 久久99视频免费| 四虎影视国产精品亚洲精品| 99re久久热在线播放8| 国内精品偷拍在线观看| 日产久久视频| 中文字幕午夜福利片| 国产永不无码精品AV永久| 青青伊人网| 78m成人亚洲| 九九久久国产精品大片| 同时被两个男人轮流舔| 9久久99久久久精品齐齐综合色圆| 精品午夜久久福利大片免费 | 精品国产自在现线拍400部| 日韩大胆视频| 99国产精品人妻无码免费| 金瓶梅 快播| 国产精品免费大片一区二区|