aws / aws/serverless-java-container

Exception when triggering Lambda based API from Cloudwatch Events

未關閉
#368 11 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
Java
星號
1.6k
分支
574
PR 合併指標
30 天內沒有已合併 PR

描述

*To help us debug your issue fill in the basic information below using the options provided*

*Serverless Java Container version*: `1.5.1`

*Implementations:* `Spring Boot 2`

*Framework version:* `SpringBoot 2.2.6.RELEASE`

*Frontend service:* `AWS Cloudwatch Events`

*Deployment method:* `Console`

## Scenario
I'm trying to schedule a trigger for an API which I have written in Java and deployed in Lambda. Another purpose of this to avoid the cold start as I'm not using provisioned concurrency for my Lambda.
I'm not sure what event to pass so that my API gets triggered properly

## Expected behavior
I expect the API endpoint to be hit at a specific time and it should do what is implemented

## Actual behavior
Since I don't know what even to pass to my trigger so I'm gettings exceptions in my lambda cloudwatch logs

## Steps to reproduce
No code sample required, just create any Java-based Spring boot API on lambda and attach a scheduled cloudwatch event to it.
It will give exceptions in the cloudwatch logs.

## Full log output

```
2020-07-22 18:17:04.935 ERROR 1 --- [ main] c.a.s.proxy.AwsProxyExceptionHandler : Called exception handler for:
com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "id" (class com.amazonaws.serverless.proxy.model.HttpApiV2ProxyRequest), not marked as ignorable (12 known properties: "requestContext", "rawQueryString", "body", "queryStringParameters", "isBase64Encoded", "routeKey", "version", "stageVariables", "rawPath", "cookies", "headers", "pathParameters"])
at [Source: (lambdainternal.util.NativeMemoryAsInputStream); line: 1, column: 22] (through reference chain: com.amazonaws.serverless.proxy.model.HttpApiV2ProxyRequest["id"])
at com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:61) ~[task/:na]
```

貢獻指南

開啟貢獻指南

研究方向

從已記錄的 HttpApiV2ProxyRequest 反序列化失敗開始,並將已排程的 AWS CloudWatch Events payload 與 Java Spring Boot Lambda 整合所預期的 request 結構進行比較。當排程的呼叫不再引發所回報的例外,且預期的 API 行為發生時,即表示完成。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
aws, java, spring-boot
領域
api, backend, cloud
Issue 類型
缺陷
難度
3/5
預估耗時
1-2 天
活躍度
停滯
描述清晰度
需要釐清
新手友好度
25/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。