gpt4 book ai didi

amazon-web-services - fmt.Println 输出未显示在 CloudWatch 日志中

转载 作者:IT王子 更新时间:2023-10-29 01:44:21 25 4
gpt4 key购买 nike

我使用无服务器框架创建了一个简单的 Go Lambda 来玩。我预计(根据文档)fmt.Printlnlog.Println 的所有输出都会显示在 Cloudwatch 中。但我没有看到。

这是我纯粹出于测试目的而放入的一行示例:

func Handler(request events.APIGatewayProxyRequest) (events.APIGatewayProxyResponse, error) {
fmt.Println("Hello from lambda")

(...)

我确定权限是正确的,因为我看到了日志组,并且有 Cloudwatch 条目可供查看此 lambda。我实际上可以看到正在 CloudFormation 中创建的日志组,所以我确定这不是问题所在。但我在 CloudWatch 中看不到任何 Println 语句的输出。这是我看到的:

START RequestId: fd48461b-3ecd-11e8-9e32-594932db04f2 Version: $LATEST
END RequestId: fd48461b-3ecd-11e8-9e32-594932db04f2
REPORT RequestId: fd48461b-3ecd-11e8-9e32-594932db04f2 Duration: 13.82 ms Billed Duration: 100 ms Memory Size: 256 MB Max Memory Used: 21 MB

我已经尝试了各种其他 Print 方法(如 Printf),但您不会对没有任何改变感到惊讶。

我错过了什么?

最佳答案

嗯,这很尴尬......当然,你需要在运行 sls deploy 之前运行 make......如果你不这样做,你将始终部署陈旧的代码。我会原谅自己,因为这只是我在 Go 的第二天,但它仍然很愚蠢。

我已经通过添加 deployinstall 更新了我的 Makefile,如下所示:

build:
dep ensure
env GOOS=linux go build -ldflags="-s -w" -o bin/hello hello/main.go
env GOOS=linux go build -ldflags="-s -w" -o bin/world world/main.go

deploy:
sls deploy

install: build deploy

make install 现在构建,然后部署,防止再次发生此问题。

关于amazon-web-services - fmt.Println 输出未显示在 CloudWatch 日志中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49809179/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com