0

我已经使用 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"
}

我无法弄清楚可能是什么问题,为什么它只发生在备用请求而不是每个请求上。我该如何继续呢?任何帮助,将不胜感激。

4

2 回答 2

0

拉姆达dosen't allow you to write the space allocated给你。

因为,您尝试创建一个目录可能是为了写入日志,所以它会给您错误。

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

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

于 2019-09-05T12:16:57.643 回答
0

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

检查这些链接:

AWS Lambda 限制

访问 AWS Lambda 的 Amazon CloudWatch 日志

于 2019-09-05T12:25:45.733 回答