将 Azure Monitor 指标与 Azure Functions 配合使用

Azure Functions 与 Azure Monitor 指标集成,可让你在执行期间分析函数应用生成的指标。 若要了解详细信息,请参阅 Azure Monitor 指标概述。 这些指标指示函数应用如何在应用服务平台上运行。 可以查看用于估算消耗计划成本的资源消耗数据。 若要调查函数执行的详细遥测数据,包括日志数据,还应在 Azure Monitor 中使用 Application Insights

可用指标

Azure Monitor 从一组受监视的资源(输入到时序数据库中)收集数值数据。 Azure Monitor 收集特定于 Functions 和基础应用服务资源的指标。

特定于函数的指标

有两个与函数相关的指标值得关注:

指标 Description
FunctionExecutionCount 函数执行计数指示函数应用执行的次数。 此值与函数在应用中运行的次数相关联。
FunctionExecutionUnits 函数执行单元是执行时间和内存使用情况的组合。 内存数据不是当前通过 Azure Monitor 提供的指标。 但是,如果要优化应用的内存使用情况,可以使用 Application Insights 收集的性能计数器数据。 Linux 上运行的高级和专用(应用服务)计划目前不支持此指标。

估算消耗计划成本时,会专门使用这些指标。

常规应用服务指标

除了特定于函数的指标外,应用服务平台还实现了更多指标,可用于监视函数应用。 有关完整列表,请参阅 可用于应用服务应用的指标

访问指标

可以使用 Azure 门户中的 Azure Monitor 指标资源管理器或使用 REST API 来获取 Monitor 指标数据。

以下示例使用 Monitor 指标来帮助估算在消耗计划中运行函数应用的成本。 若要详细了解如何估算消耗计划成本,请参阅 估算消耗计划成本

使用 Azure Monitor 指标资源管理器可以图形格式查看消耗计划函数应用的成本相关数据。

  1. Azure 门户中,访问您的函数应用。

  2. 在左侧面板中,向下滚动到 “监视 ”并选择“ 指标”。

  3. 指标中,选择函数执行计数总和用于聚合。 此选择将所选时间段内执行计数的总和添加到图表中。

    定义要添加到图表中的函数应用指标

  4. 选择“添加指标”并重复步骤 2-4,将“函数执行单位”添加到图表中。

生成的图表包含所选时间范围内(在本例中为 2 小时)两个执行指标的总和。

函数执行计数和执行单位图表

由于执行单位数远大于执行计数,因此图表仅显示执行单位。

此图显示两小时时间段内总共消耗了 11.1 亿个 Function Execution Units(以“MB 毫秒”度量)。 若要转换为 GB 秒,请除以 1,024,000。 在此示例中,函数应用消耗了 1,110,000,000 / 1,024,000 = 1,083.98 GB 秒。 将此值乘以 Functions 定价页上当前执行时间的价格,从而得出这两个小时的成本,假设你已经使用了所有免费提供的执行时间。

若要详细了解如何使用监视器资源管理器查看指标,请参阅 Azure 指标资源管理器入门

后续步骤

详细了解如何监视 Azure Functions: