依赖说明

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

最新文章

  1. 基于HT for Web 3D呈现Box2DJS物理引擎
  2. 洛谷P3128 [USACO15DEC]最大流Max Flow [倍增LCA]
  3. Linux 之 shell 比较运算符
  4. RDIFramework.NET — 基于.NET的快速信息化系统开发框架 - 5.3 数据库连接管理模块
  5. 数据库连接池(DBCP:为数据统一建立一个缓冲池,现在企业开发使用)
  6. Hadoop--初识Hadoop
  7. java32至md5加密
  8. linux下文件和目录
  9. Java之static作用的全方位总结
  10. _pvp
  11. 让jQuery的contains方法不区分大小写
  12. poj 1094 Sorting It All Out 拓补排序
  13. Linux 动态链接库(.so)的使用
  14. 数据库表结构转成设计书,PowerDesigner 表格导出为excel
  15. centos已经安装了libestr但在安装libee时却提示未安装
  16. “吃神么,买神么”的第一个Sprint计划(第二天)
  17. 为阿里云域名配置免费SSL支持https加密访问简单教程
  18. 学习:java代码检测
  19. 做文件上传下载时报这个错com.alibaba.fastjson.JSONException: illegal identifier : \
  20. C# Timer 用法

热门文章

  1. js 四种调用模式和this的关系总结
  2. js替换数组中字符串实例
  3. CSS3 中的 box-sizing属性
  4. JavaScript语法详解:if语句&amp;for循环&amp;函数
  5. Oracle EBS INV 获取现有量等值
  6. [IDEA_4] IDEA 从 GitHub 上 pull 项目到本地
  7. Linux查看系统负载(CPU和MEM考虑)
  8. 0基础的人如何入门 Python ?Python难么?
  9. MySQL递归查询父节点或递归查询子节点-陈远波
  10. Linux vsftpd 配置文件详解