CloudWatch用于错误监视的优点和缺点

很多工具可以帮助开发人员设置日志转发,以监视错误和异常。


作为开发人员,通常喜欢Lambda函数。它们使开发人员能够专注于功能的目的,并节省了编写和部署代码的大量时间。同时,在生产中使用Lambda函数的最大挑战之一是问题的故障排除。这是由于代码与用户如何体验应用程序之间的可见性差距,以及缺少专门解决无服务器环境中此关键问题的监视工具所致。


当然,亚马逊公司的监视工具CloudWatch提供了一种跟踪功能指标并深入日志进行调试的方法。但是,梳理日志并不是开发人员要调试问题的方式,它需要几个小时。


很多工具可以帮助开发人员设置日志转发,以监视错误和异常。它们通常的工作方式如下:

CloudWatch用于错误监视的优点和缺点_软件科技_TV应用

使用预先配置的Cloud Formation堆栈来设置环境中的云资源和权限。


使用CloudWatch API将经过过滤的日志流化(通常使用Kinesis+Firehose)到自己的工具中。


将格式应用于摄取的日志,以更易用的方式显示错误和异常。


这个过程很棒。开发人员能够在几分钟内设置错误监控,而无需更改代码。另外,现在有了堆栈跟踪和有趣的函数详细信息,例如:


•功能存储器使用。


•函数调用时间。


•执行lambda函数的成本。


挑战性


现在,这是该方法面临的挑战:开发人员不喜欢该工具可以控制其AWS帐户,因为该工具正在使用假定角色来访问帐户信息。


堆栈跟踪仍然很难阅读。这是一个例子:


许多运行时场景都丢失了,例如其他线程以及配置其他参数的能力。看不到跟踪或事务,以便能够调试整个应用程序中的问题以关联前端和后端行为。


因此,尽管从CloudWa。tch进行日志转发比使用CloudWatch本身要好,但这并非没有缺陷。


通过代码检测报告错误


接下来,尝试通过代码检测报告错误。为了进行试用,使用了开源工具Sentry。


Sentry正在使用运行时检测来突出显示异常,而不是在我的帐户上使用假定角色来设置日志转发。这消除了为第三方工具提供对开发人员AWS账户访问权限的担忧。


开发人员拥有所有函数场景,包括request_id和执行时间。可以使用aws_request_id之类的参数来了解该错误的下游影响。


深度链接到CloudWatch日志可节省搜索正确的日志流和时间窗口的时间。


缺点是使用这种方法无法获得内存使用或函数调用时间,但是无论如何都无法移动这些数字。


运行时仪器的另一个未来好处是,它使开发人员可以监视分布式跟踪,以便确定哪些特定部分正在减慢其函数执行速度。因此,能够确保更好的用户体验并节省AWS成本。


无服务器承诺为开发团队带来更少的管理负担,但是故障排除的局限性会抵消所节省的时间。重要的是要考虑提供功能场景而不增加风险和成本的监视工具。CloudWatch和Sentry之间的比较突出了这些因素及其重要性。



44
131
0
14

相关资讯

  1. 1、戴尔发布全新安全产品,IT员工可以自定义服务器启动过程3048
  2. 2、慧智微电子完成新一轮融资,将开发可重构射频前端芯片1783
  3. 3、LED显示屏厂家如何有效降低成本的浪费?4944
  4. 4、英飞凌将展示面向整个电能供应链的前沿技术和解决方案1563
  5. 5、真空压力传感器工作原理、作用、设置、故障3742
  6. 6、“京奇计划”后,奇虎360与京东云的CDN服务合作拉开序幕!773
  7. 7、加速度传感器可分析老年痴呆症的发生原因4703
  8. 8、MPU与MCU之间的界限已模糊:这里有你没看过的硬核科普3536
  9. 9、研究人员开发新型红外辐射传感器比普通传感器更灵敏2686
  10. 10、北斗卫星两项科研成果实现向厘米级转变,达到国内领先水平3696
全部评论(0)
我也有话说
0
收藏
点赞
顶部