博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
阿里云ubuntu搭建sentry服务
阅读量:5036 次
发布时间:2019-06-12

本文共 3365 字,大约阅读时间需要 11 分钟。

1. 安装docker


 

首先先确定你的Ubuntu是否符合安装Docker的前提下。如果没有问题,你可以通过下边的方式来安装Docker: 

查看是否安装了wget 

which wget

如果wget没有安装,先升级包管理器,然后再安装他。 

sudo apt-get update $ sudo apt-get install wget

获取最新版本的Docker安装包 

wget -qO- https://get.docker.com/ | sh

通过 docker --version 可以查看版本号并确认是否安装成功。 

由于某种神秘原因国内无法直接从 docker 官方库直接获取镜像 这里我们使用  运行下面命令即可。

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://4031ebb7.m.daocloud.io

2. 安装 docker-compose 


 

推荐使用python的pip管理工具来安装docker-compose 

sudo pip install -U docker-compose

到这里安装就结束了;Compose 已经安装完成。你可以使用 docker-compose --version 来进行测试

3. 正是搭建sentry

 


 

做完了准备工作,就可以开始搭建 sentry 了。

从  上面获取最新的 sentry

git clone https://github.com/getsentry/onpremise.git

获取到本地之后,就可以根据他的 README.md 开始着手搭建了,整个过程还是比较顺利的。

进入 clone 下来的 onpremise 目录依次执行

1. 创建对应的目录

mkdir -p data/{sentry,postgres}

2. 创建env配置文件

cp -n .env.example .env

3. 构建和标记Docker服务 

docker-compose build

 

4. 生成密钥。将其添加.envSENTRY_SECRET_KEY

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

添加key到.env中

[dy@iz2zeacp86oa3ile21ueg2z onpremise]$ vi .env# Run `docker-compose run web config generate-secret-key`# to get the SENTRY_SECRET_KEY value.SENTRY_SECRET_KEY= 'e@lcae#hd&g6p4)qzkmfi8iu#n(&j@vzx4*hkt0zm+n^o-4k37'  # 此处要写自己生成的key

5. 构建数据库。使用交互式提示创建用户帐户 

docker-compose run --rm web upgrade

异常情况一:如果在执行上图红框第5步时,没有提示创建超用户!!!!

解决方法:

1. 打开一个终端,进入sentry的web的shell里面,其实就是一个python端

docker-compose run --rm web shell

2. 输入以下命令进行初始化数据

from sentry.models import Projectfrom sentry.receivers.core import create_default_projectscreate_default_projects([Project])

3. 退出shell,创建自己的用户

docker-compose run --rm web createuser

4. 重新启动sentry服务 

$ docker-compose down      # 停止$ docker-compose up -d      # 启动

异常情况二:安装完成后无法登录(请求超时)!!!!

解决方法:重新执行安装步骤中的3~4,重新生成key,并重新生成数据表,如下图:

异常情况三:sentry面板不显示新建的项目,或者不显示接收到异常信息,但是统计中有记录!!!!

 

统计中有数据:

解决方法:

 

  1. 执行这个命令进入 postgres docker

    docker exec -it onpremise_postgres_1 bash

     

  2. 进入postgre database

    psql -h 127.0.0.1 -d postgres -U postgres
    View Code
  3. 执行这段代码: 

    1 create or replace function sentry_increment_project_counter( 2  3             project bigint, delta int) returns int as $$ 4  5         declare 6  7           new_val int; 8  9         begin10 11           loop12 13             update sentry_projectcounter set value = value + delta14 15              where project_id = project16 17                returning value into new_val;18 19             if found then20 21               return new_val;22 23             end if;24 25             begin26 27               insert into sentry_projectcounter(project_id, value)28 29                    values (project, delta)30 31                 returning value into new_val;32 33               return new_val;34 35             exception when unique_violation then36 37             end;38 39           end loop;40 41         end42 43         $$ language plpgsql;
    View Code

 

4.配置邮箱发送

 


1. 打开docker-compose.yml文件(在git clone 的目录onpremise下)

vim docker-compose.yml

2. 复制以下几行到docker-compose.yml文件 

 开始的时候我用的是网易的,但是邮件死活发不出去,后来换了qq邮箱就好了

SENTRY_EMAIL_HOST: 'smtp.sina.com'SENTRY_EMAIL_USER: 'dongyang***@sina.com'SENTRY_EMAIL_PASSWORD: '*****'   # 填写自己的密码SENTRY_SERVER_EMAIL: 'dongyang***@sina.com'SENTRY_EMAIL_PORT: 587        # 阿里云必须写这一项SENTRY_EMAIL_USE_TLS: 'true'   # 阿里云必须写这一项

 

3. 重新启动sentry服务

docker-compose down      # 停止docker-compose up -d      # 启动

 

4. 如下图可以测试邮件是否可以发送 

 

进入用户设置

ip:9000/account/settings/

 

转载于:https://www.cnblogs.com/qybk/p/11053113.html

你可能感兴趣的文章
Java实战之02Hibernate-02映射、一级缓存、实体对象状态
查看>>
[转]Implementing User Authentication in ASP.NET MVC 6
查看>>
[转]SSIS cannot convert between unicode and non-unicode string
查看>>
[转]23种经典设计模式的java实现_5_职责链模式
查看>>
[书目20130316]jQuery权威指南
查看>>
oracle竖表转横表字段合并
查看>>
MySQL 命令总结
查看>>
(算法)精确表示小数
查看>>
python16_day22【cmdb注释】
查看>>
关于监听器那些让人头疼的事
查看>>
rem
查看>>
莫比乌斯反演总结
查看>>
10天学安卓-第二天
查看>>
vi撤销 恢复 (vi学习)
查看>>
bzoj3261
查看>>
HTML中哪些标签的值会被提交到服务器呢?
查看>>
sublime Text3
查看>>
创建表的时候创建索引
查看>>
关于Windows10升级10586之后微软小娜无法打开的问题
查看>>
Strom的trident小例子
查看>>