女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

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

科技綠洲 ? 來(lái)源:Python實(shí)用寶典 ? 作者:Python實(shí)用寶典 ? 2023-10-21 11:23 ? 次閱讀

我們用Python定時(shí)跑一些自動(dòng)化程序的時(shí)候會(huì)出現(xiàn)程序崩潰的情況。此時(shí)如果你本人不在電腦面前,或者沒(méi)有留意到程序的崩潰,沒(méi)有及時(shí)重新拉起程序,會(huì)造成或大或小的損失。

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

1.準(zhǔn)備

開(kāi)始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒(méi)有,可以訪問(wèn)這篇文章:超詳細(xì)Python安裝指南 進(jìn)行安裝。

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

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

請(qǐng)選擇以下任一種方式輸入命令安裝依賴

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

如果你出現(xiàn) “DLL load failed: 找不到指定的程序” 的報(bào)錯(cuò),請(qǐng)重新安裝pywin32:

pip install pywin32==223

2.編寫(xiě)自重啟配置

接下來(lái),你需要編寫(xiě)一個(gè)讓你的Python程序自動(dòng)運(yùn)行,遇到報(bào)錯(cuò)自動(dòng)重啟的配置:

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

[supervisorctl]

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

G:Anaconda3envstdx_easytraderpython.exe

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

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

此外,后面的三行是必須配置的,按我的默認(rèn)寫(xiě)法即可。

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

然后執(zhí)行以下命令啟動(dòng) supervisord:

supervisord -c D:CODEtdx_easytradersupervisord.conf

注意 -c 參數(shù)后就是你的 supervisord.conf 的絕對(duì)路徑。啟動(dòng)完畢顯示:

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 進(jìn)程已經(jīng)啟動(dòng),pid為28472。我命名為cancel的Python進(jìn)程也已經(jīng)啟動(dòng),pid為27220。我們?cè)谌蝿?wù)管理器中可以查看到這兩個(gè)進(jìn)程:

圖片

3.測(cè)試

接下來(lái)我們測(cè)試一下它能否自動(dòng)重啟,讓我們強(qiáng)殺 27220 這個(gè)進(jìn)程,觀察終端輸出:

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秒的時(shí)候 cancel 程序意外退出(exit status 1; not expected),然后supervisord重新幫我們拉起了一個(gè)cancel程序,pid為16640:

圖片

測(cè)試成功,程序成功自重啟。

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

圖片

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

