Sentry是一个实时事件的日志聚合平台。它专门监测错误并提取所有有用信息用于分析,不再麻烦地依赖用户反馈来定位问题。
docker pull redis:6.0.9
docker pull postgres:13.3
docker pull sentry:9.1.2
备注:redis和postgres只需要以最简单的方式启动即可,因为不使用外部端口等
用来存放redis的配置文件与持久化文件,日志文件等
# 新增目录
mkdir -p /www/sentry/redis/ && mkdir -p /www/sentry/redis/data/
docker run -d --privileged=true --restart=always -v /www/sentry/redis/data:/data --name sentry-redis redis:6.0.9
用来存放postgres的配置文件与持久化文件,日志文件等
# 新增目录
mkdir -p /www/sentry/postgres/ && mkdir -p /www/sentry/postgres/data/
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
docker run --rm sentry:9.1.2 config generate-secret-key
比如key为 zrebkeuu1m#7c9m4zu649b1%g#j#6e*5_v&t-xsj&*d@z2alfv
# 初始化数据结构,在升级过程中,系统将提示您创建将充当超级用户的初始用户
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
sentry:sentry的web服务
sentry-celery:sentry的定时任务,活性检测等
sentry-worker:业务处理,数据持久化,报警等
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
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
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
pip3 install --upgrade 'sentry-sdk[flask]==0.10.2'
import sentry_sdk
from sentry_sdk.integrations.flask import FlaskIntegration
sentry_sdk.init(
dsn="http://[email protected]:9000/1",
integrations=[FlaskIntegration()]
)