官方的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:bad2a34018ce48ea9437f204384ffd54@192.168.187.134:9000/5
raven test http://2b104bab64a447dab5ade5fbd8cac7b8:bad2a34018ce48ea9437f204384ffd54@192.168.187.134:9000/5