Go 如何为http.listendServe设置访问/错误日志

Go 如何为http.listendServe设置访问/错误日志,go,Go,我将以下内容用于一个简单的服务器。我想知道如何为所有记录时间戳、方法、请求url和http响应代码的请求设置访问日志 http.HandleFunc("/foo", funcFoo) err := http.ListenAndServe("127.0.0.1:2074", nil) 请看这里: 这将记录整个服务器上的所有传入连接os.Stdout可以由提供io.Writer的任何内容(即文件、HTTP流等)替换。如果希望按路线进行,可以执行以下操作: http.Handle("/foo", h

我将以下内容用于一个简单的服务器。我想知道如何为所有记录时间戳、方法、请求url和http响应代码的请求设置访问日志

http.HandleFunc("/foo", funcFoo)
err := http.ListenAndServe("127.0.0.1:2074", nil)
请看这里:

这将记录整个服务器上的所有传入连接
os.Stdout
可以由提供
io.Writer
的任何内容(即文件、HTTP流等)替换。如果希望按路线进行,可以执行以下操作:

http.Handle("/foo", handlers.LoggingHandler(os.Stdout, funcFoo))

它还可以与http.Handler兼容的路由器和其他路由器/框架一起使用。

对于简单的http.ListendServe类型实现,您可以像这里一样使用包装函数。如果您需要格式化日志,您可以使用
CustomLoggingHandler
函数。
http.Handle("/foo", handlers.LoggingHandler(os.Stdout, funcFoo))