依赖说明

sentry官方推荐docker方式安装,使用到了docker-compose。docker至少是1.10.3以上的版本。为此需要使用centos7。

安装docker

#添加yum 源
# sudo tee /etc/yum.repos.d/docker.repo <<-'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF #安装docker-engine
# yum update
# yum install -y docker-engine
# systemctl enable docker
# systemctl start docker
# groupadd docker
# usermod -aG docker $USER

安装docker-compose

 pip install docker-compose

配置daocloud docker加速器

登录daocloud.io注册一个帐号后,即可访问到加速器的配置,然后在终端上执行,如下:

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://b24820b7.m.daocloud.io

下载getsentry/onpremise仓库

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

按以下步骤启动服务

  • step1,生成密钥,并将生成的结果回填到文件docker-compose.yml中的环境变量SENTRY_SECRET_KEY中。

    docker-compose run --rm web config generate-secret-key
services:
base:
build: .
environment:
# Run `docker-compose run web config generate-secret-key`
# to get the SENTRY_SECRET_KEY value.
SENTRY_SECRET_KEY: 's2z8av!g*99vlatf5(2d3ncy)b+j5df(01i&x!+#9l0lm3xc^^'
SENTRY_MEMCACHED_HOST: memcached
SENTRY_REDIS_HOST: redis
SENTRY_POSTGRES_HOST: postgres
SENTRY_EMAIL_HOST: smtp
# volumes:
# - ./data/sentry:/var/lib/sentry/files
  • step2,生成数据库,根据提示创建superadmin帐号

    docker-compose run --rm web upgrade
  • step3,运行所有容器

    docker-compose up -d
  • step4,sentry ui默认的端口是9000,访问[ip]:9000即可打开web管理界面

具体使用参考:https://github.com/getsentry/onpremise

如何集成到应用中

  • step1, pom.xml中引入io.sentry
        <dependency>
<groupId>io.sentry</groupId>
<artifactId>sentry-logback</artifactId>
</dependency>
  • step2:在src/resources/logback-spring.xml中配置appender,并添加相应的appender-ref引用。
		<!--写日志到sentry, 需要提供更多参数在sentry.properties中配置-->
<appender name="sentry" class="io.sentry.logback.SentryAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>WARN</level>
</filter>
</appender> <springProfile name="qc,prod">
<root level="INFO">
<appender-ref ref="asyncFileAppender"/>
<appender-ref ref="sentry"/>
</root>
</springProfile>
  • 在/etc/supervisor/conf.d/中的各个配置文件中增加环境变量SENTRY_DSN,该值是从sentry web 平台中创建项目生成的。
		vi /etc/supervisor/conf.d/ielong-portal.conf

		[program:ielong-portal]
directory = /opt/ibuild ; 程序的启动目录
command = java -jar ielong-portal-1.0-SNAPSHOT.jar --spring.profiles.active=qc ; 启动命令,可以看出与手动在命令行启动的命令是一样的
environment=SENTRY_DSN="http://eb5c47da4a5942188c62da86ffc19cab:639141c14bf649be8fca803f30aeeb66@192.168.0.1111:9000/2"
autostart = true ; 在 supervisord 启动的时候也自动启动
startsecs = 30 ; 启动 5 秒后没有异常退出,就当作已经正常启动了
autorestart = true ; 程序异常退出后自动重启
startretries = 3 ; 启动失败自动重试次数,默认是 3
user = root ; 用哪个用户启动
redirect_stderr = true ; 把 stderr 重定向到 stdout,默认 false
stdout_logfile_maxbytes = 20MB ; stdout 日志文件大小,默认 50MB
stdout_logfile_backups = 20 ; stdout 日志文件备份数
; stdout 日志文件,需要注意当指定目录不存在时无法正常启动,所以需要手动创建目录(supervisord 会自动创建日志文件)
stdout_logfile = /var/log/ielong-portal.log

