Stern日志工具v1.32.0版本发布:新增JSON美化与条件过滤功能
Stern是一个强大的Kubernetes日志查看工具,它允许开发者实时查看多个Pod的日志输出,并提供了丰富的过滤和格式化功能。与传统的kubectl logs命令相比,Stern能够同时跟踪多个Pod的日志,并支持基于颜色、时间戳等多种方式的日志格式化输出,极大提升了在Kubernetes环境下调试和监控应用的效率。
核心功能升级
新增JSON美化输出功能
在v1.32.0版本中,Stern引入了两个重要的模板函数来改进JSON日志的处理能力:
-
prettyJSON函数:这个新函数可以自动解析输入的JSON字符串并以美观格式输出。如果输入不是有效的JSON,则会原样输出字符串。这在处理结构化日志时特别有用,可以显著提升日志的可读性。
-
tryParseJSON函数:配合with语句使用,可以只处理有效的JSON日志,自动过滤掉非JSON格式的日志内容。
开发者现在可以通过以下方式使用这些新功能:
stern --template='{{ .Message | prettyJSON }}{{"\n"}}' backend
或者结合条件判断,只处理JSON日志:
stern --template='{{ with $msg := .Message | tryParseJSON }}{{ prettyJSON $msg }}{{"\n"}}{{end}}' backend
增强Bunyan日志支持
针对使用Bunyan日志库的Node.js应用,新版本增加了bunyanLevelColor模板函数。这个函数能够根据Bunyan定义的日志级别数值(如10-TRACE,20-DEBUG等),自动为不同级别的日志应用适当的颜色,使得日志级别的视觉区分更加直观。
新增Pod条件过滤功能
v1.32.0版本引入了一个重要的新标志**--condition**,允许用户基于Pod的状态条件来过滤日志。这个功能特别适合在调试或监控时,只关注特定状态的Pod。
使用示例:
stern . --condition=ready=false --tail=0
这条命令只会显示未就绪(ready=false)的Pod的日志。需要注意的是,此功能目前仅支持与--tail=0或--no-follow参数一起使用。
其他改进与修复
-
修复了extjson和ppextjson模板函数的描述,使其更准确地反映功能。
-
增强了levelColor模板函数,现在可以正确处理数字类型的日志级别值。
-
优化了--no-follow与--tail=0参数组合时的行为检查,确保在这种情况下条件过滤功能能够正常工作。
使用建议
对于经常需要处理Kubernetes日志的开发者,特别是那些使用JSON格式日志或Bunyan日志库的团队,这个版本提供了显著的可用性提升。新的JSON美化功能使得结构化日志更易读,而条件过滤则为故障排查提供了更精准的工具。建议开发者在日常调试中尝试这些新功能,可以大大提高工作效率。
对于运维团队,新的Pod条件过滤功能特别有价值,可以在服务出现问题时快速定位到异常Pod,而不需要手动筛选日志。结合Stern原有的多Pod日志聚合能力,这个版本进一步巩固了Stern作为Kubernetes日志查看首选工具的地位。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0152- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0112