标签: aws-lambda

监控AWS Lambda错误

我想查看两个类型的AWS lambda最后一小时错误:

  • 完成错误的Lambda函数
  • Lambda函数返回http 500

我该怎么办?

aws-lambda

11
推荐指数
3
解决办法
7089
查看次数

如何在 AWS 中的特定时间触发 Lambda 函数?

我知道可用于重复运行 Lambda 的 CloudWatch 重复事件..但是有没有办法可以在特定时间触发它而不重复?

cron amazon-web-services aws-lambda

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

如何使用nodejs在aws lambda函数中调用rest api

我已经创建了 aws lambda 函数。我想在我的 lambda 函数中使用 rest api 调用。是否有任何参考如何使用nodejs将其连接到rest api

amazon-web-services node.js aws-lambda

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

在 Python 中写入流到 Google Cloud Storage

我正在尝试迁移AWS Lambda编写的函数PythonCF

  1. 即时解压缩并逐行阅读
  2. 在每一行上执行一些光变换
  3. 将未压缩的输出(一次一行或块)写入 GCS

输出 > 2GB - 但略小于 3GB 所以它适合Lambda,只是.

好吧,这似乎是不可能的,或者更多地涉及GCP:

  • 未压缩的无法放入内存或/tmp- 在撰写本文时限制为 2048MB - 所以 Python 客户端库upload_from_file(或_filename无法使用)
  • 有这篇官方论文,但令我惊讶的是,它指的是boto一个最初为 设计的库AWS S3,并且已经过时boto3了一段时间。没有真正的GCP流式写入或读取方法
  • Node.js的有一个简单的createWriteStream()-好的文章在这里顺便说一句-但没有相应的一行代码在Python
  • 可恢复的媒体上传听起来很像,但很多代码在 Node 中处理要容易得多
  • AppEngine 有云存储,但在它之外不可用 - 并且已经过时
  • 在一个工作包装器上几乎没有例子,用于逐行写入文本/纯数据,就像GCS是本地文件系统一样。这不仅限于Cloud FunctionsPython Client 库所缺乏的功能,而且由于资源限制,它在 CF 中更为突出。顺便说一句,我参与了添加可写 IOBase 函数的讨论,但它没有吸引力。
  • 显然使用虚拟机或 …

python azure-storage google-cloud-storage aws-lambda google-cloud-functions

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

CodePipeline:CodeDeploy 报告“BundleType 必须是 YAML 或 JSON”

CodeDeploy 报告“BundleType 必须是 YAML 或 JSON”

appspec.yml 位于 CodeCommit 的根目录中

构建规范.yml:

version: 0.2

phases:
  build:
    commands:
      - echo Build started on `date`
      - echo Compiling the Python code...
      - python HelloWorld_tst.py
  post_build:
    commands:
      - echo Build completed on `date`
artifacts:
  files:
    - HelloWorld.py
    - appspec.yml
  discard-paths: yes
Run Code Online (Sandbox Code Playgroud)

appspec.yml

version: 0.0
Resources:
    - autovisionfunction:
        Type: AWS::Lambda::Function
        Properties:
            Name: "autovisionfunction"
            Alias: "staging"
            CurrentVersion: "1"
            TargetVersion: "2"
            
Run Code Online (Sandbox Code Playgroud)

似乎在 CodePipeline 中找不到 appspec.yml

我已经从 S3 存储桶下载了人工制品 zip,里面有 appspec.yml。

在此处输入图片说明

我想念什么?

谢谢

奥利亚

amazon-web-services aws-code-deploy aws-lambda aws-codepipeline

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

AWS Lambda + NAT 网关的替代方案

快速介绍我的场景:我有一个 VPC,其中包含一个 API 网关,该网关将其调用重定向到我的 Lambda 函数,然后它们访问 RDS 实例和外部 API 调用(互联网访问)。

它的结构

由于函数需要访问 RDS,我将 RDS 和 Lambdas 放在同一个 VPC 中,在没有公开访问的情况下正确保护 RDS。现在,由于 Lambda 位于 VPC 中,因此它们需要一个 NAT 网关来访问互联网(几乎所有这些功能都需要调用第三方 API),这就是我面临的一个巨大问题。

问题

我有一个小项目为几个用户(从 10 到 200 个用户不等)提供服务,并且使用我创建的无服务器设置,我预计每个月的费用为 3.00 美元到 10.00 美元。这是成本没有一个单一的NAT网关。现在,如果我们加上网关的价格,即每小时 0.045 美元- 我什至没有考虑每 GB 传输的数据 0.045 美元 -每月超过 30 美元。如果我不创建另一个多可用区并减轻可能的可用区故障,我会很愚蠢 - 所以2 个 NAT 网关 > 60.00 美元。

这不仅对我来说不切实际,而且它不会也使通常遵循按需方法的整个无服务器结构的要点无效吗?

如何解决这个问题?

我的替代方法之一是将 Lambdas 移出 VPC(意味着没有 VPC)并通过某种机制访问 RDS,而不使其公开访问 - 这也是我失败的地方,如何安全地访问 RDS …

