提升 EdgeWorker 可观测性:使用 DataStream 设置日志功能

关于作者:AJ Johnson 是 Akamai Technologies 的高级产品经理,专注于平台即服务(PaaS),并领导旨在扩展和优化公司云平台能力的战略计划。

询问任何开发者,他们都会告诉您,良好且及时的应用遥测对于构建、维护和优化应用程序至关重要。没有适当的反馈,开发人员就如同在黑暗中摸索,难以识别逻辑错误、合规性问题以及优化空间。应用日志记录是开发过程的核心部分,在代码从概念走向生产的过程中提供关键洞察。而长期以来,这一功能在 EdgeWorkers 中一直缺失。

EdgeWorkers 是全球分布最广的无服务器边缘计算平台,使开发人员能够将业务逻辑放置在边缘,以减少延迟、加快响应时间、提高性能,并为全球客户提供更好的用户体验。

我们很高兴地宣布,EdgeWorkers 的可观测性得到了极大改善!自 Akamai 推出 EdgeWorkers 与 DataStream(一个免费的集中式数据收集和交付平台)的集成以来,已经过去了几个月。借助这项新的日志记录集成,开发人员现在可以为其关键任务的 EdgeWorker 工作负载设置日志。按照日志记录的标准,提供了多种详细级别:跟踪、调试、信息、警告和错误。控制日志级别为应用程序开发人员提供了灵活性和选项,以便排查其 EdgeWorkers 逻辑故障。

在推出 DataStream 集成之前,EdgeWorker 开发人员会使用高级标头和手动检查来调试其代码和工作流,这种方式繁琐、耗时且容易出错,很容易错过关键洞察。此外,借助完整的日志记录功能,开发人员可以更轻松地检测那些在简单 cURL 请求中可能无法显现的异常情况。

DataStream 集成的一个便捷特性是,无需编辑和重新部署代码即可修改在 EdgeWorkers 代码包中定义的日志级别。使用日志"覆盖",可以根据需要切换函数日志以设置日志级别和详细程度,允许用户仅在需要更细粒度信息之前记录错误。这样做的好处是灵活性,同时控制日志量以避免额外的可观测性成本。请参阅以下示例,了解如何通过 UI 或使用 CLI 控制日志级别。

使用 UI 设置日志级别(无需重新部署代码)

使用 Akamai CLI,您可以通过类似以下命令设置日志级别:

akamai ew log-level set 82236 production debug;

自该集成推出以来,我们已经吸纳了众多 Akamai 的 EdgeWorker 客户,他们已配置了应用程序日志流。EdgeWorker 客户可以选择将其日志数据发送到他们选择的目的地,例如流行的内部可观测性工具,如 Splunk、New Relic 等。有关支持的端点的完整列表,请参阅 DataStream 目的地列表。

随着许多客户采用这一新功能,早期反馈是积极的。一位欧洲游戏客户提到,他们使用新的 JavaScript 日志记录功能在上线前隔离了新业务逻辑的问题。另一位客户强调了拥有可用日志对于更快发现问题的重要性。

以下是 EdgeWorker 日志记录的主要目的地:

EdgeWorker DataStream 主要目的地

  • AWS S3
  • Splunk
  • Datadog
  • Google Cloud Storage
  • HTTPS
  • New Relic
  • Azure Storage
  • S3 兼容存储(包括 Akamai 的对象存储)
  • TrafficPeak
  • Sumo Logic
EdgeWorker 日志记录入门

为您的 EdgeWorkers 设置日志记录非常简单,前提是您已经在代码包中添加了日志消息。首先,确保您的合约中包含了用于 EdgeWorkers 的 DataStream。这是一项免费服务,但需要合约授权才能启用。要添加用于 EdgeWorkers 的 DataStream,请联系您的客户代表。然后,按照以下步骤启用服务:

  1. 通过 Control Center 的通用服务部分导航到 DataStream 服务
  2. 选择"创建 EdgeWorkers 流"
  3. 为您的流命名
  4. 最后,从结构化或 JSON 格式中选择,并选择目标目的地。

就这样!您现在可以编写您的 EdgeWorkers 日志记录逻辑了,一旦激活,即可启用 Datastream 来使用它。要了解更多信息并获得完整的分步说明,请参阅有关启用和配置 EdgeWorker 日志流的详细文档。请参考 EdgeWorker JavaScript DataStream 设置页面。

以下是一些设置过程的示例截图:

设置 EW 日志流

配置日志流目的地

EdgeWorker 可观测性有哪些新功能和即将推出的功能?

未来的改进设想包括启用 OpenTelemetry 格式、支持数据本地化,以及可能允许基于属性的流式传输,而不是按每个 EdgeWorker 进行跟踪。关于可观测性方面,您可以在 ACC 门户中的 EdgeWorkers 执行报告中期待改进,因为我们很快将添加挂钟时间跟踪、初始化指标并简化报告。

一如既往,如果您对如何改进 EdgeWorker 可观测性或服务的任何其他方面有任何疑问或建议,请联系您的客户代表,或在我们社区网站上给我们留言。祝您日志记录愉快!

了解更多关于 Akamai EdgeWorkers 的信息

查看这些 Akamai 资源,了解 Akamai EdgeWorkers 如何使您的组织受益:

相关推荐
乌恩大侠6 分钟前
「AI-RAN」Aerial,使用ORAN C1模式
人工智能·5g·spark·o-ru·ai-ran
Zhao-Jichao10 分钟前
AI Prompting for Everyone 课程笔记 - 05 使用深度搜索 Using Deep Research
人工智能·笔记
feasibility.21 分钟前
世界模型WSM技术解读:SLAM内化为具身智能的状态记忆,纯RGB机器人导航反超RGB-D
人工智能·机器人·aigc·slam·导航·具身智能·世界模型
alonglong40 分钟前
本地模型部署避坑:HF_HOME 缓存指向 + macOS fd 上限 256
人工智能
注塑机数据采集联网1 小时前
数据采集网关入门:ZK-D1/D3从零开始构建你的数据运用
大数据·数据仓库·人工智能·物联网·数据库架构·注塑机网关
hantmac1 小时前
不记得文件名时,Mac 上的搜索还能怎么做?
人工智能·macos
郝学胜-神的一滴1 小时前
游戏设计:原型与开发 18:Unity入门的第一课
人工智能·程序人生·游戏·ui·unity·游戏引擎
天树星智源1 小时前
每个 token 各配其师:token 级多教师蒸馏拉高 5.9 分
人工智能
米饭是菜qy1 小时前
深度学习Transformer详细介绍
人工智能·深度学习·transformer
eric-sjq1 小时前
小思框架 · 30M 级长上下文新架构对比技术报告
人工智能·python·深度学习·语言模型