使用 CloudWatch Logs 进行记录 - Amazon Step Functions
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 CloudWatch Logs 进行记录

标准工作流将执行历史记录在Amazon Step Functions,但您也可以选择将日志记录配置为 Amazon CloudWatch Logs。

与标准工作流不同,快速工作流不会在 Amazon Step Functions 中记录执行历史记录。要查看快速工作流的执行历史记录和结果,必须将日志记录配置为 Amazon CloudWatch Logs。发布日志不会阻止或减慢执行速度。

注意

配置日志记录后,CloudWatch Logs 费用将需支付费用。

配置 日志记录

使用 Step Functions 控制台创建标准工作流时,不会将其配置为支持记录到 CloudWatch Logs 中。默认情况下,使用 Step Functions 控制台创建的快速工作流会被配置为支持记录到 CloudWatch Logs 中。

对于快速工作流,Step Functions 可以使用必要的Amazon Identity and Access Management(IAM) 策 CloudWatch Logs。如果您使用 API、CLI 或创建标准工作流,Amazon CloudFormation,默认不会启 Step Functions 日志记录,并且您需要确保您的角色具有必要的权限。

对于从控制台启动的每个执行,都会提供一个指向 CloudWatch Logs 的链接,并配置了正确的筛选器,以获取该执行特定的日志事件。

要配置日志记录,您可以传递LoggingConfiguration参数时使用CreateStateMachine或者UpdateStateMachine。您可以使用 CloudWatch Logs Ings 分析中的数据。有关更多信息,请参阅使用 CloudWatch Logs Insights 分析日志数据

CloudWatch Logs 有效负载

执行历史事件的定义中可能包含输入属性或输出属性。如果发送到 CloudWatch Logs 的转义输入或转义输出超过 248KB,则会因 CloudWatch 日志配额而被截断。

用于记录到 CloudWatch Logs 的 IAM 策略

您还需要将 IAM 角色配置为具有 CloudWatch Logs 的适当权限。以下是可用于配置权限的示例策略。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogDelivery", "logs:GetLogDelivery", "logs:UpdateLogDelivery", "logs:DeleteLogDelivery", "logs:ListLogDeliveries", "logs:PutResourcePolicy", "logs:DescribeResourcePolicies", "logs:DescribeLogGroups" ], "Resource": "*" } ] }