前期准备

[root@Aaron ~]# uname -r

3.10.0-327.el7.x86_64

[root@Aaron ~]# uname -a

Linux Aaron 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

[root@Aaron ~]# python -V

Python 2.7.5

[root@Aaron ~]# pip -V

pip 9.0.1 from /usr/lib/python2.7/site-packages (python 2.7)

创建虚拟环境

[root@Aaron ~]# pip install -U virtualenv

[root@Aaron ~]# virtualenv /www/sentry/

[root@Aaron ~]# source /www/sentry/bin/activate

(sentry) [root@Aaron ~]#

安装sentry

这里sentry官网推荐postgres,因为我之前没使用过postgres,折腾了一会,感觉非常难受,所以最终选择mysql5.7,用哪个数据库都一样,只要在sentry.conf.py文件配置好就行。

安装redis

(sentry) [root@Aaron ~]# yum install redis

(sentry) [root@Aaron sentry]# systemctl start redis

(sentry) [root@Aaron sentry]# systemctl status redis

安装mysql

(sentry) [root@Aaron sentry]# yum install mysql-devel

(sentry) [root@Aaron sentry]# pip install mysqlclient

(sentry) [root@Aaron sentry]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

(sentry) [root@Aaron sentry]# yum -y install mysql57-community-release-el7-10.noarch.rpm

(sentry) [root@Aaron sentry]# yum -y install mysql-community-server

(sentry) [root@Aaron sentry]# systemctl start  mysqld.service

(sentry) [root@Aaron sentry]# systemctl status mysqld.service

● mysqld.service - MySQL Server

Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)

Active: active (running) since 二 2018-11-06 10:47:51 CST; 6s ago

Docs: man:mysqld(8)

http://dev.mysql.com/doc/refman/en/using-systemd.html

Process: 4775 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)

Process: 4698 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)

Main PID: 4779 (mysqld)

CGroup: /system.slice/mysqld.service

└─4779 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

11月 06 10:47:47 Aaron systemd[1]: Starting MySQL Server...

11月 06 10:47:51 Aaron systemd[1]: Started MySQL Server.

(sentry) [root@Aaron sentry]# grep "password" /var/log/mysqld.log

2018-11-06T02:47:48.394158Z 1 [Note] A temporary password is generated for root@localhost: wbP&Wms*p0y9

(sentry) [root@Aaron sentry]# mysql -uroot -p

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY ‘Root.123456';

这里我就顺便把sentry数据库给创建了

mysql> create database sentry;

Query OK, 1 row affected (0.00 sec)

我这里图方便,直接yum安装了

没有安装redis执行pip install -U sentry会报错

redis-py-cluster 1.3.5 has requirement redis>=2.10.6, but you'll have redis 2.10.5 which is incompatible.

一定要先安装好redis和mysql,并且启动redis和mysql

(sentry) [root@Aaron ~]# yum install -y python-devel

(sentry) [root@Aaron ~]# pip install -U sentry

如果觉得慢,使用豆瓣源

pip install -i https://pypi.douban.com/simple/   sentry

(sentry) [root@Aaron ~]# mkdir $HOME/sentry/

(sentry) [root@Aaron ~]# echo "export SENTRY_CONF=$HOME/sentry/" >> ~/.bash_profile

(sentry) [root@Aaron ~]# source ~/.bash_profile

(sentry) [root@Aaron ~]# sentry init $HOME/sentry/

(sentry) [root@Aaron ~]# cd ~/sentry/

(sentry) [root@Aaron sentry]# ls

config.yml  sentry.conf.py

修改config.yml

[root@Aaron sentry]# cat config.yml|grep -v "^#"| grep -v "^$"

mail.backend: 'dummy'  # Use dummy if you want to disable email entirely

system.secret-key: '(tn%ksnk&(%uxcsh_=3(wf%0upe)w(b0o02morvw)nvoj@6e#0'

redis.clusters:

default:

hosts:

0:

host: 127.0.0.1

port: 6379

filestore.backend: 'filesystem'

filestore.options:

location: '/tmp/sentry-files'

修改sentry.conf.py

[root@Aaron sentry]# cat sentry.conf.py|grep -v "^#"| grep -v "^$"

from sentry.conf.server import *

import os.path

CONF_ROOT = os.path.dirname(__file__)

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.mysql',

'NAME': 'sentry',

'USER': 'root',

'PASSWORD': 'Root.123456',

'HOST': 'localhost',

'PORT': '3306',

'AUTOCOMMIT': True,

'ATOMIC_REQUESTS': False,

}

}

SENTRY_USE_BIG_INTS = True

SENTRY_SINGLE_ORGANIZATION = True

DEBUG = False

SENTRY_CACHE = 'sentry.cache.redis.RedisCache'

BROKER_URL = 'redis://localhost:6379'

SENTRY_RATELIMITER = 'sentry.ratelimits.redis.RedisRateLimiter'

SENTRY_BUFFER = 'sentry.buffer.redis.RedisBuffer'

SENTRY_QUOTAS = 'sentry.quotas.redis.RedisQuota'

SENTRY_TSDB = 'sentry.tsdb.redis.RedisTSDB'

SENTRY_DIGESTS = 'sentry.digests.backends.redis.RedisBackend'