nat amazon-web-services amazon-vpc aws-lambda

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

无服务器部署 - 未找到功能 - sls 部署

我正在尝试通过无服务器 CLI 部署无服务器功能,但出现以下错误:

发生错误:GenerateDownloadLinkLambdaFunction - 未找到函数:

奇怪的是,我已经为另一个阶段部署了这个函数qa,它部署得很好,但dev它只是抛出了上述错误。

如果我尝试从 AWS 控制台手动创建函数并部署它,Lambda 函数菜单会显示该函数是在 X 秒前部署的,但是它不会显示我serverless.yml在我的机器上的文件中的任何设置。

还值得注意的是,我已经设法在dev舞台上部署了此功能,但我不小心将其删除了。从那时起,它拒绝重新部署。

我一直在用头撞墙,想知道我做错了什么,但找不到任何东西,以前有没有其他人遇到过类似的 Serverless 问题?

amazon-web-services aws-lambda serverless-framework

11
推荐指数
2
解决办法
6189
查看次数

FUNCTION_ERROR_INIT_FAILURE AWS 拉姆达

我最近添加了很酷的 lambda 功能配置并发。

经过几次成功部署后,我现在面临这个问题

无服务器错误 -------------------------------

ServerlessError:发生错误:GraphqlPrivateProvConcLambdaAlias - 无法应用预置并发配置。原因:FUNCTION_ERROR_INIT_FAILURE。在 C:\Users\theod\AppData\Roaming\npm\node_modules\serverless\lib\plugins\aws\lib\monitorStack.js:125:33 来自上一个事件:在 AwsDeploy.monitorStack (C:\Users\theod\AppData \Roaming\npm\node_modules\serverless\lib\plugins\aws\lib\monitorStack.js:28:12) 在 C:\Users\theod\AppData\Roaming\npm\node_modules\serverless\lib\plugins\aws\lib \updateStack.js:107:28 来自之前的活动:在 AwsDeploy.update

这是我的示例 serverless.yml 文件

service: backend-api

parameters:
  region: ap-southeast-2
  path: &path /

provider:
  name: aws
  runtime: nodejs12.x
  stage: ${env:STAGE, 'staging'}
  region: ap-southeast-2
  versionFunctions: true

plugins:
  - serverless-webpack
  - serverless-pseudo-parameters
  - serverless-prune-plugin
  # - serverless-offline-scheduler
  - serverless-offline

functions:
  # GRAPHQL APIs
  graphqlPrivate:
    handler: src/graphql/private/index.handler
    memorySize: 256
    timeout: 30
    name: ${self:service}-gqlPrivate-${self:provider.stage}
    vpc: ${file(./serverless/vpc.yml)}
    events:
        - http:
            path: /graphql/private
            method: ANY
            cors: true …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services node.js aws-lambda serverless-framework serverless

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

AWS Lambda - 错误:找不到模块“uuid/v4”

尝试在 AWS Lambda JavaScript 代码中使用 UUID 模块时收到此错误。

Error: Cannot find module 'uuid/v4'
Run Code Online (Sandbox Code Playgroud)

我没有使用 AWSCLI 或 NPM,而是使用 AWS Lambda 仪表板在 JavaScript 中编写 Lambda 函数。

Error: Cannot find module 'uuid/v4'
Run Code Online (Sandbox Code Playgroud)

我一直在不停地搜索谷歌,试图找到一种让 UUID 模块工作的方法。我不想设置和使用 NPM 环境。

AWS Lambda 仪表板上是否有一些方法可以提供对 Lambda 代码的 UUID 模块的访问?

javascript uuid amazon-web-services aws-lambda

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

如何在 C# 中使用 AWS Lambda 发送响应卡

嗨,我正在 amazon lex 上开发一个聊天机器人,我想使用 lambda 函数发送响应卡,但是在关闭响应格式中使用响应卡函数时,它给出了 null 异常的错误。谁能告诉它的解决方案?PS 我正在使用 Nikki 创建的 FlowerOrder 蓝图。

if (slots[greet] != null) 
        {

            var validateGreet = ValidateUserGreeting(slots[greet]);
            if (validateGreet.IsValid) 
            {
                return Close(sessionAttributes,
                              "Fulfilled",
                              new LexResponse.LexMessage
                              {
                                  ContentType = "PlainText",
                                  Content = String.Format("Hello Kindly choose one option")
                              },
                              new LexResponse.LexResponseCard
                              {
                                  Version = 1,
                                  ContentType = "application/vnd.amazonaws.card.generic",
                                  GenericAttachments =
                                  {
                                  new LexResponse.LexGenericAttachments
                                  {
                                      Buttons =
                                      {
                                         new LexResponse.LexButton
                                         {
                                             Text = "Shop Now",
                                             Value = "Shop Now"
                                         }
                                      },
                                      AttachmentLinkUrl = null,
                                      Title = "Shopping",
                                      SubTitle …
Run Code Online (Sandbox Code Playgroud)

c# chatbot aws-lambda aws-sdk-net aws-lex

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