推理管道日志和指标 - 亚马逊 SageMaker
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

推理管道日志和指标

要维护 SageMaker 资源的可靠性、可用性和性能,实施监控非常重要。要监控推理管道性能并进行问题排查,请使用 Amazon CloudWatch 日志和错误消息。有关 SageMaker 提供的监控工具的信息,请参阅监控 SageMaker

使用指标监控多容器模型

要监测推断管道中的多容器型号,请使用 Amazon CloudWatch。 CloudWatch 收集原始数据并将其处理成可读、接近实时的指标。 SageMaker 培训作业和端点写入 CloudWatch 度量和日志 AWS/SageMaker 命名空间.

下表列出了下列度量和维度:

  • 终端节点调用

  • 训练作业、批量转换作业和终端节点实例

维度 是用于唯一标识指标的名称/值对。您可以为一个指标分配最多 10 个维度。有关使用 CloudWatch 进行监控的更多信息,请参阅使用 Amazon CloudWatch 监控 SageMaker

终端节点调用指标

AWS/SageMaker 命名空间包括以下内容 从呼叫请求度量标准 InvokeEndpoint.

指标每 1 分钟报告一次。

指标 Description
Invocation4XXErrors

模型为其返回 4xx HTTP 响应代码的 InvokeEndpoint 请求的数量。对于每个 4xx 响应,SageMaker 都会发送 1

单位: 无

有效统计: Average, Sum

Invocation5XXErrors

模型为其返回 5xx HTTP 响应代码的 InvokeEndpoint 请求的数量。对于每个 5xx 响应,SageMaker 都会发送 1

单位:无

有效统计数据:Average, Sum

Invocations

发送到模型终端节点的 number of InvokeEndpoint 请求。

要获取发送到模型终端节点的请求总数,请使用 Sum 统计数据。

单位:无

有效统计数据:Sum, Sample Count

InvocationsPerInstance

发送到模型的终端调用数, 标准化方式: InstanceCount 每个 ProductionVariant。 SageMaker 发送1/numberOfInstances 作为每个请求的值,其中 numberOfInstances 是活动实例的数量,用于 生产语言 请求时的端点。

单位:无

有效统计数据:Sum

ModelLatency 模型进行响应所需的时间。这包括发送请求、从模型容器获取响应以及完成容器中的推断所需的时间。ModelLatency 是推断管道中所有容器花费的总时间。

单位:微秒

有效统计数据:Average, Sum, Min, Max,样本计数

OverheadLatency

添加到响应客户端请求所花费的时间,由 SageMaker 间接费用。OverheadLatency 从 SageMaker 收到请求,直到它向客户返回响应,减去 ModelLatency。间接费用延迟可以根据请求和响应有效载荷大小、请求频率以及请求的认证或授权以及其他因素而变化。

单位:微秒

有效统计数据:Average, Sum, Min, Max, Sample Count

ContainerLatency 推断管道容器响应所花费的时间 从 SageMaker. ContainerLatency 包括发送请求、从模型的容器获取响应以及完成容器中的推断所需的时间。

单位:微秒

有效统计数据:Average, Sum, Min, Max, Sample Count

终端节点调用指标的维度

维度 Description
EndpointName, VariantName, ContainerName

过滤终端调用指标 ProductionVariant 在指定的终点 和指定变量的和。

对于推理管道终点, CloudWatch 将您帐户中的每容器延迟度量列为 端点容器度量标准端点变量度量SageMaker制造商 命名空间,如下所示。该 ContainerLatency 指标仅适用于推理管道。


                    的 CloudWatch 控制面板,用于推理流水线列出每个端点的延迟指标 每个容器.

对于每个端点和每个容器,延迟度量标准显示 容器、端点、变量和度量。


                    延迟指标f或端点。

训练作业、批量转换作业和终端节点实例指标

命名空间 /aws/sagemaker/TrainingJobs/aws/sagemaker/TransformJobs/aws/sagemaker/Endpoints 包括以下用于训练作业和终端节点实例的指标。

指标每 1 分钟报告一次。

指标 Description
CPUUtilization

实例上运行的容器所使用的 CPU 单位的百分比。值范围为0%至100%,并乘以 CPUs. 例如 CPUs, CPUUtilization 范围为0%至400%。

对于训练作业,CPUUtilization 是实例上运行的算法容器的 CPU 利用率。

对于批量转换作业,CPUUtilization 是实例上运行的转换容器的 CPU 利用率。

对于多容器模型,CPUUtilization 是实例上运行的所有容器的 CPU 利用率总和。

对于 终点变异, CPUUtilization 是实例上运行的所有容器的CPU利用率总和。

单位:百分比

MemoryUtilizaton

实例上运行的容器所使用的内存的百分比。此值范围从 0% 到 100%。

对于训练作业,MemoryUtilizaton 是实例上运行的算法容器所使用的内存。

