击中Lambda函数端点时出现EROFS错误

时间:2019-09-05 10:51:40

标签: amazon-web-services aws-lambda serverless claudia.js

我已经使用claudiajs将expressjs代码部署到了lambda。当我点击生成的API端点时,每个备用请求都给了我内部服务器错误。我检查了日志并发现了这个问题

 "errorType": "Error",
    "errorMessage": "EROFS: read-only file system, mkdir '/var/task/logs'",
    "code": "EROFS",
    "stack": [
        "Error: EROFS: read-only file system, mkdir '/var/task/logs'"
    ],
    "cause": {
        "errorType": "Error",
        "errorMessage": "EROFS: read-only file system, mkdir '/var/task/logs'",
        "code": "EROFS",
        "stack": [
            "Error: EROFS: read-only file system, mkdir '/var/task/logs'"
        ],
        "errno": -30,
        "syscall": "mkdir",
        "path": "/var/task/logs"
    },
    "isOperational": true,
    "errno": -30,
    "syscall": "mkdir",
    "path": "/var/task/logs"
}

我无法弄清楚可能是什么问题,为什么它仅在其他请求而不是每个请求上发生,我该如何处理? 任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

向您发送Lambda dosen't allow you to write the space allocated

因为,您试图创建目录可能是写日志,所以它给您错误。

要使用lambda编写应用程序日志,您可以使用AWS Cloudwatch日志流。

  

https://www.npmjs.com/package/lambda-log

答案 1 :(得分:0)

您可以将/tmp目录用于某些临时文件,但也有512Mb的限制。

检查这些链接:

AWS Lambda Limits

Accessing Amazon CloudWatch Logs for AWS Lambda