【发布时间】:2023-01-08 17:16:54
【问题描述】:
我的项目是用 spring-cloud-function 编写的,部署在 aws-lambda 中。我有一个要求,我应该在其中记录事件。
一点点搜索告诉我使用
com.amazonaws.services.lambda.runtime.Context 通过这样做进行日志记录:
context.getLogger().log("log event here");
我有一个 spring 云函数,它接收 APIGatewayProxyRequestEvent 作为输入,APIGatewayProxyResponseEvent 作为输出参数
又搜索了一下,发现获取上下文,这个可以用org.springframework.messaging.Message包裹
所以我写了这样的函数:
public Function<Message<APIGatewayProxyRequestEvent>, APIGatewayProxyResponseEvent> saveEmployee(){
return request -> {
Context context = request.getHeaders().get("aws-context", Context.class);
context.getLogger().log("employee save request---: " + request);
//do something
但是上下文评估为 null 并且我得到 NullPointerException
有人可以指出可能出了什么问题吗?或者如何获取上下文?
提前致谢
【问题讨论】:
-
有任何指示吗?
标签: logging aws-lambda spring-cloud-function