You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Serverless Offline 搭配Golang时日志未输出到控制台反而部分作为HTTP响应返回的问题

Serverless Offline 搭配Golang时日志未输出到控制台反而部分作为HTTP响应返回的问题

我最近在用Serverless Offline搭配Golang开发AWS Lambda函数时,碰到了一个奇怪的日志输出问题,具体情况如下:

配置与代码示例

serverless.yml 配置

service: go-sls # Define your service name

provider:
  name: aws
  runtime: go1.x
  region: eu-central-1 # Put your AWS region

functions:
  health:
    handler: main.go # route to binary
    events:
      - http:
          path: /health
          method: get
          cors: true
          private: false

plugins:
  - serverless-offline

main.go 代码

package main

import (
    "context"
    "fmt"
    "log"

    "github.com/aws/aws-lambda-go/events"
    "github.com/aws/aws-lambda-go/lambda"
)

type Response events.APIGatewayProxyResponse

func Handler(ctx context.Context, request events.APIGatewayProxyRequest) (events.APIGatewayProxyResponse, error) {
    log.Println("trying log")
    fmt.Println("it prints")
 return events.APIGatewayProxyResponse{Body: "It works!", StatusCode: 200}, nil
}

func main() {
 lambda.Start(Handler)
}

实际运行结果

  • fmt.Println("it prints") 的内容完全没有出现在本地控制台
  • log.Println("trying log") 的内容没有打印到控制台,反而被包含在了HTTP响应的返回内容中,我用Postman测试的结果如下:

Postman返回结果截图

预期行为

我原本期望fmt.Println输出的it prints和log.Println输出的trying log,都能正常输出到本地运行Serverless Offline的控制台里,而不是出现在HTTP响应中。

备注:内容来源于stack exchange,提问作者Belle_meee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 08:39:34