AWS Lambda 日志中的神秘 "Ingestion" 无服务器错误
Mysterious "Ingestion" Serverless error in AWS Lambda logs
我在调用我的一个 Lambda 函数时遇到了一个奇怪的错误。我从来没有见过这个错误。 Google 搜索根本没有帮助。这是它的样子:
Ingestion server error
{
"request": {
"url": "https://core.serverless.com/ingestion/kinesis/v1/request-response",
"headers": {
"accept-encoding": "gzip",
"content-type": "application/json",
"serverless_token": "[redacted]"
}
},
"response": {
"status": 500,
"text": "{\"message\":\"Something went wrong forwarding RequestResponseEvent data.\"}"
}
}
我很确定这与我的代码无关,因为我的函数可以正常工作。但有时,在长达大约一个小时的时间内,我的函数会因此错误而失败。查看错误,无服务器框架似乎出于某种原因试图将一些数据重定向到他们的服务器,但在这个过程中失败了。
为什么会这样?无服务器试图实现什么?我该怎么做才能阻止此错误的发生?我迫切需要任何见解。
我还偶然发现了 Serverless 似乎自动设置的一些环境变量:
Key
Value
AWS_LAMBDA_EXEC_WRAPPER
/opt/otel-extension/internal/exec-wrapper.sh
OTEL_RESOURCE_ATTRIBUTES
sls_service_name=ODAC-API,sls_stage=dev,sls_org_id=[redacted]
SLS_OTEL_REPORT_LOGS_URL
https://core.serverless.com/ingestion/kinesis/v1/logs
SLS_OTEL_REPORT_METRICS_URL
https://core.serverless.com/ingestion/kinesis/v1/metrics
SLS_OTEL_REPORT_REQUEST_HEADERS
serverless_token=[redacted]
SLS_OTEL_REPORT_REQUEST_RESPONSE_URL
https://core.serverless.com/ingestion/kinesis/v1/request-response
SLS_OTEL_REPORT_TRACES_URL
https://core.serverless.com/ingestion/kinesis/v1/traces
SLS_OTEL_USER_SETTINGS
{}
我不知道这些是做什么用的,但似乎相关(相同 url)。
会不会和我运行的sls --console
命令有关?它是否设置了一些机制来监控我的功能?如果是这样,我该如何撤消?
这真让我烦恼。 Google 似乎对这个错误一无所知,无论我尝试搜索什么。有人遇到过这个吗?
这似乎是来自 Serverless.com 的 API 的后端错误。
我猜你可以在你的 serverless.yml
文件中设置 console: false
然后 re-deploy 你的服务来删除检测 - 但我还没有确认,它似乎不存在他们的 documentation
我在调用我的一个 Lambda 函数时遇到了一个奇怪的错误。我从来没有见过这个错误。 Google 搜索根本没有帮助。这是它的样子:
Ingestion server error
{
"request": {
"url": "https://core.serverless.com/ingestion/kinesis/v1/request-response",
"headers": {
"accept-encoding": "gzip",
"content-type": "application/json",
"serverless_token": "[redacted]"
}
},
"response": {
"status": 500,
"text": "{\"message\":\"Something went wrong forwarding RequestResponseEvent data.\"}"
}
}
我很确定这与我的代码无关,因为我的函数可以正常工作。但有时,在长达大约一个小时的时间内,我的函数会因此错误而失败。查看错误,无服务器框架似乎出于某种原因试图将一些数据重定向到他们的服务器,但在这个过程中失败了。
为什么会这样?无服务器试图实现什么?我该怎么做才能阻止此错误的发生?我迫切需要任何见解。
我还偶然发现了 Serverless 似乎自动设置的一些环境变量:
Key | Value |
---|---|
AWS_LAMBDA_EXEC_WRAPPER | /opt/otel-extension/internal/exec-wrapper.sh |
OTEL_RESOURCE_ATTRIBUTES | sls_service_name=ODAC-API,sls_stage=dev,sls_org_id=[redacted] |
SLS_OTEL_REPORT_LOGS_URL | https://core.serverless.com/ingestion/kinesis/v1/logs |
SLS_OTEL_REPORT_METRICS_URL | https://core.serverless.com/ingestion/kinesis/v1/metrics |
SLS_OTEL_REPORT_REQUEST_HEADERS | serverless_token=[redacted] |
SLS_OTEL_REPORT_REQUEST_RESPONSE_URL | https://core.serverless.com/ingestion/kinesis/v1/request-response |
SLS_OTEL_REPORT_TRACES_URL | https://core.serverless.com/ingestion/kinesis/v1/traces |
SLS_OTEL_USER_SETTINGS | {} |
我不知道这些是做什么用的,但似乎相关(相同 url)。
会不会和我运行的sls --console
命令有关?它是否设置了一些机制来监控我的功能?如果是这样,我该如何撤消?
这真让我烦恼。 Google 似乎对这个错误一无所知,无论我尝试搜索什么。有人遇到过这个吗?
这似乎是来自 Serverless.com 的 API 的后端错误。
我猜你可以在你的 serverless.yml
文件中设置 console: false
然后 re-deploy 你的服务来删除检测 - 但我还没有确认,它似乎不存在他们的 documentation