sentry的安装和使用以及各种问题处理

官方的git地址:https://github.com/getsentry/onpremise

需要先安装docker 1.10版本以上

假设你已经安装完docker,那么接下来

安装docker-compose

sudo yum install epel-release
sudo yum install -y python-pip
sudo pip install docker-compose

安装git

sudo yum install git

制作本地数据库和sentry的目录配置,用来绑定挂载

sudo mkdir -p data/{sentry,postgres}

克隆sentry项目

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

以下是根据官网给的步骤

docker volume create --name=sentry-data && docker volume create --name=sentry-postgres

创建配置文件

cp -n .env.example .env

执行

docker-compose build

生成key

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

添加到.env的SENTRY_SECRET_KEY里面

创建数据库 并且根据提示创建账号

docker-compose run --rm web upgrade

启动

docker-compose up -d

启动成功后可以访问http://localhost:9001

如果创建账号失败:

(1)使用docker命令进入postgres数据库

# docker exec -it onpremise_postgres_1 bash

(2)进入postgres数据库

# psql -h 127.0.0.1 -d postgres -U postgres

(3)查看这两个表是否有数据sentry_project,sentry_organization

postgres=#  select * from sentry_project;

postgres=# select * from sentry_organization ;

如果没有数据,进行创建

(4)新开一个终端,进入sentry的web的shell里面,其实就是一个python端

# docker-compose run --rm web shell 

(5)输入以下命令进行初始化数据

from sentry.models import Project

from sentry.receivers.core import create_default_projects

create_default_projects([Project])

(6)退出第五步的shell,创建自己的用户

# docker-compose run --rm web createuser

根据提示输入邮箱和密码

如果是发送成功,但是sentry里面看不到日志:

从docker日志查询

docker stop onpremise_worker

docker logs -f --tail 100 onpremise_worker

如果发现是类似这样的错误

 

1.运行命令进入postgres docker

docker exec -it onpremise_postgres_1 bash

2.进入postgre数据库

psql -h 127.0.0.1 -d postgres -U postgres

3.执行:

create or replace function sentry_increment_project_counter( project bigint, delta int) returns int as $$ declare new_val int; begin loop update sentry_projectcounter set value = value + delta where project_id = project returning value into new_val; if found then return new_val; end if; begin insert into sentry_projectcounter(project_id, value) values (project, delta) returning value into new_val; return new_val; exception when unique_violation then end; end loop; end $$ language plpgsql;

4.ctrl + D退出数据库,exit退出bash

5.重新运行onpremise_worker

安装好以后我们可以用python的raven进行测试:

安装

pip install raven

我们假设DSN是http://2b104bab64a447dab5ade5fbd8cac7b8:[email protected]:9000/5

raven test http://2b104bab64a447dab5ade5fbd8cac7b8:[email protected]:9000/5

猜你喜欢

转载自www.cnblogs.com/Shadow3627/p/10767023.html
今日推荐