zoukankan      html  css  js  c++  java
  • 【Vue+DRF 生鲜电商】sentry 实现错误日志监控(十二)

    1. 安装 Docker

    # 卸载已有的docker 
    yum remove docker docker-common docker-selinux docker-engine
    
    # 安装docker的依赖
    yum install -y yum-utils device-mapper-persistent-data lvm2
    
    # 安装docker-ce
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    
    yum install docker-ce
    
    # 启动docker后台服务
    service docker start
    
    # 测试运行
    docker run hello-world
    
    # 设置开机启动
    sudo systemctl enable docker
    

    参考

    • https://linoxide.com/containers/upgrade-docker-fedora-centos/
    • http://projectsedu.com/

    2. Docker 配置国内节点

    配置国内节点加速访问(拉去镜像)

    1、新增配置文件:

    vim /etc/docker/daemon.json
    
    {
        "registry-mirrors": [
            "https://registry.docker-cn.com",
            "http://hub-mirror.c.163.com"
        ]
    }
    

    2、重启 Docker

    systemctl daemon-reload
    systemtctl restart docker && systemctl status docker
    

    3、检查是否生效:docker info

    3. CentOS 安装 sentry

    3.1 方式一

     cd /opt
    mkdir -p data/{sentry,postgres}
    
    # 克隆该项目
    git clone https://github.com/getsentry/onpremise.git
    
    # 生成密钥
    cd onpremise
    cp .env.example .env
    docker volume create --name=sentry-data
    docker volume create --name=sentry-postgres
    docker-compose run --rm web config generate-secret-key
    
    # 输出信息
    Successfully built 65266319f103
    Successfully tagged sentry-onpremise-local:latest
    WARNING: Image for service web was built because it did not already exist. To rebuild this image you must use `docker-compose build` or `docker-compose up --build`.
    
    # 密钥文件
    (2gwakm75k4%-#79i(6o)%og4tz41r_02t=ik#uq_li15_*)(m
    
    # 将该密钥文件写入 .env 或 docker-compose.yml 中
    vim .env
    SENTRY_SECRET_KEY='(2gwakm75k4%-#79i(6o)%og4tz41r_02t=ik#uq_li15_*)(m'
    
    # 创建数据库
    docker-compose run --rm web upgrade
    
    # 在创建数据的时候会提示我们是否需要创建管理员,我们选择Y,填入对应的邮箱地址和密码,等一下登陆WEB需要,是否是超级管理员也选择Y 
    
    # 启动所有服务
    docker-compose up -d
    
    # 验证docker启动状态
    docker ps
    

    到此 sentry 就已经部署完成了,访问我们的服务器 ip:9000 端口就可以看见 sentry 的界面

    参考文章

    3.2 方式二

    最新的安装方式:

    git clone https://github.com/getsentry/onpremise.git
    
    cd onpremise/
    
    # 服务器最小安装内存为 2G,不足请修改 install.sh 中的 min_ram
    
    # 执行脚本进行安装
    ./install.sh
    
    # 看到以下信息表示已经安装完毕
    
    # Generating Relay credentials...
    # Relay credentials written to relay/credentials.json
    # Relay public key written to sentry/sentry.conf.py
     
    # Cleaning up...
     
    # ----------------
    # You're all done! Run the following command to get Sentry running:
     
    #   docker-compose up -d
    
    docker-compose run --rm web upgrade
    docker-compose run --rm web createuser  # 创建登录账户
    docker-compose up -d    # 后台启动
    docker ps   # 查看启动的容器,检查是否启动成功
    

    若没有出错,访问:http://ip:9000 端口查看 sentry

    3.3 Django 集成 sentry

    1、安装:pip install --upgrade 'sentry-sdk==0.16.1'

    2、配置 settings

    import sentry_sdk
    from sentry_sdk.integrations.django import DjangoIntegration
    
    sentry_sdk.init(
        dsn="",
        integrations=[DjangoIntegration()],
    
        # If you wish to associate users to errors (assuming you are using
        # django.contrib.auth) you may enable sending PII data.
        send_default_pii=True
    )
    

    其中 dsnsentry 创建项目时生成的一个 key,用于标识和区分不同的项目,设置后才知道要往哪个项目发送错误,在 sentry 界面设置中能找到它。

    3、配置路由 MxShop/urls.py

    from django.urls import path
    
    def trigger_error(request):
        division_by_zero = 1 / 0
    
    urlpatterns = [
        path('sentry-debug/', trigger_error),
        # ...
    ]
    

    参考文章

  • 相关阅读:
    springmvc+shiro+freemarker实现的安全及权限管理
    shiro过滤器过滤属性含义
    Spring Boot☞ 使用freemarker模板引擎渲染web视图
    Spring Boot使用模板freemarker【从零开始学Spring Boot(转)
    SpringMVC响应Ajax请求(@Responsebody注解返回页面)
    springboot 使用FreeMarker模板(转)
    springboot整合freemarker(转)
    ehcache、memcache、redis三大缓存比较(转)
    30分钟学会如何使用Shiro(转)
    Spring Boot 部署与服务配置
  • 原文地址:https://www.cnblogs.com/midworld/p/13629770.html
Copyright © 2011-2022 走看看