对AWS Lambda的支持添加到了AWS X-Ray分布式跟踪服务中

栏目: 后端 · 发布时间: 8年前

内容简介:对AWS Lambda的支持添加到了AWS X-Ray分布式跟踪服务中

AWS X-Ray 分布式跟踪服务4月份发布的 通用版本(General Availability,GA) 中,Amazon已经为 X-Ray添加了对AWS Lambda的支持 ,它能够记录函数调用和相关的元数据,通过AWS Console进行图像化展示并进行分析以便于调试或故障的恢复。

通过AWS Console,我们能够将X-Ray用于已有的Lambda函数,只需导航至函数的配置Tab标签,滑动至“Advanced settings”,并选中“Enable active tracing”选择框,或者也可以通过 AWS Command Line Interface (CLI) 来更新函数的追踪配置:

$ aws lambda update-function-configuration --tracing-config '{"Mode": "Active"}' --function-name 'my-function-name-or-ARN'

AWS博客 中包含了一篇 Randall Hunt 所撰写的文章,他是AWS的开发人员布道师,这篇文章指出,当启用跟踪模式时,Lambda将会试图跟踪函数,除非它被上游的服务显式地禁用掉。当Lambda函数触发的时候,将会生成trace并开始进行数据捕获,通过AWS Console能够以可视化的方式展现应用资源和它们之间的连接(edges):

对AWS Lambda的支持添加到了AWS X-Ray分布式跟踪服务中

AWS Console中,X-Ray跟踪的可视化展现(图片来源于 Randall Hunt

每个服务或函数收集到的数据被称之为 segment (类似于 OpenTracing API规范 中的 Span ),以JSON数据的方式来进行存储。这种segment的样本可以通过X-Ray daemon发送至AWS X-Ray服务,而X-Ray daemon必须要和Lambda函数在一起运行。Hunt指出, X-Ray daemon 确实会消耗Lambda函数关联的一点资源,但是如果函数接近特定的内存极限的话,Lambda将会尝试杀掉X-Ray daemon,避免出现内存溢出的错误。

segment代表了一个工作单元,包含了请求和响应的时间,另外还有可选的子segment(sub-segment),它们会包含更小的工作单元。 子segment 可以启动和停止,并且添加了一些额外的元数据,这是通过针对X-Ray的特定语言SDK实现的。目前, 针对 Java 8运行时的X-Ray SDK 、 针对Node.js 4.3的X-Ray SDK 以及一些更新的运行时已经得到了官方的支持,针对其他语言的非官方支持托管在GitHub上,比如 Fleece 项目所提供的对 Python 的支持。

针对应用的请求会通过一个trace来进行跟踪。trace会收集单个请求所生成的所有segment。这意味着我们可以很容易地跟踪在请求生命周期中,已支持的服务所发出的所有的事件,比如API网关调用、应用/服务函数的处理以及对X-Ray所支持的数据存储(比如AWS DynamoDB)的所有操作,从而能够理解哪里出现了错误以及延迟发生在什么地方。

关于AWS X-Ray所支持的AWS服务的更多细节可以参考“ Integrating AWS X-Ray with Other AWS Services ”文档。关于AWS X-Ray以及相关跟踪术语可以参考InfoQ之前的新闻,这篇新闻是在2016 AWS re:invent会议之后发布的。

X-Ray 服务可以通过美国东部(北弗吉尼亚)、美国西部(加州北部)、美国东部(俄亥俄)、美国西部(俄勒冈州)、欧盟(爱尔兰)、欧盟(法兰克福)、南美洲(圣保罗)、亚太(东京)、亚太(首尔)、亚太(悉尼)以及亚太(孟买)的这些Region来进行使用。其他的信息可以通过 AWS Lambda 页面和 Troubleshooting Lambda-Based Applications 文档来进行获取。

查看英文原文: AWS Lambda Support Added to AWS X-Ray Distributed Tracing Service


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Design systems

Design systems

Not all design systems are equally effective. Some can generate coherent user experiences, others produce confusing patchwork designs. Some inspire teams to contribute to them, others are neglected. S......一起来看看 《Design systems》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具