成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Healthchecks — 監(jiān)控服務(wù)器Cron定時任務(wù)的神器

開發(fā) 后端
現(xiàn)在有一個非常方便的開源Django項目能在這些Crontab失效的時候通知你,它就是healthchecks。

在運維服務(wù)器的時候經(jīng)常會用到一些Crontab任務(wù)。

當你的Crontab中的任務(wù)數(shù)超過10個的時候,你會發(fā)現(xiàn)這些任務(wù)管理起來非常困難。

尤其是當這些Cron任務(wù)執(zhí)行失敗的時候,比如 Python 實用寶典網(wǎng) 每個月初都會執(zhí)行一次https證書刷新,有一次協(xié)議更新之后,我的腳本失效了三個月,導(dǎo)致證書過期時網(wǎng)站宕機了一天,直到我發(fā)現(xiàn)并修復(fù)了這個問題。

這就是Crontab任務(wù)的一個劣勢:沒有方便的回調(diào)功能。

不過,現(xiàn)在有一個非常方便的開源Django項目能在這些Crontab失效的時候通知你,它就是healthchecks。

它通過一個回調(diào)接口判斷你的Crontab任務(wù)有沒有順利執(zhí)行。

比如說你有一個python腳本定時執(zhí)行,healthchecks給定的回調(diào)URL是:

http://localhost:8000/ping/880cb4d

在配置Crontab腳本的時候,就需要這么寫:

8 6 * * * python /home/user/test.py && curl -fsS -m 10 --retry 5 -o /dev/null http://localhost:8000/ping/880cb4d2

如果未按時調(diào)用回調(diào)接口,healthchecks將會通過郵件等通知方式告警。

那么這個“未按時”能否設(shè)定寬限呢?比如我有個任務(wù)要跑1個小時左右,那么這個任務(wù)應(yīng)該是預(yù)計在一個半小時內(nèi)調(diào)用(Ping)回調(diào)接口,超過一個半小時如果沒有調(diào)用回調(diào)接口則告警。答案是肯定的。

上圖中Period指的是兩次Ping之間的時間間隔。下方Grace表示“寬限期”,自從上次Ping以來的時間已超過Period+Grace則會發(fā)送告警通知。

如果你用不習(xí)慣這種可視化的選擇器,它還提供了Crontab表達式給你定義Period和Grace:

真乃神器啊!它支持的通知方式如下:

國內(nèi)用戶可能一般只會用到Email和Teams,高級點的用戶可能會用到IFTTT的Webhooks和普羅米修斯。總之,按你的愛好來就行。

下面教大家如何在本地搭建這個項目:

1. 下載項目

使用Git工具克隆該項目:

git clone https://github.com/healthchecks/healthchecks

如果你訪問不了github,可在【Python 實用寶典】公眾號后臺回復(fù) healthchecks 下載完整源代碼

2. 創(chuàng)建虛擬環(huán)境

推薦使用Python 3.6+,如果你有conda,那就非常方便了,創(chuàng)建healthchecks虛擬環(huán)境:

conda create -n healthchecks python=3.6
activate healthchecks

如果你沒有conda,你需要先安裝Python3.6,然后使用pip安裝virtualenv,在終端輸入以下命令創(chuàng)建healthchecks虛擬環(huán)境:

python3 -m venv healthchecks
source healthchecks/bin/activate

不同系統(tǒng)中命令可能不太一樣,遇到問題多利用搜索引擎查詢就好了。

3. 安裝依賴

進入到上述創(chuàng)建好的虛擬環(huán)境后,cd進入項目根目錄,輸入以下命令安裝依賴:

pip install -r requirements.txt

4. 數(shù)據(jù)庫配置(可選)

該項目默認使用SQLite,這意味著你不需要特殊配置也可照常運轉(zhuǎn)。

如果你需要配置MySQL或PostgreSQL,請閱讀 hc/local_settings.py.example 文件進行配置即可。

5. 數(shù)據(jù)表遷移

Django項目當然少不了這個環(huán)節(jié),虛擬環(huán)境下,在根目錄里運行以下命令進行數(shù)據(jù)表的遷移:

python manage.py migrate

當然,還要創(chuàng)建超管用戶:

python manage.py createsuperuser

6. 運行項目

大功告成,輸入以下命令即可運行項目:

python manage.py runserver

點擊右上角login in登錄到超管用戶就可以開始使用了。

如果你需要對這個項目進行大規(guī)模的改動,建議使用Pycharm作為編程工具,因為使用Pycharm來寫Django實在是太爽了。

責(zé)任編輯:龐桂玉 來源: 簡說Python
相關(guān)推薦

2022-08-15 15:43:29

Linuxcron

2010-01-07 13:38:41

Linux定時任務(wù)

2017-08-16 16:41:04

JavaSpringBoot定時任務(wù)

2024-05-13 09:49:30

.NETQuartz庫Cron表達式

2022-11-11 14:55:14

Linuxcron

2025-04-27 08:01:25

2025-04-21 02:20:00

2018-10-08 14:00:28

LinuxCron定時任務(wù)

2010-03-10 15:47:58

crontab定時任務(wù)

2023-12-11 09:50:35

Linux定時器

2009-10-28 10:05:29

Ubuntucrontab定時任務(wù)

2012-02-07 13:31:14

SpringJava

2023-12-19 08:09:06

Python定時任務(wù)Cron表達式

2025-01-20 13:30:00

Linux系統(tǒng)Ansible

2024-11-04 16:01:01

2021-04-16 13:20:41

ZeitLinux工具

2020-12-21 07:31:23

實現(xiàn)單機JDK

2024-12-27 08:24:55

2024-01-22 08:53:00

策略任務(wù)RocketMQ

2024-05-31 13:07:29

.NET Core定時任務(wù)編程
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 久久乐国产精品 | 国产精品永久久久久 | 日日干干夜夜 | 精品国产乱码久久久久久丨区2区 | 免费福利视频一区二区三区 | 人人人人爽 | 一二三四在线视频观看社区 | 欧美精品日韩精品国产精品 | 欧美激情在线播放 | 91tv在线观看| 欧美成人视屏 | 亚洲欧美国产精品久久 | 国产农村妇女精品一二区 | 91国在线观看 | 在线视频一区二区 | 91在线中文字幕 | 亚洲精品日韩精品 | 久久精品欧美电影 | 91精品久久久久久久久久 | 日韩在线精品 | 日韩一区二区在线播放 | 亚洲综合色自拍一区 | 国内激情av片 | 中文字幕在线观看日韩 | 午夜天堂精品久久久久 | 在线国产视频 | 国产美女网站 | 亚洲色在线视频 | 草草视频在线观看 | va精品| 成人精品久久日伦片大全免费 | 国产激情在线 | 国产精品久久久久无码av | 国产精品一区二区久久久久 | 爱综合| 久久久久久久久久久久久久国产 | 国产精品黄色 | 国产精品国产三级国产aⅴ原创 | 在线成人免费视频 | 另类亚洲视频 | 亚洲一区二区视频 |