centos7 sentry部署指南的更多相关文章

  1. Centos7操作系统部署指南

    一.硬件环境: Dell R620 二.软件环境: Centos6.4 X86_64 +KVM Windows7+vnc 三.安装说明 操作系统更新之迅速,让作为新手的系统运维人员有点措手不及,相对于 ...

  2. docker在CentOS7下部署指南

    docker只支持CentOS7.x系统,所以近期根据docker官网指南自己搭建了一套,供大家参考. 1.部署Centos7.x系统,查看系统版本. 2.执行 sudo yum update 更新到 ...

  3. (转)Centos7上部署openstack ocata配置详解

    原文:http://www.cnblogs.com/yaohong/p/7601470.html 随笔-124  文章-2  评论-82  Centos7上部署openstack ocata配置详解 ...

  4. 在 CentOS7 上部署 MySQL 主从

    在 CentOS7 上部署 MySQL 主从 通过 SecureCRT 连接至 MySQL 主服务器: 找到 my.cnf 文件所在的目录: mysql --help | grep my.cnf 一般 ...

  5. 在 CentOS7 上部署 zookeeper 服务

    在 CentOS7 上部署 zookeeper 服务 1 用 SecureCRT 或 XShell 等 Linux 客户端工具连接至 CentOS7 服务器: 2 进入到 /usr/local/too ...

  6. 首发福利!全球第一开源ERP Odoo系统架构部署指南 电子书分享

    引言 Odoo,以前叫OpenERP,是比利时Odoo S.A.公司开发的一个企业应用软件套件,开源套件包括一个企业应用快速开发平台,以及几千个Odoo及第三方开发的企业应用模块.Odoo适用于各种规 ...

  7. GIT-Linux(CentOS7)系统部署git服务器

    GIT-Linux(CentOS7)系统部署git服务器 root账号登录 一. 安装并配置必要的依赖关系在CentOS系统上安装所需的依赖:ssh,防火墙,postfix(用于邮件通知) ,wget ...

  8. 在阿里云ECS CentOS7上部署基于MongoDB+Node.js的博客

    前言:这是一篇教你如何在阿里云的ECS CentOS 7服务器上搭建一个个人博客的教程,教程比较基础,笔者尽可能比较详细的把每一步都罗列下来,包括所需软件的下载安装和域名的绑定,笔者在此之前对Linu ...

  9. CentOS7.4部署Python3+Django+uWSGI+Nginx

    CentOS7.4部署Python3+Django+uWSGI+Nginx http://www.showerlee.com/archives/2590

随机推荐

  1. AngularJS学习之 登录表单 清爽验证(边学边更新)

    注册过程的确好多需要验证的,但是注册成功之后的登录就简单多了, 只要用户 输入 用户名和密码, ajax向后台提交登录请求, 根据返回的结果确定用户名或者密码是否正确即可登录. 所以这个登录表单的验证 ...

  2. 一文读懂商业智能(BI):企业数据分析的中枢

    商业智能(BI)大家可能早已耳熟能详.从早期的报表自动化,到现在的复杂灵活分析,多平台支持,优秀的人机互动,多数据抽取,大数据整合,甚至和当下最火的人工智能都有结合点.可能一提到BI,大家都会自然而然 ...

  3. 类与接口(三)java中的接口与嵌套接口

    一.接口 1. 接口简介 接口: 是java的一种抽象类型,是抽象方法的集合.接口比抽象类更加抽象的抽象类型. 接口语法: [修饰符] [abstract] interface 接口名 [extend ...

  4. 从零自学Java-3.在程序中存储和修改变量信息

    1.创建变量: 2.使用不同类型的变量: 3.在变量中存储值: 4.在数学表达式中使用变量: 5.把一个变量的值赋给另一个变量: 6.递增/递减变量的值. 程序Variable:使用不同类型的变量并赋 ...

  5. HDFS Lease Recovey 和 Block Recovery

    这篇分析一下Lease Recovery 和 Block Recovery hdfs支持hflush后,需要保证hflush的数据被读到,datanode重启不能简单的丢弃文件的最后一个block,而 ...

  6. Percona Xtradb Cluster的设计与实现

    Percona Xtradb Cluster的设计与实现   Percona Xtradb Cluster的实现是在原mysql代码上通过Galera包将不同的mysql实例连接起来,实现了multi ...

  7. 如何使用 Packer 在 Azure 中创建 Windows 虚拟机映像

    Azure 中的每个虚拟机 (VM) 都是基于定义 Windows 分发和操作系统版本的映像创建的. 映像可以包括预安装的应用程序和配置. Azure 应用商店为最常见的操作系统和应用程序环境提供了许 ...

  8. QtDesigner与程序设计模式

    在我的上一篇博文中提到我认识到UI设计的重要性.在这里将解析一下使用QtDesigner设计UI进行程序GUI的设计,QtDesigner的.ui文件可以转化为许多的程序代码,比如我知道的就有:c++ ...

  9. Jmeter用于接口测试中【接口耦合关联的实现】

    Jmeter用于接口测试时,后一个接口经常需要用到前一次接口返回的结果,应该如何获取前一次请求的结果值,应用于后一个接口呢,拿一个登录的例子来说明如何获取. 1.打开jmeter, 使用的3.3的版本 ...

  10. 解决iPhone滑动时滑到另一个层级导致卡顿问题

    问题概览: 两个div都可以滑动时,会造成滑动顶层div时,底层div也会跟着滑动.如图示. 解决方法: 添加CSS即可. 代码如下 * { -webkit-overflow-scrolling: t ...