美文网首页
用 Docker 十分钟搭建出 Sentry 私服

用 Docker 十分钟搭建出 Sentry 私服

作者: 李方成 | 来源:发表于2017-07-19 14:45 被阅读0次

    Sentry 是什么

    通常我们所说的 Sentry 是指 Sentry 的后端服务,由 Django 编写。8.0 版本使用了 React.js 构建前端 UI。使用 Sentry 前还需要在自己的应用中配置 SentrySDK —— 通常在各语言的包管理工具中叫做 Raven

    当然,Sentry 还可以是其公司所提供的 Sentry SaaS 服务。

    DSN(Data Source Name)

    Sentry 服务支持多用户、多团队、多应用管理,每个应用都对应一个 PROJECT_ID,以及用于身份认证的PUBLIC_KEYSECRET_KEY。由此组成一个这样的DSN`:

    '{PROTOCOL}://{PUBLIC_KEY}:{SECRET_KEY}@{HOST}/{PATH}{PROJECT_ID}'
    

    PROTOCOL 通常会是 http 或者 httpsHOSTSentry 服务的主机名和端口,PATH 通常为空。

    安装

    地址:https://github.com/getsentry/onpremise

    需要提前安装好 Dockerdocker-compose ,没有安装的请先去安装。

    1. clone 安装源码

    git clone https://github.com/getsentry/onpremise.git
    
    cd onpremise
    
    ls
    Dockerfile         Makefile           README.md          config.yml         docker-compose.yml requirements.txt   sentry.conf.py
    

    2. 通过命令生成 secret key

    docker-compose run --rm web config generate-secret-key
    

    3. 将生成的 SENTRY_SECRET_KEY 添加到 docker-compose.yml

    vim docker-compose.yml
    
    image.png

    4. 更新配置

    docker-compose run --rm web upgrade
    docker-compose up -d
    

    启动和停止

    docker-compose up -d  # 启动
    
    docker-compose stop
    docker-compose down  # 停止并删除容器
    

    访问

    localhost:9000
    

    使用

    用浏览器访问 http://localhost:9000/,即可看到sentryWeb界面。登录之后建立一个项目,然后即可配置客户端。 对于使用django框架的项目,客户端可以如下配置:

    $ sudo pip install raven       # 如果项目和sentry位于不同服务器,可能需要安装raven
    

    打开djangosettings.py,加入:

    SENTRY_DSN = 'xxxxxxx'         # 在sentry的Web界面中建立项目后即可查看
                                   # for django的配置文档,从中可以找到`SENTRY_DSN`的值
    INSTALLED_APPS = {
        ....
        'raven.contrib.django',    # 加入这一行
        ....
    }
    

    这样django项目中产生的异常就都会集中到sentry服务器上了。

    相关文章

      网友评论

          本文标题:用 Docker 十分钟搭建出 Sentry 私服

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