定时任务监控服务Healthchecks
Posted zlixing
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了定时任务监控服务Healthchecks相关的知识,希望对你有一定的参考价值。
GitHub地址:https://github.com/healthchecks/healthchecks
官方文档:https://healthchecks.io/docs/
按照步骤进行安装:
1.新建项目目录
$ mkdir -p ~/webapps
$ cd ~/webapps
2.创建虚拟环境
$ python3 -m venv hc-venv
$ source hc-venv/bin/activate
$ pip3 install wheel # make sure wheel is installed in the venv
3.拉取代码
git clone https://github.com/healthchecks/healthchecks.git
4.安装依赖包
pip install -r healthchecks/requirements.txt
5.初始化项目并创建管理员账号
$ cd ~/webapps/healthchecks
$ ./manage.py migrate
$ ./manage.py createsuperuser
6.运行项目
./manage.py runserver
进行邮件配置:
邀请其他成员加入或者发送告警信息都可以通过发送邮件的方式来通知用户
具体的配置信息: https://healthchecks.io/docs/self_hosted_configuration/
配置文件:hc/settings.py
可以配置环境变量覆盖配置文件中的内容:
EMAIL_HOST = ""
EMAIL_PORT = 80
EMAIL_HOST_USER = ""
EMAIL_HOST_PASSWORD = ""
EMAIL_USE_TLS = False
EMAIL_USE_VERIFICATION = True
注意点:
DEFAULT_FROM_EMAIL 配置项需要与EMAIL_HOST_USER配置一致,否则一会会报错
配置服务地址域名:SITE_ROOT
常见问题:
1.执行migrate迁移的时候发生错误,
报错(SQLite 3.8.3 or later is required (found 3.7.17).)
很明显这是由于当前的sqlite版本不高,不满足最低的运行依赖导致
解决:
1.降低django版本,但是这个项目运行可能会异常
pip uninstall django
pip install django==x.x.x
2.升级sqlite版本(https://www.sqlite.org/download.html)
1)下载新包
wget https://www.sqlite.org/2021/sqlite-autoconf-3360000.tar.gz
tar zxvf sqlite-autoconf-3360000.tar.gz
cd sqlite-autoconf-3360000/
./configure
make && make install
查看新版本:
/usr/local/bin/sqlite3 --version
2)替换老的sqlite
mv /usr/bin/sqlite3 /usr/bin/sqlite3_old
ln -s /usr/local/bin/sqlite3 /usr/bin/sqlite3
查看变量:
printenv LD_LIBRARY_PATH
export LD_LIBRARY_PATH="/usr/local/lib"
可以添加到配置文件中
vim /etc/profile
export LD_LIBRARY_PATH="/usr/local/lib"
3)但是重新迁移 还是发生错误, 这是由于python使用的sqlite3的版本还是老的, 所以需要进行升级
pip install pysqlite
查看python中sqlite3版本
python3
import sqlite3
sqlite3.sqlite_version
2.一定要升级较新的pip版本, 可以避免许多坑!!!
1)
编译cryptography-3.4.7失败
3.安装依赖包的时候报错,
安装 psycopg2 的问题:pg_config executable not found
需要安装 pg 和 py 的驱动:
ubuntu:
apt-get install libpq-dev python-dev
centos:
yum install libpqxx-devel python-devel
安装完成,再使用 pip install psycopg2
4.执行迁移的时候报错,
django.db.utils.NotSupportedError: URIs not supported
根据项目的具体地址进行文件修改:
vim /home/my_virtualenv/django_demo/lib/python3.6/site-packages/django/db/backends/sqlite3/base.py
以上是关于定时任务监控服务Healthchecks的主要内容,如果未能解决你的问题,请参考以下文章
Linux下创建定时任务监控zookeeper进程,异常时自动启动
github:https://github.com/kanwangzjm/funiture春天项目,权限管理、系统监控、定时任务动态调整、质量保证体系限制、sql语言监控(邮件)、验证码服务、短链接服