问题内容
官方文档展示了如何使用新的结构化日志记录包,但似乎省略了如何记录错误。
https://pkg.go.dev/log/slog
package main
import (
"fmt"
"log/slog"
"os"
)
func demoFunction() error {
return fmt.Errorf("oh no: %v", 123)
}
func main() {
logger := slog.New(slog.NewJSONHandler(os.Stdout, nil))
slog.SetDefault(logger)
slog.Info("info demo", "count", 3)
slog.Warn("warn demo", slog.String("somekey", "somevalue"))
slog.Error("error demo", slog.Int("someintkey", 123))
err := demoFunction()
if err != nil {
// Here I'm logging the error as a string, but I presume there is a better way
// possibly that will log stack trace info as well.
slog.Error("the demo function got an error.", slog.String("error", err.Error()))
}
}
正确答案
有人提出了一个提案并关闭了它。我认为它最终会成为不必要的语法糖。
看来有些人已经决定包装slog.Any 调用
func ErrAttr(err error) slog.Attr {
return slog.Any("error", err)
}
以上就是如何使用“log/slog”记录错误的详细内容,更多请关注编程网其它相关文章!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容猜你喜欢
AI推送时光机如何使用“log/slog”记录错误
后端开发2024-02-06
如何在 slog 记录器中传递结构并自动使用其字段?
后端开发2024-02-06
在PHP和Bash中使用日志记录:如何轻松诊断和修复错误?
后端开发2023-09-01
win8如何清除使用记录
后端开发2022-12-28
win10使用记录如何查询
后端开发2023-07-01
ASP打包技术:如何避免响应日志记录错误?
后端开发2023-10-15
PHP 函数中如何进行错误处理和日志记录?
后端开发2024-04-26
如何查看电脑使用记录
后端开发2023-06-27
如何解决PHP开发中的日志记录和错误调试
后端开发2023-10-21
如何处理PHP开发中的日志记录和错误调试
后端开发2023-10-21
如何在PHP项目中实现日志记录和错误追踪?
后端开发2023-11-03
Python开发中的日志记录,如何避免常见的错误?
后端开发2023-10-13
如何在PHP开发中处理异常和错误日志记录?
后端开发2023-11-02
Python中如何使用numpy记录日志?
后端开发2023-08-10
如何使用firebug来记录jQuery事件
后端开发2023-06-27
Spring Boot如何使用AOP记录日志
后端开发2024-04-02
ASP.NET Core如何使用NLog记录日志
后端开发2023-06-29
Java中如何使用Git记录日志?
后端开发2023-07-06
GO语言接口:如何避免日志记录中的常见错误?
后端开发2023-06-25
如何使用async await处理错误
后端开发2023-07-02
咦!没有更多了?去看看其它编程学习网 内容吧