gpt4 book ai didi

amazon-web-services - 如何在调用并行 Lambda 函数的 AWS Step Function 上禁用(或重定向)日志记录

转载 作者:行者123 更新时间:2023-12-04 12:26:27 25 4
gpt4 key购买 nike

我正在运行具有并行执行分支的 AWS 步骤函数。

每个分支都单独成功,但整体功能失败并出现以下错误:

States.DataLimitExceeded - 状态/任务返回的结果大小超过最大字符数服务限制。

然后我从 AWS 上找到了一篇描述这个问题的文章,并提出了一个解决方法:

https://docs.aws.amazon.com/step-functions/latest/dg/connect-lambda.html

那篇文章说:

默认情况下,Lambda 调用 API 在响应中包含日志。工作流中的多次 Lambda 调用可能会触发 States.DataLimitExceeded 错误。为避免这种情况,请在调用 Lambda 函数时将 "LogType"= "None"作为参数包含在内。

我的问题是我到底把它放在哪里?我试过把它放在状态机定义的各个地方,但是我收到以下错误:

Step Functions 不支持字段“LogType”

该错误似乎与支持文章相反,所以也许我做错了!

任何建议表示赞赏,提前致谢!

干杯

更新 1:
需要明确的是,这是一个并行功能,具有 26 个并行分支。每个分支都有一个小输出,如下例所示。该数据中最大的一项是 LogResult,它(base64 解码时)只是账单信息。我认为这个信息乘以 26 导致了错误,所以我只想关闭这个 LogResult !!!

{
"ExecutedVersion": "$LATEST",
"LogResult": "U1RBUlQgUmVxdWVzdElkOiBlODJjZTRkOS0zMjk2LTRlNDctYjcyZC1iYmEwMzI1YmM3MGUgVmVyc2lvbjogJExBVEVTVApFTkQgUmVxdWVzdElkOiBlODJjZTRkOS0zMjk2LTRlNDctYjcyZC1iYmEwMzI1YmM3MGUKUkVQT1JUIFJlcXVlc3RJZDogZTgyY2U0ZDktMzI5Ni00ZTQ3LWI3MmQtYmJhMDMyNWJjNzBlCUR1cmF0aW9uOiA3NzI5Ljc2IG1zCUJpbGxlZCBEdXJhdGlvbjogNzgwMCBtcwlNZW1vcnkgU2l6ZTogMTAyNCBNQglNYXggTWVtb3J5IFVzZWQ6IDEwNCBNQglJbml0IER1cmF0aW9uOiAxMTY0Ljc3IG1zCQo=",
"Payload": {
"statusCode": 200,
"body": {
"signs": 63,
"nil": ""
}
},
"SdkHttpMetadata": {
"HttpHeaders": {
"Connection": "keep-alive",
"Content-Length": "53",
"Content-Type": "application/json",
"Date": "Thu, 21 Nov 2019 04:00:42 GMT",
"X-Amz-Executed-Version": "$LATEST",
"X-Amz-Log-Result": "U1RBUlQgUmVxdWVzdElkOiBlODJjZTRkOS0zMjk2LTRlNDctYjcyZC1iYmEwMzI1YmM3MGUgVmVyc2lvbjogJExBVEVTVApFTkQgUmVxdWVzdElkOiBlODJjZTRkOS0zMjk2LTRlNDctYjcyZC1iYmEwMzI1YmM3MGUKUkVQT1JUIFJlcXVlc3RJZDogZTgyY2U0ZDktMzI5Ni00ZTQ3LWI3MmQtYmJhMDMyNWJjNzBlCUR1cmF0aW9uOiA3NzI5Ljc2IG1zCUJpbGxlZCBEdXJhdGlvbjogNzgwMCBtcwlNZW1vcnkgU2l6ZTogMTAyNCBNQglNYXggTWVtb3J5IFVzZWQ6IDEwNCBNQglJbml0IER1cmF0aW9uOiAxMTY0Ljc3IG1zCQo=",
"x-amzn-Remapped-Content-Length": "0",
"x-amzn-RequestId": "e82ce4d9-3296-4e47-b72d-bba0325bc70e",
"X-Amzn-Trace-Id": "root=1-5dd60be1-47c4669ce54d5208b92b52a4;sampled=0"
},
"HttpStatusCode": 200
},
"SdkResponseMetadata": {
"RequestId": "e82ce4d9-3296-4e47-b72d-bba0325bc70e"
},
"StatusCode": 200
}

最佳答案

我最近遇到了和你完全一样的问题。你还没有说你的 lambdas 正在做什么或返回什么,但是我发现 AWS 指的是任务在执行中的限制 https://docs.aws.amazon.com/step-functions/latest/dg/limits.html#service-limits-task-executions .

我发现我的特定 lambda 响应非常长,有 10 多万个字符。修改它以使来自 lambda 的响应更合理,从而克服了阶跃函数中的错误。

关于amazon-web-services - 如何在调用并行 Lambda 函数的 AWS Step Function 上禁用(或重定向)日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58654536/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com