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 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
sentry的安装和使用以及各种问题处理的更多相关文章
- Sentry的安装搭建与使用
业务监控工具 Sentry 的搭建与使用 官方网址 Django Sentry 官网链接 Sentry 简介 Sentry 是一个开源的实时错误报告工具,支持 web 前后端.移动应用以及游戏,支持 ...
- 错误日志收集sentry的安装与简单使用
通过官方文档https://docs.sentry.io/可以得知,安装服务有两种方式,一种是使用Python,这种方式个人感觉比较麻烦.于是选择了第二种方式:使用docker. 我是在Windows ...
- sentry docker-compsoe 安装以及简单使用
1. 准备环境 docker docker-compose 2. 安装 a. docker-compose git clone git clone https://github.com/get ...
- Sentry的安装、配置、使用
前言 上一篇文章介绍了ExceptionLess这个日志收集系统:ExceptionLess的安装.配置.使用 由于ExceptionLess官方提供的客户端只有.Net/.NetCore平台和js的 ...
- mac安装sentry
最近需要一个日志监视系统所以选择了sentry. 安装docker https://download.docker.com/mac/stable/Docker.dmg 登录 安装完了打开 会提示登录输 ...
- 使用开源软件sentry来收集日志
原文地址:http://luxuryzh.iteye.com/blog/1980364 对于一个已经上线的系统,存在未知的bug或者运行时发生异常是很常见的事情,随之而来的几点需求产生了: 1.系统发 ...
- 【转】Sentry介绍
Sentry 是一个开源的实时错误报告工具,支持 web 前后端.移动应用以及游戏,支持 Python.OC.Java.Go.Node.Django.RoR 等主流编程语言和框架 ,还提供了 GitH ...
- Docker手动搭建sentry错误日志系统
Sentry介绍 在开发过程中,我们通过debug来排查bug,并且使用logging来记录系统的错误.但是logging有很多不足: 必须登陆到服务器查看日志文件 需要主动去查询 输出日志方式无法把 ...
- 使用 Sentry集中处理错误
Sentry的简介 Sentry 是一个实时的事件日志和聚合平台,基于 Django 构建. Sentry 可以帮助你将程序的所有 exception 自动记录下来,处理 exception 是每个程 ...
随机推荐
- js的组成部分
ECMAScript js基本语法与标准 DOM Document Object Model文档对象模型 BOM Browser Object Model浏览器对象模型
- elipse使用,Java和Javaee模式区别
Java带有用户界面的基本ide,缺少数据库和web开发工具 IDE(Integrated Development Environment,集成开发环境).集成开发环境(简称IDE)软件是用于程序开发 ...
- Sqoop简介
一 Sqoop是什么 Sqoop:SQL-to-Hadoop 连接传统关系型数据库和Hadoop的桥梁 把关系型数据库的数据导入到 Hadoop 系统 ( 如 HDFS.HBase 和 Hive) ...
- Ubuntu 16.04 强制使用ipv4安装apt-get
参考文献:https://www.linuxidc.com/Linux/2015-09/123340.htm 起因:每次校园网都要自动用ipv6不知道为什么又总之链接不上,导致安装失败,有以下命令强行 ...
- Django学习笔记之URL与视图cookie和session
cookie和session cookie:在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户.cookie的出现就是为了 ...
- Python之 操作 MySQL 数据库
什么是MySQLdb? MySQLdb 是用于Python链接Mysql数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API 上建立的. 安装 Pytho ...
- laravel的ORM模型的find(),findOrFail(),first(),firstOrFail(),get(),list(),toArray()之间的区别
find($id)需要一个id并返回一个模型.如果不存在匹配的模型,则返回null. findOrFail($id)需要一个id并返回一个模型.如果不存在匹配的模型,则会引发错误, 它会抛出一个err ...
- python selenium-webdriver 等待时间(七)
测试过程中,我们经过发现脚本执行的时候展现出来的效果都是很快结束了,为了观察执行效果我们会增加一个等待时间来观察一下执行效果.这种等待时间我们只是为了我们便于观察,这种情况下是否包含等待时间不会影响我 ...
- 结对编程core_6
林静雯PB16060913 李鑫PB16061107 对于这种结对的工作,由于有过电子设计实践的基础,大概知道建一个工程需要做的事,有点经验还是有帮助的. 一.问题要求: 1·主要功能是随机产生有效的 ...
- ajax高级操作
$('#ajax_submit').click(function () { $.ajax({ 'url':'/app_ajax', 'type':'post', 'data':$("#f1& ...