已关闭
【日志】配置 LogFile 后文件日志静默丢失且未持久化 #2
yangxt65535创建于 26 天前关闭于 17 天前
26 天前 添加了label:sig/sig-orchestration-engine
openFuyao-bot
26 天前 评论:
26 天前 评论:
欢迎来到 openFuyao 社区
Hey @yangxt65535 , 感谢你对社区的贡献.
机器人使用手册
有关指令的使用,可以点击 此处 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。您可以自助配置此仓库的 PR 合并规则,更多详情,请参阅此处。
联系指引
有疑问可以联系 SIG: sig-orchestration-engine ,
维护者是: @ccnu_xeon, @chenchuanyu, @ewon, @foxbit, @javadoors, @regandy, @wang-CaaSCore, @zbbbc, @zhangweitao, @zhangxyjlu ,
审核者是: @fisher789, @highsky123, @hlb-source, @luogangyi, @mmmonsterrr, @piamposer-li, @qiaohaofeng, @ruanhanqing, @weiguozhang, @wwthw, @yutao88, @zhangjianjinok .


26 天前 关联了里程碑:v26.09
26 天前 issue优先级由 无优先级 改变为 次要
26 天前 关联了看板:openFuyao - v26.09问题单
26 天前 修改了issue 的描述
26 天前 修改了issue 的描述
26 天前 修改标题为 “【日志】配置 LogFile 后文件日志静默丢失且未持久化”,原标题为“【日志】配置 LogFile 后文件日志静默丢失”
26 天前 修改了issue 的描述
25 天前 关联了pull request:fix: 修复日志文件句柄过早关闭并落盘到 /var/log/openFuyao
20 天前 关闭了 issue
17 天前 issue状态由 开启 改变为 待测试
17 天前 重新打开了 issue
17 天前 issue状态由 待测试 改变为 已完成
17 天前 关闭了 issue
17 天前 将 Black-max12138 设为负责人
环境信息/ Environment
--
问题简述/ Brief Description
配置
--log-file参数指定日志文件路径后,对应的日志文件被创建,但始终为空(0 字节),日志内容仅输出到 stderr,文件日志静默丢失。此外,日志仅保存在 Pod 内部,未落盘到节点
/var/log/openFuyao路径下,若 Pod 重启则丢失日志记录。问题详情&复现步骤 / Details & Reproduction Steps
f, err := os.OpenFile(cfg.LogFile, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0644) config.Must(err, "failed to open log file") defer f.Close() // ← 第 56 行 log.SetOutput(io.MultiWriter(os.Stderr, f)) logWriter = io.MultiWriter(os.Stderr, f)defer f.Close()在setupLogging函数返回时立即执行,文件句柄被关闭。此时程序刚完成日志配置,尚未写入任何日志。setupLogging返回后,logWriter和log.SetOutput中持有的文件句柄已关闭,后续所有日志写入均静默失败(os.File.Write返回os.ErrClosed,日志包忽略该错误)。由于日志文件未落盘,使用
kubectl cp提取该日志文件,文件为空:期望结果/ Expected Results
配置
--log-file后,日志文件应正常写入日志内容,文件大小随日志产出增长,且落盘到节点上。实际结果/Actual Results
配置
--log-file后,日志文件被创建但始终为空(0 字节),日志内容仅输出到 stderr,且节点上无日志文件落盘。