在Qt中使用Sentry在线收集日志

在Qt中使用Sentry在线收集日志

本文为转载,仅用于收藏目的,版权归原作者所有,如有侵权立即删除
原文链接

前言

工欲善其事,必先利其器。

软件工程越来越复杂,一定要依赖现代化的方式,帮助我们快速定位,分析问题。

这里我们从日志相关3大功能,log、minidump和performance展开,讲述如何在Qt中使用Sentry在线收集日志

关于Sentry

Sentry平台,从简单的说是一个在线日志收集平台。从复杂说的可以帮我们处理从bug发生、定位、源码追溯、bug管理、修复、追踪,甚至是关联git和ci等一系列复杂流程。

使用Sentry是为了帮助我们从繁琐、复杂的日志收集工作中解放出来,提升开发效率。同时Sentry几乎支持全平台全语言,也提供http接口方便各类框架接入,保证了扩展性和适用性。

如果希望更深入了解Sentry,可以直接访问Sentry官网: https://sentry.io/welcome/

Sentry是一个开源平台,可以通过docker部署Sentry到本地离线环境,或者到自己的公网服务器。

如果不想自己部署,也可以直接使用在线版的Sentry,但是这个针对不同使用量收费不同,也有一些限制。自己部署则完全免费也无功能限制。初次使用推荐到Sentry官网注册,全程操作不到5分钟即可完成。

Sentry已经提供了C++ SDK,如果想直接使用Sentry提供的C++ SDK,可以参考:https://docs.sentry.io/platforms/native/

Sentry接入

见原文

Sentry局限性

事件延迟
虽然Sentry是在线日志收集系统,但是不代表post完后数据可以立即刷新出来。一般的log可能有几秒到几十秒延迟,minidump和performance可能有几十秒甚至几分钟级别延迟。追求低延迟可以考虑自己部署Sentry。我自己部署到本地的Sentry,延迟就明显比官方在线版本的低。
网络可用性
官方在线版本Sentry的服务器,毕竟是部署在国外,没有代理加速的话打开会很慢,极端情况下还会丢数据(上传失败)。如果要追求高可用性,建议还是自己部署Sentry。
性能
和那些每秒万级别,几十万级别的日志系统不同。Sentry这边处理速度明显要慢很多。我自己部署的Sentry,用的8代i7 CPU,16G内存,SSD硬盘。对事件处理速度峰值也在几百每秒,再高的话就处理不过来了。当然这个问题可以通过加CPU、加内存、加硬盘解决。但是说到底Sentry性能还是受限,对于大并发量的log,建议还是通过文件方式存储在本地。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值