美文网首页
sentry mac docker 本地部署

sentry mac docker 本地部署

作者: 不_一 | 来源:发表于2019-07-08 11:21 被阅读0次

    简介

    Sentry在自动化运维中十分常用。它是一个实时事件日志记录和汇集的平台。它能够对程序运行中产生的错误信息进行抓取。通过email来告知用户。

    在网站的运行过程中,可能会有一些程序错误发生。技术人员往往是在用户报告错误后去查阅日志文件,在数以万计的记录中查询具体错误原因既费时又费力,而且无法在错误发生时及时获得错误报告。 Sentry则能将服务器运行过程中的错误在第一时间按要求分类提取并通知运维工程师,大大提高了运维效率。

    sentry 架构

    C/S 架构

    mac docker 安装

    sentry 部署

    1. docker 启动redis
    docker run -d --name sentry-redis redis
    # 如已有容器,可直接启动
    docker start ... 
    
    1. docker 启动postgresql
    docker run -d --name sentry-postgres -e POSTGRES_PASSWORD=secret -e POSTGRES_USER=sentry postgres
    # 如已有容器,可直接启动
    docker start 2aa82db3a78a
    
    1. 生成sentry secret key
    docker run --rm sentry config generate-secret-key
    
    1. 生成数据库表结构
    docker run -it --rm -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry upgrade
    

    在执行快结束时,终端会提示你创建管理员的邮箱和密码。按照说明输入即可

    1. 启动sentry web 服务
    docker run -d --name my-sentry -p 9000:9000 -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-redis:redis --link sentry-postgres:postgres sentry
    
    1. 启动sentry worker 和 cron, 用于接收issues
    $ docker run -d --name sentry-cron -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry run cron
    $ docker run -d --name sentry-worker-1 -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry run worker
    
    1. 登录web网站
      地址:
    127.0.0.1:9000
    
    login页面
    1. 创建project


      首页

      选择相应的程序,输入project名字


      创建页面1
    创建页面2

    点击Got it!
    然后可以进去监控页面等待issues了


    监控页面
    1. 获取DSN,客户端捕获错误


      project setting 页面
    查看dsn

    然后建立一个client ,发送错误通知

    from raven import Client
    cc = Client('http://2f9c9548739049d8bf6666c320eab13c:1d4600e39f754b94997abeec513985f9@127.0.0.1:9000/5')
    try:
        1 /0
     except Exception:
        cc.captureException()
    
    监控页面

    补充

    1. DSN可能为空
      需要设置sentry服务的域名
      进入sentry shell,方法
    # 进sentry sever 服务的docker 命令行页面
    docker exec -it my-sentry /bin/bash
    # 进入sentry  shell
    sentry shell
    
    执行
    >>> from sentry import options
    >>> options.set("system.url-prefix", "http://127.0.0.1:9000")
    True
    

    设置完成后重新查看Client Key,复制第二个DSN

    1. 运行的docker 容器


      docker 服务 列表

    相关文章

      网友评论

          本文标题:sentry mac docker 本地部署

          本文链接:https://www.haomeiwen.com/subject/hnhmhctx.html