IBM Cloud Docs
监视 Code Engine

监视 Code Engine

深入了解使用 IBM Cloud® Code Engine部署的工作负载的性能。 度量值可帮助您找到瓶颈或预测可能的生产问题。

您可以使用 IBM Cloud® Monitoring 服务来监视 Code Engine 工作负载。Code Engine 将有关工作负载的所选信息转发到 Monitoring,以便您可以监视特定度量,例如请求,修订版和持续时间。

设置 IBM Cloud Monitoring 服务实例

要在 Monitoring中设置 Code Engine 客户度量仪表板,必须创建 Monitoring 实例,然后在要监视的 Code Engine 项目所在的区域中启用“平台度量”。 如果在多个区域中具有部署,那么必须供应 Monitoring 并为每个区域启用平台度量。 有关更多信息,请参阅 Monitoring 入门教程

要设置 Monitoring,

  1. 从 IBM Cloud 导航菜单中,选择 可观察性
  2. 选择监视
  3. 使用现有的 Monitoring 服务实例或创建新的服务实例。
  4. 在实例就绪后,通过单击 配置平台度量来启用平台度量。
  5. 选择区域,然后从该区域选择 Monitoring 实例。 如果在多个区域中具有部署,那么必须供应 Monitoring 并为每个区域启用平台度量。

您还可以通过选择 启动监视从 Code Engine 仪表板开始监视。

您可以通过创建仪表板模板的副本并对其进行编辑来调整仪表板。

访问 IBM Cloud Monitoring 度量

要在 Monitoring中查看 Code Engine 客户度量仪表板:

  1. 从 IBM Cloud 导航菜单中,选择 可观察性
  2. 选择监视
  3. 单击 打开仪表板 以打开监视实例的仪表板。
  4. 从导航菜单中,选择 仪表板->IBM->IBM Code Engine 项目概述仪表板->IBM->IBM Code Engine 函数概述。 如果在菜单中看不到 Code Engine 仪表板,那么可以通过选择 启动监视从 Code Engine 应用程序或作业开始监视。
  5. 选择 10M 时间线或更大的时间线。 由于“平台度量”数据具有 1 分钟粒度,因此显示度量的第一个时间线是 10M 时间线。

您还可以通过从 Code Engine“操作”菜单中选择 监视,随时启动 Monitoring 仪表板。

当您使用 IBM Cloud Monitoring 服务来监视 Code Engine 工作负载时,可能会在处理数据并在 Monitoring中提供数据之前发生延迟。 例如,在创建监视实例之后,显示有意义的监视数据需要几分钟时间。 请注意,监视数据可能需要大约 5 分钟才能在 Monitoring中显示。

可用于 Code Engine 的度量

表 1: 可用于 Code Engine的度量值
度量值名称
ibm_codeengine_application_actual_instances
ibm_codeengine_application_requested_instances
ibm_codeengine_application_not_ready_instances
ibm_codeengine_application_pending_instances
ibm_codeengine_application_desired_instances
ibm_codeengine_application_terminating_instances
ibm_codeengine_application_requests_total
ibm_codeengine_application_revision_count
ibm_codeengine_application_service_count
ibm_codeengine_application_route_count
ibm_codeengine_application_target_concurrency_per_pod
ibm_codeengine_application_panic_request_concurrency
ibm_codeengine_application_stable_request_concurrency
ibm_codeengine_application_panic_mode
ibm_codeengine_functions_activations
ibm_codeengine_functions_exceeded_limit
ibm_codeengine_functions_execution_time_count
ibm_codeengine_functions_execution_time_sum
ibm_codeengine_functions_init_time_count
ibm_codeengine_functions_init_time_sum
ibm_codeengine_functions_status_success
ibm_codeengine_functions_status_error_application
ibm_codeengine_functions_status_error_developer
ibm_codeengine_jobruns

ibm_codeengine_application_actual_instances

当前已分配的 Pod 数。

使用此度量值可观察自动应用程序缩放的行为以及观察正在运行的应用程序实例数。 监视此值以确定是否需要调整应用程序的可配置值。

应用程序的运行实例数将根据配置设置和工作负载自动向上或向下扩展。 应用程序缩放是可配置的。 请参阅 配置应用程序缩放,并了解 应用程序缺省值和限制

表 2: 当前已分配的 Pod 数
元数据 描述
Metric Name ibm_codeengine_application_actual_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_requested_instances

自动缩放器从 Kubernetes请求的 pod 数。

使用此度量值可观察自动应用程序缩放的行为。 监视此值以确定是否需要调整应用程序的可配置值。

应用程序的运行实例数将根据配置设置和工作负载自动向上或向下扩展。 应用程序缩放是可配置的。 请参阅 配置应用程序缩放,并了解 应用程序缺省值和限制

表 3: 自动缩放器请求的 Pod 数
元数据 描述
Metric Name ibm_codeengine_application_requested_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_not_ready_instances

当前未就绪的 pod 数。

使用此度量值可观察正在运行的应用程序是否存在问题。

