Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services AWS cloudwatch正在截断日志_Amazon Web Services_Aws Api Gateway_Amazon Cloudwatch - Fatal编程技术网

Amazon web services AWS cloudwatch正在截断日志

Amazon web services AWS cloudwatch正在截断日志,amazon-web-services,aws-api-gateway,amazon-cloudwatch,Amazon Web Services,Aws Api Gateway,Amazon Cloudwatch,我已经使用AWSAPI网关创建了一个API。在阶段下,检查“记录完整请求/响应数据”和“启用CloudWatch日志” 当我在cloudwatch中查看日志时,我看到一些日志被“截断”。事实上,所有日志都在截断请求和响应正文。是否有任何方法可以查看整个请求/响应 因为将有多个集成点,所以查看整个日志是有意义的 看起来它是AWS API网关中的一个 API网关当前将日志事件限制为1024字节。记录事件 大于1024个字节(如请求和响应正文)将被删除 在提交到CloudWatch日志之前被API网关

我已经使用AWSAPI网关创建了一个API。在阶段下,检查“记录完整请求/响应数据”和“启用CloudWatch日志”

当我在cloudwatch中查看日志时,我看到一些日志被“截断”。事实上,所有日志都在截断请求和响应
正文
。是否有任何方法可以查看整个请求/响应


因为将有多个集成点,所以查看整个日志是有意义的

看起来它是AWS API网关中的一个

API网关当前将日志事件限制为1024字节。记录事件 大于1024个字节(如请求和响应正文)将被删除 在提交到CloudWatch日志之前被API网关截断


API网关将日志事件限制为1024字节,不能增加。大于1024字节的日志事件(如请求和响应主体)将在提交到CloudWatch日志之前被API网关截断

解决方法是使用Lambda代理与API网关集成

使用Lambda代理集成,API网关将请求按原样传递给集成的Lambda函数,唯一的例外是请求参数的顺序不保留

此请求数据包括请求头、查询字符串参数、URL路径变量、有效负载、正文和请求上下文。由于Lambda不会截断日志条目,所以所有头和查询字符串参数都记录在Lambda的CloudWatch日志中,可以看到

这种方法的缺点是lambda会增加成本


在这里阅读API网关CloudWatch日志:

hmm在无服务器应用程序中截断日志是没有意义的,因为这是我们可以调试的唯一方法。现在我不知道到底什么负载API网关传递给Lambda函数