标签: serverless

从cloudformation创建Aurora无服务器集群?

从Aurora Serverless的文档中,有3种方法可以创建Aurora无服务器数据库集群:AWS管理控制台,CLI和RDS API.(https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/aurora-serverless.create.html)

根据我的理解,可以EngineMode在RDS API中使用创建Aurora无服务器,但此属性尚未提供AWS::RDS::DBCluster(https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster .html).

是否可以从cloudformation创建Aurora无服务器群集?任何意见,将不胜感激!

amazon-web-services aws-cloudformation amazon-aurora serverless aws-aurora-serverless

16
推荐指数
2
解决办法
5751
查看次数

无服务器部署抛出错误:“不支持“服务”属性的对象表示法。直接使用服务名称设置“服务”属性。”

我正在使用 Node JS 无服务器框架构建微服务。说实话,这是我第一次使用 Serverless 构建微服务。我已经在我的计算机上配置了 AWS 凭证。

我创建了运行以下命令的项目。

serverless create -u https://github.com/codingly-io/sls-base -n aution-service
Run Code Online (Sandbox Code Playgroud)

然后我npm install在项目文件夹中运行。

这是我的 serverless.yml 文件夹。

service:
  name: auction-service

plugins:
  - serverless-bundle
  - serverless-pseudo-parameters

provider:
  name: aws
  runtime: nodejs12.x
  memorySize: 256
  stage: ${opt:stage, 'dev'}
  region: eu-west-2
  
functions:
  hello:
    handler: src/handlers/hello.handler
    events:
      - http:
          method: GET
          path: /hello
Run Code Online (Sandbox Code Playgroud)

我已经有了模板附带的 lambda 函数。然后我运行serverless deploy来部署服务。当我运行命令时,出现以下错误。

Error:
Object notation for "service" property is not supported. Set "service" property directly with service name.
Run Code Online (Sandbox Code Playgroud)

我的配置或代码有什么问题以及如何修复它?

amazon-web-services serverless-framework serverless

16
推荐指数
1
解决办法
7166
查看次数

意外的 LAMBDA_RUNTIME 无法发布处理程序成功响应。HTTP 响应代码:413 错误

所以我有一个在 Lambda 中运行的无服务器 Express 应用程序。一个请求(响应大小约为 800KB)不断返回LAMBDA_RUNTIME Failed to post handler success response. Http response code: 413.错误。我认为这可能是由于某些内部逻辑超时,并添加了日志,并且所有获取和处理最多需要 6 秒,但 lamdba 仍然返回此错误。

这些是响应标头

x-amz-cf-pop: YTO50-C3
x-amzn-errortype: InternalServerErrorException
x-amzn-requestid: f291230-342-4324-324-cb7df188944c
x-cache: Error from cloudfront
Run Code Online (Sandbox Code Playgroud)

响应大小绝对不会太大,我返回带有正确数据的响应,日志中没有抛出任何错误。知道为什么会发生这种情况吗?另外关于如何调试这个问题有什么建议吗?当然,一切都可以在本地运行,但是有没有办法让我调试实际的 lambda?我添加的日志表明整个过程已完成,但不知何故返回了错误。

更新了我的 serverless.yml 配置

service: my-service
variablesResolutionMode: 20210326
useDotenv: true

custom:
  serverless-offline:
    useChildProcesses: true
  webpack:
    webpackConfig: ./webpack.config.js
    packager: "yarn"
    includeModules: true
  prune:
    automatic: true
    includeLayers: true
    number: 3
  customDomain:
    domainName: "abc.com"
    basePath: "val"
    stage: ${someval}
    createRoute53Record: true

plugins:
  - serverless-domain-manager
  - serverless-webpack
  - serverless-prune-plugin
  - serverless-webpack-prisma …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services express aws-lambda graphql serverless

16
推荐指数
1
解决办法
2万
查看次数

当我的代码中没有语法错误时,为什么会出现 UserCodeSyntaxError?

我目前正在 nodejs 中创建一个 Dialogflow 聊天机器人,在部署我的代码时,我收到一条错误消息。我试图取消对大多数事情的注释,只留下基本功能代码,但我仍然无法让它工作。我不完全确定这里的问题是什么

'use strict';
  import {getAPIresponse} from "./api/index.js";

// const http = require('https');

// const respond = fulfillmentText => {
//   return {
//     statusCode: 200,
//     body: JSON.stringify({
//       fulfillmentText
//     }),
//     headers: {
//       "Content-Type": "application/json"
//     }
//   }
//
// };