处于 未就绪 状态的应用程序实例无法处理请求。 此 未就绪 状态指示某些内容正在阻止应用程序变为就绪状态。

表 4: 当前未就绪的 Pod 数
元数据 描述
Metric Name ibm_codeengine_application_not_ready_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_pending_instances

当前暂挂的 pod 数。

使用此度量值可观察正在运行的应用程序是否存在问题。

当您观察到自动应用程序缩放时,可能会观察到暂挂的应用程序。 暂挂的应用程序实例正在等待调度。 如果应用程序仍处于暂挂状态,那么可能由于资源 (例如,内存或 CPU) 不足而无法启动应用程序。 请参阅 支持的内存和 CPU 组合

表 5: 当前暂挂的 Pod 数
元数据 描述
Metric Name ibm_codeengine_application_pending_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_desired_instances

自动缩放器要分配的 Pod 数。

使用此度量值可观察自动应用程序缩放的行为。 监视此值以确定是否需要调整应用程序的可配置值。

应用程序的运行实例数将根据配置设置和工作负载自动向上或向下扩展。 应用程序缩放是可配置的。 请参阅 配置应用程序缩放,并了解 应用程序缺省值和限制

表 6: 自动缩放器要分配的 pod 数
元数据 描述
Metric Name ibm_codeengine_application_desired_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_terminating_instances

当前正在终止的 Pod 数。

使用此度量值可观察自动应用程序缩放的行为。 监视此值以观察应用程序在缩减时是否终止。

应用程序的运行实例数将根据配置设置和工作负载自动向上或向下扩展。 应用程序缩放是可配置的。 请参阅 配置应用程序缩放,并了解 应用程序缺省值和限制

表 7: 当前正在终止的 Pod 数
元数据 描述
Metric Name ibm_codeengine_application_terminating_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_requests_total

对应用程序的 HTTPS 请求总数。

使用此度量值可监视应用程序接收的 HTTPS 请求数。

表 8: 针对应用程序的 HTTPS 请求总数
元数据 描述
Metric Name ibm_codeengine_application_requests_total
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name, http status code

ibm_codeengine_application_revision_count

每个应用程序的修订版数。

使用此度量值可观察每个应用程序的修订版数。

应用程序包含一个或多个修订版。 应用程序配置属性的每次更新都会创建应用程序的新修订版。Code Engine 具有项目中应用程序和应用程序修订版的数量配额。 有关项目限制的更多信息,请参阅 项目配额

表 9: 每个应用程序的修订版数
元数据 描述
Metric Name ibm_codeengine_application_revision_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name

ibm_codeengine_application_service_count

每个项目的应用程序数。

使用此度量值可观察项目中的应用程序数。

Code Engine 具有项目中应用程序和应用程序修订版的数量配额。 有关项目限制的更多信息,请参阅 项目配额

表 10: 每个项目的应用程序数
元数据 描述
Metric Name ibm_codeengine_application_service_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name

ibm_codeengine_application_route_count

每个应用程序的路由数。

Code Engine 仅支持每个应用程序的 1 路由。

表 11: 每个应用程序的路由数
元数据 描述
Metric Name ibm_codeengine_application_route_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name

ibm_codeengine_application_target_concurrency_per_pod

要用于每个 pod 的并发请求数。

使用此度量值可观察为应用程序设置的目标并行值。

应用程序缩放的目标并行性是可配置的。 请参阅 配置应用程序缩放

表 12: 要用于每个 pod 的并发请求数
元数据 描述
Metric Name ibm_codeengine_application_target_concurrency_per_pod
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_panic_request_concurrency

“紧急”窗口上的平均请求计数。

使用此度量值可观察自动应用程序缩放的行为。 监视此值以观察应用程序流量是否以脉冲串方式到达或流量是否稳定。

虽然 稳定 方式用于常规操作,但 应急 方式的窗口要短得多,并且用于在发生流量脉冲串时快速扩展应用程序修订版。

表 13: 紧急"
元数据 描述
Metric Name ibm_codeengine_application_panic_request_concurrency
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_stable_request_concurrency

稳定窗口上的平均请求计数。

使用此度量值可观察自动应用程序缩放的行为。 监视此值以观察应用程序流量是否以脉冲串方式到达或流量是否稳定。

虽然 稳定 方式用于常规操作,但 应急 方式的窗口要短得多,并且用于在发生流量脉冲串时快速扩展应用程序修订版。

表 14: 稳定窗口上的平均请求计数
元数据 描述
Metric Name ibm_codeengine_application_stable_request_concurrency
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_panic_mode

指定是否启用应急方式。

使用此度量值可观察自动应用程序缩放的行为。 监视此值以观察是否使用了应急方式。

虽然 稳定 方式用于常规操作,但 应急 方式的窗口要短得多,并且用于在发生流量脉冲串时快速扩展应用程序修订版。

表 15: 指定是否启用应急方式
元数据 描述
Metric Name ibm_codeengine_application_panic_mode
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_functions_activations

调用的函数数。

