使用 AWS Lambda InfluxDB 模板轻松监控 Lambda 函数

导航到

AWS Lambda 是一种无服务器计算服务,允许您在不管理服务器的情况下运行代码。Lambda 提供自动扩展,并且仅按计算时间计费,因此您不需要为未使用的资源付费。一些常见的用例包括文件处理、流处理,以及作为 Web 和移动应用程序的后端。AWS Lambda 函数可以通过外部 HTTP 请求以及由 200 多个不同的 AWS 服务触发的事件进行调用。

为了使用 InfluxDB 更轻松地监控您的 AWS Lambda 函数,我们已创建了一个预构建模板,它可以轻松地将 Lambda 函数指标导入 InfluxDB。

InfluxDB 模板是什么?

在深入了解设置 AWS Lambda 模板之前,让我们先了解一下 InfluxDB 模板 究竟是什么。InfluxDB 模板是一组工具,允许 InfluxDB 用户共享预制的监控解决方案。

AWS Lambda Template - InfluxDB Template

模板允许您通过单个 YAML 文件定义您的整个监控配置。这包括数据源、仪表板和警报。所有这些都可以配置,然后通过单个命令导入到 InfluxDB。模板非常适合快速入门并学习如何使用 InfluxDB。一旦设置完成,您就可以非常轻松地自定义或扩展模板以满足您的特定用例。

InfluxDB 模板具有以下特点:

  • 全面性:通过配置数据源、仪表板和警报来定义和打包整个监控解决方案。这种复杂程度使您能够立即开始,无需耗时来回沟通。
  • 面向开发者:InfluxDB 模板与当今开发者团队使用的现代开发者工具一起工作。使用 YAML 编写,通过 GitHub 分发,并开源许可 Apache 2.0,这些模板对开发者来说易于创建和共享。
  • 快速交付价值:构建和共享涵盖各种监控解决方案的模板,以便更快、更轻松地获得更好的洞察。可以组合或更改模板,以确保它们适合您的项目——让您有更多时间关注它。

如何设置 AWS Lambda 模板

要开始使用模板,您首先需要一个运行的 InfluxDB 实例。最快的方法是使用 InfluxDB Cloud,但如果您更愿意,也可以在您的机器上启动一个开源实例。

一旦进入 InfluxDB UI,您需要导航到 设置 选项卡并选择 模板。然后,您需要粘贴以下来自 AWS Lambda 模板存储库 的 URL

https://raw.githubusercontent.com/influxdata/community-templates/master/aws_lambda/lambda.yml

如果您已经在计算机上配置了InfluxDB CLI,您也可以通过以下命令在命令行中安装模板:

influx apply -u https://raw.githubusercontent.com/influxdata/community-templates/master/aws_lambda/lambda.yml

运行此模板将在您的账户中创建一个名为AWS Lambda的仪表板,并创建一个用于存储数据的单个桶。

现在模板已安装,您需要创建一个Lambda函数并调用它,以便将一些数据传入InfluxDB。如果您还没有创建函数,可以使用模板提供的示例函数,并将其代码粘贴到您的NodeJS Lambda函数中。

该模板期望数据来自Telegraf,因此您还需要一个运行的Telegraf实例。如果您需要设置Telegraf的帮助,可以参考文档中的入门指南。模板特别使用了Telegraf AWS Cloudwatch插件和Lambda命名空间。

设置好一切后,您可以使用您喜欢的任何工具向Lambda函数发送请求。模板还提供了一个简单的shell脚本,用于快速测试。在此阶段,您可以刷新仪表板,等待片刻后应该会看到一些类似以下的结果

Lambda function monitoring

下一步

此模板默认提供的指标包括调用次数错误统计节流统计。如果您想更进一步,可以通过更改配置来引入其他Lambda指标,例如持续时间并发量,来扩展模板。您还可以通过修改仪表板和添加不同的图表来以不同的方式使用您当前存储的数据。

如果您想了解更多关于制作模板的信息,请务必查阅文档。InfluxDB社区还创建了许多用于最流行项目的模板,以节省您的时间和精力,所以在从头开始构建之前,请务必查看它们。如果您创建了一些新内容,您可以通过提交到我们的社区模板仓库与社区分享。