module.exports.dining = async (event,context) => {


    const incoming= JSON.parse(event.body).queryResult;

    console.log(`INCOMING: ${incoming.parameters.hall}`);

    const {
      displayName
    } = incoming.intent;

    console.log(displayName);


    //const menu = getAPIresponse('https://esb.prod.uds.harvard.edu/api/dining/2.0/','events?locationId=36');
    //console.log(menu);
    // if(displayName === 'dining'){
    //   if(incoming.parameters.meal === 'breakfast'){ …
Run Code Online (Sandbox Code Playgroud)

node.js aws-lambda serverless

15
推荐指数
3
解决办法
2万
查看次数

pipelinenv 没有这样的选项:--最新版本的要求

命令:pipenv lock --requirements --keep-outdated

输出:

Usage: pipenv lock [OPTIONS]
Try 'pipenv lock -h' for help.

Error: No such option: --requirements Did you mean --quiet?
Run Code Online (Sandbox Code Playgroud)

知道如何解决这个问题吗?

python python-3.x pipenv serverless

13
推荐指数
1
解决办法
7404
查看次数

你如何看待amazon lambda函数的console.log输出

当你这样做的时候

console.log('Loading function');
Run Code Online (Sandbox Code Playgroud)

在亚马逊lambda函数中,它去哪儿了?

我的设置api网关lambda函数nodejs6.10 curl https://n2tredacted.execute-api.us-east-1.amazonaws.com/prod/redactedFunc

amazon-web-services serverless

12
推荐指数
2
解决办法
9513
查看次数

12
推荐指数
1
解决办法
4148
查看次数

如何修复 CloudRun 错误“请求已中止,因为没有可用的实例”

我正在使用托管 CloudRun 部署一个带有concurrency=1. 部署后,我将并行触发四个长时间运行的请求。大多数情况下,一切正常——但偶尔,我会在几秒钟内面对来自其中一个节点的 500 个;日志仅提供主题中提供的错误消息。

使用带指数退避的重试并没有改善这种情况;重试也以 500 秒结束。StackDriver 日志也​​不提供更多信息。

可能相关的gcloud beta run deploy论点:

--memory 2Gi --concurrency 1 --timeout 8m --platform managed

错误消息的确切含义是什么——我该如何解决这个问题?

google-cloud-platform serverless google-cloud-run

12
推荐指数
3
解决办法
4091
查看次数

旧的 AWS Lambda 层会自动删除吗?如果没有,如何删除它们?

在阅读这篇讨论使用 AWS Lambda 函数的主要缺点的文章后,我试图避免作者必须处理的问题并对我自己的代码执行一些清理:

" Lambda 版本每个函数。我们使用无服务器框架来开发 Lambda 应用程序。这意味着无服务器创建 Lambda 函数。我们的平均 Lambda 函数约为 60MB。[...]
当您将 CI/CD 与快速开发和 Lambda 函数结合使用时,你有很多版本。甚至有数百个。而且 Lambda 代码存储被限制在 75GB。我们达到了这个限制,我们很难做到。经过两年的 CI/CD 驱动开发,我们缺乏版本清理导致我们的开发完全陷入僵局过程。”

(强调我的)

关于我的架构。我有 lambda 函数,它们调用存储在layer 中的自制 python 包中的方法。目标是避免在 lambda 中包含太多代码并轻松重用其中的功能。

现在,我找到了如何删除旧版本的 lambda 函数(我也在使用无服务器框架,它提供了一个很好的插件,用于在部署堆栈时自动修剪它们)。但是,我不知道 AWS 是否会自动删除旧层:我还没有找到汇总我所有层版本的总代码大小的仪表板,而且我找不到自动删除它们的插件。

旧的 AWS Lambda 层会自动删除吗?如果没有,我怎么能批量删除它们?

amazon-web-services serverless aws-lambda-layers

12
推荐指数
1
解决办法
6724
查看次数

从云功能(python)写入Google云端存储

我正在尝试从云功能中将文件上传到谷歌云存储.但是,我无法将云存储库导入到我的函数中.

可以通过这种方式从云功能中使用云存储吗?

云功能

from google.cloud import storage

def upload_blob(bucket_name, blob_text, destination_blob_name):
    """Uploads a file to the bucket."""
    storage_client = storage.Client()
    bucket = storage_client.get_bucket(bucket_name)
    blob = bucket.blob(destination_blob_name)

    blob.upload_from_string(blob_text)

    print('File {} uploaded to {}.'.format(
        source_file_name,
        destination_blob_name))

def log_data(request):
    request_json = request.get_json()
    BUCKET_NAME = 'my-bucket'
    BLOB_NAME = 'test-blob'
    BLOB_STR = '{"blob": "some json"}'

    upload_blob(BUCKET_NAME, BLOB_STR, BLOB_NAME)
    return f'Success!'
Run Code Online (Sandbox Code Playgroud)

错误

Deployment failure:
Function load error: Code in file main.py can't be loaded.
  File "/user_code/main.py", line 1, in <module>
    from google.cloud import storage
ImportError: cannot …
Run Code Online (Sandbox Code Playgroud)

python google-cloud-storage google-cloud-platform google-cloud-functions serverless

11
推荐指数
1
解决办法
4254
查看次数