[JENKINS-44972] 截断的日志显示在行中间,显示了以 Base64 编码的 ConsoleNote 垃圾
作者: jenkins-infra-bot创建于 2017年6月19日更新于 2026年9月16日
标签good first issueimported-jira-issuecomponent:corepriority:minorresolution:unresolved
当您查看一个被截断的日志文件(Skipping ... Full Log)时,通常文本会在行中间恢复。这本身就很丑陋,但如果偏移量恰好位于一个已编码的 ConsoleNote 中,则在流自行纠正之前会出现一段混乱的 Base64 垃圾。
要么 console.jelly 应该使用更复杂的核心 API 来找到位于行边界的 offset(这可能效率低下);要么 AnnotatedLargeText.writeHtmlTo 应该跳过任何初始部分行,例如使用 start - 1,并使用一个包装 OutputStream,该流丢弃了所有在第一个换行符之前的内容,然后将其输入映射为输出;或者 ConsoleAnnotationOutputStream 应该具有此选项。
--- 最初由- assignee: shreygupta198
- status: Open
- priority: Minor
- component(s): core
- label(s): newbie-friendly
- resolution: Unresolved
- votes: 2
- watchers: 4
- imported: 2025-11-24
当您查看一个被截断的日志文件(Skipping ... Full Log)时,通常文本会在行中间恢复。这本身就很丑陋,但如果偏移量恰好位于一个已编码的 ConsoleNote 中,则在流自行纠正之前会出现一段混乱的 Base64 垃圾。
要么 console.jelly 应该使用更复杂的核心 API 来找到位于行边界的 offset(这可能效率低下);要么 AnnotatedLargeText.writeHtmlTo 应该跳过任何初始部分行,例如使用 start - 1,并使用一个包装 OutputStream,该流丢弃了所有在第一个换行符之前的内容,然后将其输入映射为输出;或者 ConsoleAnnotationOutputStream 应该具有此选项。内容来源: jenkinsci/jenkins