表 16: 调用的函数数
元数据 描述
Metric Name ibm_codeengine_functions_activations
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_functions_exceeded_limit

超出项目限制后调用的函数数。 有关项目限制的更多信息,请参阅 项目配额

表 17: 超过项目限制后调用的函数数
元数据 描述
Metric Name ibm_codeengine_functions_exceeded_limit
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_functions_execution_time_count

运行至完成的已调用函数数。

ibm_codeengine_functions_execution_time_countibm_codeengine_functions_execution_time_sum 度量用于确定每个调用函数的平均执行时间。

表 18: 完成执行的已调用函数数
元数据 描述
Metric Name ibm_codeengine_functions_execution_time_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name

ibm_codeengine_functions_execution_time_sum

运行至完成的已调用函数的所有执行时间总和。

ibm_codeengine_functions_execution_time_countibm_codeengine_functions_execution_time_sum 度量用于确定每个调用函数的平均执行时间。

表 19: 所调用函数的所有执行时间总和
元数据 描述
Metric Name ibm_codeengine_functions_execution_time_sum
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name

ibm_codeengine_functions_init_time_count

完成初始化以便在 Code Engine 中装入代码并准备执行的函数数。

ibm_codeengine_functions_init_time_countibm_codeengine_functions_init_time_sum 度量用于确定所调用函数的平均初始化时间。

表 20: 完成初始化的函数数
元数据 描述
Metric Name ibm_codeengine_functions_init_time_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name

ibm_codeengine_functions_init_time_sum

所调用函数的所有初始化时间总和。

ibm_codeengine_functions_init_time_countibm_codeengine_functions_init_time_sum 度量用于确定所调用函数的平均初始化时间。

表 21: 所调用函数的所有初始化时间总和
元数据 描述
Metric Name ibm_codeengine_functions_init_time_sum
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name

ibm_codeengine_functions_status_success

成功调用的函数数。 在函数完成初始化,运行至完成,并且函数代码使用成功的 HTTP 响应状态码进行响应之后,将在 Code Engine 中成功调用函数。

表 22: 成功调用的函数数
元数据 描述
Metric Name ibm_codeengine_functions_status_success
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_functions_status_error_application

在 Code Engine 处理期间失败的调用函数数。

表 23: 在 Code Engine
元数据 描述
Metric Name ibm_codeengine_functions_status_error_application
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_functions_status_error_developer

由于代码中存在错误而失败的调用函数数。

表 24: 由于代码中的错误而失败的已调用函数数
元数据 描述
Metric Name ibm_codeengine_functions_status_error_developer
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_jobruns

作业运行的总数。

使用此度量值可监视项目中的作业运行数。Code Engine 具有项目中作业数和作业运行数的配额。 有关项目限制的更多信息,请参阅 项目配额

表 25: 作业运行总数
元数据 描述
Metric Name ibm_codeengine_jobruns
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, job Name, jobrun condition

分段的属性

全局属性

以下属性可用于对先前列出的所有度量进行分段。

表 26: 全局属性
属性 属性名称 属性描述
Cloud Type ibm_ctype 云类型的值为 publicdedicatedlocal
Location ibm_location 受监视资源的位置,可以是区域,数据中心或全局。
Resource ibm_resource 由服务度量的资源,通常是标识名称或 GUID。
Resource Type ibm_resource_type 由服务度量的资源类型。
Resource group ibm_resource_group_name 在其中创建服务实例的资源组。
Scope ibm_scope 作用域是与此度量相关联的帐户,组织或空间 GUID。
Service name ibm_service_name 正在生成此度量的服务的名称。

更多属性

以下属性可用于对一个或多个属性进行分段,如前几个表中所述。 请参阅分段选项的各个度量。

表 27: 分段选项
属性 属性名称 属性描述
Name of the namespace ibm_codeengine_namespace 名称空间的名称。 此唯一标识包含在应用程序的 URL 中。 应用程序的缺省 URL 格式为 https://<appname>.<uuid>.<region>.codeengine.appdomain.cloud,其中 appname 是应用程序的名称,uuid 是自动生成的唯一标识,region 是 Code Engine 项目所在的区域。 URL 的 UUID 部分是名称空间的名称。
Service instance ibm_service_instance 服务实例段标识与度量相关联的实例。
HTTP status code ibm_codeengine_status HTTP 状态码。
Application name ibm_codeengine_application_name 应用程序的名称。
Application revision name ibm_codeengine_revision_name 应用程序修订版的名称。
Gateway instance ibm_codeengine_gateway_instance 网关实例。
Job Name ibm_codeengine_job_name 用于创建作业运行的作业的名称。
Jobrun condition ibm_codeengine_jobrun_condition 作业运行的条件。
Project name ibm_codeengine_project_name 项目的名称。
Function name ibm_codeengine_function_name 所调用函数的名称。
Function pod name ibm_codeengine_function_podname 调用该函数的系统 pod 的名称。
Function type ibm_codeengine_function_type 调用函数的方式的类型 (syncasync)。