aws-sdk-go-v2 自定义记录器

使用 SDK 的 v1,我可以将 logrus 用于我的自定义记录器,例如:

    Logger: aws.LoggerFunc(func(args ...interface{}) {
        log.WithField("process", "s3").Debug(args...)
    }),

这已随 sdk v2 改变,https://aws.github.io/aws-sdk-go-v2/docs/configuring-sdk/logging/

看来我需要按照https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/config#WithLogger使用 logging.logger

我很难为此目的使用 logrus,有人可以建议我在这里需要做什么吗?


摇曳的蔷薇
浏览 94回答 1
1回答

慕哥9229398

似乎 sdk v2 提供了一个func 包装器来满足logging.logger:import (   ...   "github.com/aws/aws-sdk-go-v2/config"   "github.com/aws/smithy-go/logging"   log "github.com/sirupsen/logrus")func main() {        logger := logging.LoggerFunc(func(classification logging.Classification, format string, v ...interface{}) {        // your custom logging         log.WithField("process", "s3").Debug(v...)    })    cfg, err := config.LoadDefaultConfig(        context.TODO(),        ...        config.WithLogger(logger),    )    ....}
打开App,查看更多内容
随时随地看视频慕课网APP