网站首页 > 博客文章 正文
k8s的日志库
在Kubernetes (K8s) 中,默认使用的是 kubelet 和 kubectl 客户端日志库。这些组件使用了 glog 日志库,它是Golang的一个轻量级日志库。
glog 是一个Google开源的日志库,它提供了类似于标准库的 log 包的接口,但具有更高级的特性和配置选项。它支持日志级别、格式化输出、日志文件的轮转和分割等功能。glog 还提供了命令行标志,可以动态地配置日志级别和输出路径等参数。
在Kubernetes的源代码中,你会看到很多地方使用了 glog 日志库进行日志记录,例如kubelet组件、kube-proxy组件、kubectl命令行工具等。
etcd的日志库
etcd 是一个分布式键值存储系统,用于可靠存储和检索数据。Etcd 使用的是 zap 日志库进行日志记录。
zap(go.uber.org/zap) 是 Uber 开源的一个快速、结构化、类型安全的日志库,被广泛用于许多大规模分布式系统中。它提供了高性能和低内存占用的特性,并具有丰富的配置选项和灵活的 API。zap 的特点包括高度可定制的日志级别、字段注入、异步和同步记录模式、结构化日志记录等。
Etcd 使用 zap 日志库来记录主进程的运行日志,包括关键操作、错误日志、调试信息等。它可以帮助开发人员和运维人员了解 Etcd 的运行状态、故障排查和性能调优。
istio的日志库
仍然使用的是Uber的zap(go.uber.org/zap)日志库
InfluxDB的日志库
仍然使用的是Uber的zap(go.uber.org/zap)日志库
Prometheus的日志库
主要使用的是github.com/go-kit/log这个日志库,它的结构化日志记录提供了一个最小的接口。它可以被封装以编码规范、强制类型安全性、提供分级日志记录等功能。它可用于典型的应用程序日志事件和日志结构化数据流。
// 未结构化
log.Printf("HTTP server listening on %s", addr)
// 结构化
logger.Log("transport", "HTTP", "addr", addr, "msg", "listening")
Traefik的日志库
主要是用logrus(
github.com/sirupsen/logrus),以及zerolog(
https://github.com/rs/zerolog)来记录日志。
猜你喜欢
- 2025-03-17 Golang defer的使用(go语言中defer)
- 2025-03-17 golang使用logrus生成日志(golang gc日志)
- 2025-03-17 在Golang中使用日志模块(golang 日志处理)
- 2025-03-17 golang性能优化实践(golang 性能优化)
- 2025-03-17 超干货:Golang 简洁架构实战(golang技巧)
- 2025-03-17 Golang 如何实现定时任务(golang定时任务调度)
- 2025-03-17 每日一库之 logrus 日志使用教程(log日志怎么打开)
- 2025-03-17 Golang:将日志以Json格式输出到Kafka
- 2025-03-17 运维大神如何使用 Golang 日志监控应用程序
你 发表评论:
欢迎- 374℃手把手教程「JavaWeb」优雅的SpringMvc+Mybatis整合之路
- 369℃用AI Agent治理微服务的复杂性问题|QCon
- 360℃初次使用IntelliJ IDEA新建Maven项目
- 353℃Maven技术方案最全手册(mavena)
- 351℃安利Touch Bar 专属应用,让闲置的Touch Bar活跃起来!
- 349℃InfoQ 2024 年趋势报告:架构篇(infoq+2024+年趋势报告:架构篇分析)
- 348℃IntelliJ IDEA 2018版本和2022版本创建 Maven 项目对比
- 344℃从头搭建 IntelliJ IDEA 环境(intellij idea建包)
- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)