[supervisord]
logfile = /tmp/supervisord.log
logfile_maxbytes = 50MB
logfile_backups=10
loglevel = info
pidfile = /tmp/supervisord.pid
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • WINDOWS
    +關(guān)注

    關(guān)注

    4

    文章

    3603

    瀏覽量

    90886
  • 程序
    +關(guān)注

    關(guān)注

    117

    文章

    3819

    瀏覽量

    82348
  • Supervisor
    +關(guān)注

    關(guān)注

    0

    文章

    54

    瀏覽量

    12800
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4823

    瀏覽量

    86110
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    FX2LP如何在不更改硬件的情況對(duì)其進(jìn)行重新編程?

    我正在使用 FX2LP/ CY7C68013A-128AXC設(shè)備(定制板),我有一些問(wèn)題需要您的幫助。 1如果我的 EEPROM 已經(jīng)有固件并且正在運(yùn)行,如何在不更改硬件的情況對(duì)其進(jìn)行重新
    發(fā)表于 05-06 11:16

    Windows 8.1中的安裝崩潰

    Lovis,該程序的工作方式與Ronja相同。另外值得報(bào)道的是,我還嘗試在Lovis上安裝ISE 10.1。這沒(méi)用。然后我嘗試簡(jiǎn)單地從Ronja復(fù)制文件,在Windows 7安裝它,然后啟動(dòng)'ISE
    發(fā)表于 12-06 10:36

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

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

    何在WINDOWS系統(tǒng)使用tensorflow來(lái)下圍棋呢

    1、如何在WINDOWS系統(tǒng)安裝tensorflow并使用tensorflow來(lái)下圍棋呢 tensorflow0.12版本支持windows,需要
    發(fā)表于 06-02 16:17

    有誰(shuí)知道wroom的開(kāi)發(fā)板版本如何在拉起捆扎針的情況將引導(dǎo)加載程序置于串行模式?

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

    有誰(shuí)知道wroom的開(kāi)發(fā)板版本如何在拉起捆扎針的情況將引導(dǎo)加載程序置于串行模式?

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

    Windows CEGPIO驅(qū)動(dòng)程序的設(shè)計(jì)與應(yīng)用

    Windows CE 流接口設(shè)備驅(qū)動(dòng)程序是一種基本的設(shè)備驅(qū)動(dòng)程序。本文以S3C2410 開(kāi)發(fā)板中的GPIO 流接口驅(qū)動(dòng)為例,說(shuō)明了驅(qū)動(dòng)程序所包含的函數(shù)以及如
    發(fā)表于 01-06 16:02 ?48次下載

    何在DOS安裝Windows Me

    何在DOS安裝Windows Me 一、準(zhǔn)備工作:1.WindowsMe(或98)啟動(dòng)盤(pán)一張。內(nèi)含format.com(硬盤(pán)分區(qū)格式化命令)。2.準(zhǔn)備好Microsoft Windo
    發(fā)表于 03-01 10:36 ?5936次閱讀

    微軟推出Outlook桌面崩潰修復(fù)程序

    Microsoft的Windows Outlook電子郵件應(yīng)用程序在啟動(dòng)時(shí)就開(kāi)始崩潰,今天全世界的許多用戶都在使用它。Office 365商業(yè)用戶報(bào)告說(shuō),Outlook似乎在最近更新之后啟動(dòng)了,然后立即
    的頭像 發(fā)表于 07-16 16:11 ?2838次閱讀

    何在Linux環(huán)境實(shí)現(xiàn)Python環(huán)境的搭建

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何在Linux環(huán)境實(shí)現(xiàn)Python環(huán)境的搭建。
    發(fā)表于 08-24 12:12 ?14次下載
    如<b class='flag-5'>何在</b>Linux環(huán)境<b class='flag-5'>下</b>實(shí)現(xiàn)<b class='flag-5'>Python</b>環(huán)境的搭建

    使用python開(kāi)發(fā)windows的應(yīng)用程序詳細(xì)說(shuō)明

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

    重新內(nèi)存分配的改變讓Firefox崩潰次數(shù)降低70%

    ,要了解為什么在 Windows 上運(yùn)行的應(yīng)用程序與其他操作系統(tǒng)相比更容易耗盡內(nèi)存產(chǎn)生崩潰,就必須了解 Windows 如何處理內(nèi)存。 所有
    的頭像 發(fā)表于 11-29 15:08 ?842次閱讀

    python調(diào)用windows命令

    Python是一種強(qiáng)大的編程語(yǔ)言,可以用于開(kāi)發(fā)各種不同類(lèi)型的應(yīng)用程序。其中一個(gè)常見(jiàn)的用途是使用Python調(diào)用Windows命令來(lái)執(zhí)行特定的任務(wù)。在本文中,我們將詳細(xì)討論如何使用
    的頭像 發(fā)表于 11-29 14:34 ?1323次閱讀

    如何使用linuxgdb來(lái)調(diào)試python程序

    如何使用linuxgdb來(lái)調(diào)試python程序? 在Linux,可以使用GDB(GNU調(diào)試器)來(lái)調(diào)試Python
    的頭像 發(fā)表于 01-31 10:41 ?3093次閱讀

    零基礎(chǔ)入門(mén):如何在樹(shù)莓派上編寫(xiě)和運(yùn)行Python程序

    在這篇文章中,我將為你簡(jiǎn)要介紹Python程序是什么、Python程序可以用來(lái)做什么,以及如何在RaspberryPi上編寫(xiě)和運(yùn)行一個(gè)簡(jiǎn)單的
    的頭像 發(fā)表于 03-25 09:27 ?452次閱讀
    零基礎(chǔ)入門(mén):如<b class='flag-5'>何在</b>樹(shù)莓派上編寫(xiě)和運(yùn)行<b class='flag-5'>Python</b><b class='flag-5'>程序</b>?