• 定时任务监控服务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
  • 相关阅读:
    WebForm捆绑压缩js和css(WebForm Bundling and Minification)
    2017.4.15
    .NET Core + docker入门
    微软官方教程视频入口
    C# struct和class
    法线的变换的一些概念
    透视投影矩阵的一些概念
    视图矩阵ViewMatrix一些概念
    矩阵一些概念
    向量一些概念
  • 原文地址:https://www.cnblogs.com/xingxia/p/django_healthchecks.html
Copyright © 2020-2023  润新知