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、我国软件产业:软实力跑出加速度!2979
  2. 2、Cygnet集团和曼大联合推出世界首款高速3D绕线机!3421
  3. 3、参会指南来袭中山LED智能照明驱动大会抢先看1548
  4. 4、新型植入式生物传感器完成任务后可自行降解3359
  5. 5、冠科科技将携LED玉米灯角逐户外类“年度创新产品”奖996
  6. 6、全球灯泡价格微幅下滑,欧洲LED人因照明产品受追捧2651
  7. 7、北京术锐完成数千万元A轮融资,拓展手术机器人适应症范围2973
  8. 8、​中兴T8000路由器助力吉视进入超带宽骨干网时代4761
  9. 9、苹果手机用板进入量产,燿华软硬结合板将在7月先出货3563
  10. 10、上半年工业增速6.7%,制造业高端化提速1434
全部评论(0)
我也有话说
0
收藏
点赞
顶部