【问题标题】:Add ZeroWidthChar in Quarkus logs在 Quarkus 日志中添加 ZeroWidthChar
【发布时间】:2022-09-27 21:54:05
【问题描述】:

我想使用 PLG 堆栈(Promtail、Loki 和 Grafana)和 Quarkus 服务来配置多线处理器。我正在关注link 这样做,但我无法在我的 quarkus-app/application.properties 文件中注入零宽度字符:它要么按原样打印,要么用 ? 替换它。这是我到目前为止所尝试的:

quarkus.log.console.format=U+200B%d{HH:mm:ss} %-5p traceId=%X{traceId}, parentId=%X{parentId}, spanId=%X{spanId}, sampled=%X{sampled} [%c{2.}] (%t) %s%e%n

quarkus.log.console.format=​%d{HH:mm:ss} %-5p traceId=%X{traceId}, parentId=%X{parentId}, spanId=%X{spanId}, sampled=%X{sampled} [%c{2.}] (%t) %s%e%n

有任何想法吗 ?

    标签: quarkus grafana-loki promtail


    【解决方案1】:

    我不确定为什么这对您不起作用-您可以尝试其他表示形式,例如 ​​ 或者 java Unicode \u200B 例如

    quarkus.log.console.format=\u200B%d{HH:mm:ss} %-5p traceId=%X{traceId}, parentId=%X{parentId}, spanId=%X{spanId}, sampled=%X{sampled} [%c{2.}] (%t) %s%e%n
    

    如果这些都不起作用,并且您无法获得任何零宽度空间来呈现您喜欢的内容,那么正如文档所述......

    “任何不太可能成为您常规的特殊字符 日志应该做得很好”

    所以也许你可以只用波浪号~,或星号*,或其他一些非字母数字符号?

    例如

    波浪号

    quarkus.log.console.format=~{HH:mm:ss} %-5p traceId=%X{traceId}, parentId=%X{parentId}, spanId=%X{spanId}, sampled=%X{sampled} [%c{2.}] (%t) %s%e%n
    

    编辑:您也可以在其中粘贴Zero-width space - 但显然它看起来好像什么都没有:)

    quarkus.log.console.format=​{HH:mm:ss} %-5p traceId=%X{traceId}, parentId=%X{parentId}, spanId=%X{spanId}, sampled=%X{sampled} [%c{2.}] (%t) %s%e%n
    

    【讨论】:

    • 你以前试过吗?我尝试了以上所有方法都没有运气!我也不能打赌像你建议的那样替换随机特殊字符:如果同一行中有另一个匹配项,它将在 Loki/Grafana 中分成单独的行。
    • @iabughosh - 嗯,我明白你的意思,但 Zero-width space 也只是一个“随机特殊字符” - 你知道 100% 它不会出现在日志中,对吧?所以那么粗暴地应该还有其他人......我的意思是 - 选择你! - en.wikipedia.org/wiki/List_of_Unicode_characters - ɏ, ,
    • 如果我想想办法,可能是 2 或 3 个特殊字符组合,但绝对不是一个特殊字符。
    • @iabughosh - 但Zero-width space 只是一个特殊字符 - 所以你基本上是说这也行不通?除了它是non-printing character 之外,该特定字符没有任何“魔力”。考虑一下 - 您也可以尝试将其粘贴(尽管它看起来不存在)查看我的编辑。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-28
    • 1970-01-01
    • 1970-01-01
    • 2019-05-30
    • 2015-10-25
    • 2018-07-29
    • 1970-01-01
    相关资源
    最近更新 更多