在docker中部署sentry

1.sentry 是什么?

Sentry是一个实时事件的日志聚合平台。它专门监测错误并提取所有有用信息用于分析,不再麻烦地依赖用户反馈来定位问题。

2.利用docker部署sentry

2.1.下载镜像

docker pull redis:6.0.9
docker pull postgres:13.3
docker pull sentry:9.1.2

备注:redis和postgres只需要以最简单的方式启动即可,因为不使用外部端口等

2.2.redis相关操作

2.1 生成目录

用来存放redis的配置文件与持久化文件,日志文件等

# 新增目录
mkdir -p /www/sentry/redis/ && mkdir -p /www/sentry/redis/data/

2.2 启动redis

docker run -d --privileged=true --restart=always -v /www/sentry/redis/data:/data --name sentry-redis redis:6.0.9

2.3.postgres相关操作

2.1 生成目录

用来存放postgres的配置文件与持久化文件,日志文件等

# 新增目录
mkdir -p /www/sentry/postgres/ && mkdir -p /www/sentry/postgres/data/

2.2 启动postgres

docker run -d --privileged=true --restart=always  -e POSTGRES_PASSWORD=secret -e POSTGRES_USER=sentry -v /www/sentry/postgres/data:/var/lib/postgresql/data --name sentry-postgres postgres:13.3

2.4 生成秘钥(注意保存后面会使用)

docker run --rm sentry:9.1.2 config generate-secret-key

比如key为 zrebkeuu1m#7c9m4zu649b1%g#j#6e*5_v&t-xsj&*d@z2alfv

2.5 初始化数据结构

# 初始化数据结构,在升级过程中,系统将提示您创建将充当超级用户的初始用户
docker run -it --rm -e SENTRY_SECRET_KEY='zrebkeuu1m#7c9m4zu649b1%g#j#6e*5_v&t-xsj&*d@z2alfv' --link sentry-postgres:postgres --link sentry-redis:redis sentry:9.1.2 upgrade

2.6 sentry相关操作

sentry:sentry的web服务
sentry-celery:sentry的定时任务,活性检测等
sentry-worker:业务处理,数据持久化,报警等

2.6.1 启动sentry

docker run -d --privileged=true --restart=always -p 9000:9000 --name sentry -e SENTRY_SECRET_KEY='zrebkeuu1m#7c9m4zu649b1%g#j#6e*5_v&t-xsj&*d@z2alfv' --link sentry-redis:redis --link sentry-postgres:postgres sentry:9.1.2

2.6.2 启动sentry-celery

docker run -d --privileged=true --restart=always --name sentry-celery -e SENTRY_SECRET_KEY='zrebkeuu1m#7c9m4zu649b1%g#j#6e*5_v&t-xsj&*d@z2alfv' --link sentry-postgres:postgres --link sentry-redis:redis sentry:9.1.2 run cron

2.6.3 启动sentry-worker

docker run -d --privileged=true --restart=always --name sentry-worker-1 -e SENTRY_SECRET_KEY='zrebkeuu1m#7c9m4zu649b1%g#j#6e*5_v&t-xsj&*d@z2alfv' --link sentry-postgres:postgres --link sentry-redis:redis sentry:9.1.2 run worker

3.flask 接入sentry

3.1 安装sdk

pip3 install --upgrade 'sentry-sdk[flask]==0.10.2'

3.2 在初始化app的文件加入下面代码

import sentry_sdk
from sentry_sdk.integrations.flask import FlaskIntegration

sentry_sdk.init(
    dsn="http://18e75f3e314c4e2c819fee848e0ef50b@39.101.180.73:9000/1",
    integrations=[FlaskIntegration()]
)
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值