官方的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的安装和使用以及各种问题处理的更多相关文章

  1. Sentry的安装搭建与使用

    业务监控工具 Sentry 的搭建与使用 官方网址 Django Sentry 官网链接 Sentry 简介 Sentry 是一个开源的实时错误报告工具,支持 web 前后端.移动应用以及游戏,支持 ...

  2. 错误日志收集sentry的安装与简单使用

    通过官方文档https://docs.sentry.io/可以得知,安装服务有两种方式,一种是使用Python,这种方式个人感觉比较麻烦.于是选择了第二种方式:使用docker. 我是在Windows ...

  3. sentry docker-compsoe 安装以及简单使用

    1. 准备环境 docker docker-compose     2. 安装 a. docker-compose git clone git clone https://github.com/get ...

  4. Sentry的安装、配置、使用

    前言 上一篇文章介绍了ExceptionLess这个日志收集系统:ExceptionLess的安装.配置.使用 由于ExceptionLess官方提供的客户端只有.Net/.NetCore平台和js的 ...

  5. mac安装sentry

    最近需要一个日志监视系统所以选择了sentry. 安装docker https://download.docker.com/mac/stable/Docker.dmg 登录 安装完了打开 会提示登录输 ...

  6. 使用开源软件sentry来收集日志

    原文地址:http://luxuryzh.iteye.com/blog/1980364 对于一个已经上线的系统,存在未知的bug或者运行时发生异常是很常见的事情,随之而来的几点需求产生了: 1.系统发 ...

  7. 【转】Sentry介绍

    Sentry 是一个开源的实时错误报告工具,支持 web 前后端.移动应用以及游戏,支持 Python.OC.Java.Go.Node.Django.RoR 等主流编程语言和框架 ,还提供了 GitH ...

  8. Docker手动搭建sentry错误日志系统

    Sentry介绍 在开发过程中,我们通过debug来排查bug,并且使用logging来记录系统的错误.但是logging有很多不足: 必须登陆到服务器查看日志文件 需要主动去查询 输出日志方式无法把 ...

  9. 使用 Sentry集中处理错误

    Sentry的简介 Sentry 是一个实时的事件日志和聚合平台,基于 Django 构建. Sentry 可以帮助你将程序的所有 exception 自动记录下来,处理 exception 是每个程 ...

随机推荐

  1. js的组成部分

    ECMAScript js基本语法与标准 DOM Document Object Model文档对象模型 BOM Browser Object Model浏览器对象模型

  2. elipse使用,Java和Javaee模式区别

    Java带有用户界面的基本ide,缺少数据库和web开发工具 IDE(Integrated Development Environment,集成开发环境).集成开发环境(简称IDE)软件是用于程序开发 ...

  3. Sqoop简介

    一  Sqoop是什么 Sqoop:SQL-to-Hadoop 连接传统关系型数据库和Hadoop的桥梁 把关系型数据库的数据导入到 Hadoop 系统 ( 如 HDFS.HBase 和 Hive) ...

  4. Ubuntu 16.04 强制使用ipv4安装apt-get

    参考文献:https://www.linuxidc.com/Linux/2015-09/123340.htm 起因:每次校园网都要自动用ipv6不知道为什么又总之链接不上,导致安装失败,有以下命令强行 ...

  5. Django学习笔记之URL与视图cookie和session

    cookie和session cookie:在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户.cookie的出现就是为了 ...

  6. Python之 操作 MySQL 数据库

    什么是MySQLdb? MySQLdb 是用于Python链接Mysql数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API 上建立的. 安装 Pytho ...

  7. laravel的ORM模型的find(),findOrFail(),first(),firstOrFail(),get(),list(),toArray()之间的区别

    find($id)需要一个id并返回一个模型.如果不存在匹配的模型,则返回null. findOrFail($id)需要一个id并返回一个模型.如果不存在匹配的模型,则会引发错误, 它会抛出一个err ...

  8. python selenium-webdriver 等待时间(七)

    测试过程中,我们经过发现脚本执行的时候展现出来的效果都是很快结束了,为了观察执行效果我们会增加一个等待时间来观察一下执行效果.这种等待时间我们只是为了我们便于观察,这种情况下是否包含等待时间不会影响我 ...

  9. 结对编程core_6

    林静雯PB16060913 李鑫PB16061107 对于这种结对的工作,由于有过电子设计实践的基础,大概知道建一个工程需要做的事,有点经验还是有帮助的. 一.问题要求: 1·主要功能是随机产生有效的 ...

  10. ajax高级操作

    $('#ajax_submit').click(function () { $.ajax({ 'url':'/app_ajax', 'type':'post', 'data':$("#f1& ...