对于批量转换作业,MemoryUtilizaton 是实例上运行的转换容器所使用的内存。

对于多容器模型,MemoryUtilizaton 是实例上运行的所有容器的所使用的内存总和。

对于终端节点变体,MemoryUtilizaton 是实例上运行的所有容器所使用的内存总和。

单位:百分比

GPUUtilization

在实例上运行的容器使用的GPU单元百分比。GPUUtilization 范围为0%至100%,并乘以 GPUs. 例如 GPUs, GPUUtilization 范围为0%至400%。

对于训练作业,GPUUtilization 是实例上运行的算法容器所使用的 GPU。

对于批量转换作业,GPUUtilization 是实例上运行的转换容器所使用的 GPU。

对于多容器模型,GPUUtilization 是实例上运行的所有容器的所使用的 GPU 总和。

对于终端节点变体,GPUUtilization 是实例上运行的所有容器所使用的 GPU 总和。

单位:百分比

GPUMemoryUtilization

在实例上运行的容器使用的GPU内存的百分比。 GPUMemoryUtilization 范围为0%至100%,并乘以 GPUs. 例如 GPUs, GPUMemoryUtilization 范围为0%至400%。

对于训练作业,GPUMemoryUtilization 是实例上运行的算法容器所使用的 GPU 内存。

对于批量转换作业,GPUMemoryUtilization 是实例上运行的转换容器所使用的 GPU 内存。

对于多容器模型,GPUMemoryUtilization 是实例上运行的所有容器的所用的 GPU 总和。

对于终端节点变体,GPUMemoryUtilization 是实例上运行的所有容器所使用的 GPU 内存总和。

单位:百分比

DiskUtilization

在实例上运行的容器所使用的磁盘空间百分比。 DiskUtilization 范围为0%至100%。批量转换作业不支持此指标。

对于训练作业,DiskUtilization 是实例上运行的算法容器所使用的磁盘空间。

对于终点变异, DiskUtilization 是实例上运行的所有提供容器所使用的磁盘空间的总和。

单位:百分比

训练作业、批量转换作业和终端节点实例指标的维度

维度 Description
Host

对于培训工作, Host 的格式为 [training-job-name]/algo-[instance-number-in-cluster]。使用此维度筛选指定培训作业和实例的实例度量。此维度格式仅存在于 /aws/sagemaker/TrainingJobs 命名空间中。

对于批量转换作业, Host 的格式为 [transform-job-name]/[instance-id]。使用此维度筛选指定批处理转换作业和实例的实例度量。此维度格式仅存在于 /aws/sagemaker/TransformJobs 命名空间中。

对于端点, Host 的格式为 [endpoint-name]/[ production-variant-name ]/[instance-id]。使用此维度筛选指定端点、变量和实例的实例度量标准。此维度格式仅存在于 /aws/sagemaker/Endpoints 命名空间中。

为帮助您调试训练作业、终端节点和笔记本实例生命周期配置,SageMaker 还会发送算法容器、模型容器或笔记本实例生命周期配置发送到 stdoutstderr 的任何内容也会发送到 Amazon CloudWatch Logs。您可以使用此信息用于调试并分析进度。

使用日志监控推理管道

下表列出了日志组和日志流 SageMaker. 发送到 Amazon CloudWatch

日志流 是共享同一个源的一系列日志事件。每个流向 CloudWatch 的独立日志源构成一个独立的日志流。日志组 是一组具有相同保留期、监控和访问控制设置的日志流。

日志

日志组名称 日志流名称
/aws/sagemaker/TrainingJobs

[training-job-name]/algo-[instance-number-in-cluster]-[epoch_timestamp]

/aws/sagemaker/Endpoints/[EndpointName]

[production-variant-name]/[instance-id]

[production-variant-name]/[instance-id]

[production-variant-name]/[instance-id]/[container-name provided in the SageMaker model] (For Inference Pipelines) 对于推理管道日志, 如果不提供集装箱名称, CloudWatch 使用 **container-1、container-2**等,顺序为在型号中提供容器。

/aws/sagemaker/NotebookInstances

[notebook-instance-name]/[LifecycleConfigHook]

/aws/sagemaker/TransformJobs

[transform-job-name]/[instance-id]-[epoch_timestamp]

[transform-job-name]/[instance-id]-[epoch_timestamp]/data-log

[transform-job-name]/[instance-id]-[epoch_timestamp]/[container-name provided in the SageMaker model] (For Inference Pipelines) 对于推理管道日志, 如果不提供集装箱名称, CloudWatch 使用 **container-1、container-2**等,顺序为在型号中提供容器。

注意

在您使用生命周期配置创建笔记本实例时,SageMaker 将创建 /aws/sagemaker/NotebookInstances 日志组。有关更多信息,请参阅使用生命周期配置脚本自定义笔记本实例

有关 SageMaker 日志记录的更多信息,请参阅 使用 Amazon CloudWatch 记录事件 SageMaker