博客
关于我
Sentry搭建和使用
阅读量:313 次
发布时间:2019-03-03

本文共 2256 字,大约阅读时间需要 7 分钟。

Sentry实时错误监控工具部署指南

前言

Sentry是一个开源的实时错误收集工具,通过其独特的技术,能够帮助开发者快速定位线上应用的异常问题。基于Sentry工具,本人成功监控了一个基于Vue的线上项目,实现了实时异常监控与问题修复。

安装步骤

1. 准备环境(Linux)

为了顺利完成Sentry的安装,建议先确保以下环境:

  • 已安装Git
  • 准备一台稳定的CentOS环境
  • 克隆Sentry代码仓库,并切换至remotes/origin/releases/9.1.x分支

2. 开始安装

第一轮安装失败

运行安装脚本时,出现如下错误:

toomanyrequests: You have reached your pull rate limit

解决方法:

  • 登录Docker Hub账号
  • 确保Docker Hub的Pull限流限制已解除
  • 第二轮安装失败

    再次运行安装脚本,仍然出现错误:

    ERROR: could not find an available, non-overlapping IPv4 address pool

    解决方法:

  • 修改docker-compose.yml文件,调整网络设置
  • 确保各服务共享同一自定义网络
  • 第三轮安装成功

    经过上述调整后,安装完成后可以看到以下服务状态:

    onpremise_workeronpremise_webonpremise_crononpremise_postgresonpremise_redisonpremise_memcachedonpremise_smtp

    访问Sentry

    通过docker ps可以确认Sentry服务已正常运行,访问以下地址即可进入Sentry界面:

    http://localhost:9000

    Vue项目配置Sentry

    1. Sentry端配置

    部署完成后,访问Sentry界面创建项目。建议选择“Vue”作为项目类型,设置相应的访问权限组(Team)。

    2. 获取API Auth Tokens

    创建项目后,生成API Auth Token,用于后续配置。

    3. Vue项目配置

    在项目入口文件中(如main.js)添加Sentry初始化代码:

    import Vue from 'vue'import Sentry from '@sentry/browser'import { Vue as VueIntegration } from '@sentry/integrations'import { Integrations } from '@sentry/tracing'import store from '@/store'Sentry.init({  dsn: 'http://your-dsn-url',  integrations: [    new VueIntegration({      Vue,      attachProps: true,    }),    new Integrations.BrowserTracing(),  ],  release: 'your-release-name',  logErrors: true,})Sentry.setUser({  username: store.state.user.userNameEn,})Sentry.setTag(store.state.user.userNameEn, store.state.user.userNameEn)

    4. 安装依赖

    确保安装以下包:

    npm install @sentry/browser @sentry/integrations @sentry/tracing

    5. 上传sourcemap

    使用sentry-cli工具上传sourcemap:

    sentry-cli login

    根据提示输入Sentry项目Token,生成.sentryclirc文件。

    上传命令:

    sentry-cli releases files your-project@dev upload-sourcemaps --url-prefix '~/js' './dist/js'

    配置@Sentry/webpack-plugin

    vue.config.js中添加插件配置:

    new SentryWebpackPlugin({  release: 'your-release-name',  include: path.join(__dirname, './dist/js/'),  ignore: ['node_modules', 'vue.config.js'],  configFile: '.sentryclirc',  urlPrefix: '~/js',})

    常见问题

  • Linux环境下自动上传sourcemap失败
    • 错误提示:
      error: command failed
    • 解决方法:
      • 使用脚本结合构建和上传:
      npm run build && sentry-cli releases files your-project@dev upload-sourcemaps --url-prefix '~/js' './dist/js'
  • 错误信息上报
    • 确保Sentry项目已创建,且DSN地址正确。
    • 确保sourcemap文件已成功上传。
  • 通过以上步骤,可以实现Sentry实时监控和错误分析,提升项目质量和用户体验。

    转载地址:http://qgxm.baihongyu.com/

    你可能感兴趣的文章
    OpenCV与AI深度学习 | 实战 | 使用OpenCV确定对象的方向(附源码)
    查看>>
    OpenCV与AI深度学习 | 实战 | 使用YOLOv8 Pose实现瑜伽姿势识别
    查看>>
    OpenCV与AI深度学习 | 实战 | 使用YoloV8实例分割识别猪的姿态(含数据集)
    查看>>
    OpenCV与AI深度学习 | 实战 | 使用姿态估计算法构建简单的健身训练辅助应用程序
    查看>>
    OpenCV与AI深度学习 | 实战 | 基于OpenCV和K-Means聚类实现颜色分割(步骤 + 代码)
    查看>>
    OpenCV与AI深度学习 | 实战 | 基于YoloV5和Mask RCNN实现汽车表面划痕检测(步骤 + 代码)
    查看>>
    OpenCV与AI深度学习 | 实战 | 基于YOLOv9+SAM实现动态目标检测和分割(步骤 + 代码)
    查看>>
    OpenCV与AI深度学习 | 实战 | 基于YOLOv9和OpenCV实现车辆跟踪计数(步骤 + 源码)
    查看>>
    OpenCV与AI深度学习 | 实战 | 文本图片去水印--同时保持文本原始色彩(附源码)
    查看>>
    OpenCV与AI深度学习 | 实战 | 通过微调SegFormer改进车道检测效果(数据集 + 源码)
    查看>>
    OpenCV与AI深度学习 | 实战—使用YOLOv8图像分割实现路面坑洞检测(步骤 + 代码)
    查看>>
    OpenCV与AI深度学习 | 实战篇——基于YOLOv8和OpenCV实现车速检测(详细步骤 + 代码)
    查看>>
    OpenCV与AI深度学习 | 实战|OpenCV实时弯道检测(详细步骤+源码)
    查看>>
    OpenCV与AI深度学习 | 实用技巧 | 使用OpenCV进行模糊检测
    查看>>
    OpenCV与AI深度学习 | 实践教程|旋转目标检测模型-TensorRT 部署(C++)
    查看>>
    OpenCV与AI深度学习 | 工业缺陷检测中数据标注需要注意的几个事项
    查看>>
    OpenCV与AI深度学习 | 干货 | 深度学习模型训练和部署的基本步骤
    查看>>
    OpenCV与AI深度学习 | 手把手教你用Python和OpenCV搭建一个半自动标注工具(详细步骤 + 源码)
    查看>>
    OpenCV与AI深度学习 | 水下检测+扩散模型:或成明年CVPR最大惊喜!
    查看>>
    OpenCV与AI深度学习 | 深入浅出了解OCR识别票据原理
    查看>>