SENTRY_WEB_HOST = '0.0.0.0'

SENTRY_WEB_PORT = 9000

SENTRY_WEB_OPTIONS = {

# 'workers': 3,  # the number of web workers

# 'protocol': 'uwsgi',  # Enable uwsgi protocol instead of http

}

(sentry) [root@Aaron sentry]# sentry upgrade

(sentry) [root@Aaron sentry]# sentry run web

然后访问ip:9000

Sentry部署的更多相关文章

  1. 记一次sentry部署过程

    本文记录下部署sentry和其中遇到的问题 Sentry 是一款基于 Django实现的错误日志收集和聚合的平台,它是 Python 实现的,但是其日志监控功能却不局限于python,对诸如 Node ...

  2. Apache Sentry部署

    三台hadoop集群,分别是master.slave1和slave2.下面是这三台机器的软件分布: master:NameNode.ZK.HiveMetaSotre.HiveServer2.Sentr ...

  3. centos7 sentry部署指南

    依赖说明 sentry官方推荐docker方式安装,使用到了docker-compose.docker至少是1.10.3以上的版本.为此需要使用centos7. 安装docker #添加yum 源 # ...

  4. 使用docker-compose部署Sentry(附Sentry数据清理)

    Ubuntu下Sentry部署 Sentry作为一款常见以及使用人数较多的监控服务,在接口监控.错误捕捉.错误报警等方面是非常不错的,在此之前我也用过Prometheus监控,各有各的好处,有兴趣的同 ...

  5. centos7下搭建sentry错误日志服务器

    1. docker 安装(方法一) 1.确保yum packages 是最新的 $ sudo yum update 2.添加yum repo $ sudo tee /etc/yum.repos.d/d ...

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

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

  7. Sentry 监控 - Snuba 数据中台架构简介(Kafka+Clickhouse)

    系列 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Maps Sentry For ...

  8. 基于sentry的前端错误监控日志系统(部署sentry服务器/前端项目部署)-让前端最快的定位到生产问题

    背景 在这越来越发达的网络时代,web应用也是越来越复杂,尤其是前端的开发,也是越来越受重视. 所以在我们前端开发完成后,会有一些列的web应用的上线验证,如自测.QA测试.code review 等 ...

  9. Sentry(v20.12.1) K8S 云原生架构探索,玩转前/后端监控与事件日志大数据分析,高性能+高可用+可扩展+可伸缩集群部署

    Sentry 算是目前开源界集错误监控,日志打点上报,事件数据实时分析最好用的软件了,没有之一.将它部署到 Kubernetes,再搭配它本身自带的利用 Clickhouse (大数据实时分析引擎)构 ...

随机推荐

  1. Python基础学习笔记4-28(持续更新)

    Python学习笔记 第一章 计算机基础 1.1 硬件 计算机基本的硬件由:CPU / 内存 / 主板 / 硬盘 / 网卡 / 显卡 等组成,只有硬件但硬件之间无法进行交流和通信.需要操作系统进行协调 ...

  2. xml转换为json格式时,如何将指定节点转换成数组 Json.NET

    使用Json.NET转换xml成json时,如果xml只有单个节点,但json要求是数组形式[], JsonConvert.SerializeXmlNode 并不能自动识别 示例如下: RecordA ...

  3. 数据结构与算法之美学习笔记:B+树(第48讲)

    一.解决问题的前提是定义清楚问题 通过对一些模糊需求进行假设,来限定要解决问题的范围 根据某个值查找数据,比如 select * from use where id=1234: 根据区间值来查询某些数 ...

  4. 责任链模式-Chain of Responsibility(Java实现), 例1

    责任链模式-Chain of Responsibility, 例1 在这种模式中,通常每个接收者都包含对另一个接收者的引用.如果一个对象不能处理该请求,那么它会把相同的请求传给下一个接收者,依此类推. ...

  5. elasticsearch 6.2.4添加用户密码认证

    elasticsearch 6.3版本之前的添加认证需安装x-pack插件,6.3之后貌似去掉了这个. 1.安装x-pack 先切换到elastic用户下,在执行以下命令 $cd /data/elas ...

  6. Python学习第二节——基础知识

    # !/usr/bin/edv python    脚本语言的第一行,目的就是指出,你想要你的这个文件中的代码用什么可执行程序去运行它.# -*- coding:UTF-8 -*-    标明编码注释 ...

  7. R语言数据集的技术

    特征值选择技术要点 特征值选择技术要点(特征值分解) 作者:王立敏 文章来源:xiahouzuoxin 一.特征值分解 1.特征值分解 线性代数中,特征分解(Eigendecomposition),又 ...

  8. junit测试

    /**ssm框架测试service**/ import com.alibaba.fastjson.JSON; import com.raycloud.waimai.customer.center.po ...

  9. RLException: XXX is neither a launch file in package XXX nor is XXX a launch file name问题解决

    在运行roslaunch时出现了类似下面的错误: RLException: XXX is neither a launch file in package XXX nor is XXX a launc ...

  10. vue老司机

    你和答案之间只差一个关键字 1.对象二级查找值渲染早于数据获取   解决vue.js 数据渲染成功仍报错的问题