【问题标题】:Loback not accepting Html tagsLoback 不接受 Html 标签
【发布时间】:2017-11-01 07:52:36
【问题描述】:

我正在使用 Logback 登录我的应用程序。我正在使用 HTMLLayout,我的 msg 已经格式化,但是当 logbak 打印该 msg 时,它没有显示格式化的 msg。


我在 logback 中的代码是:

    <appender name="INFO-HTML"
class="ch.qos.logback.core.rolling.RollingFileAppender">
    <filter class="ch.qos.logback.classic.filter.LevelFilter">
        <level>INFO</level>
        <onMatch>ACCEPT</onMatch>
        <onMismatch>DENY</onMismatch>
    </filter>
    <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
        <layout class="ch.qos.logback.classic.html.HTMLLayout">
            <pattern>%d{yyyy-MM-dd HH:mm:ss}%level%msg</pattern>
        </layout>
    </encoder>
    <file>${TOMCAT_ROOT}/infolog.html</file>
    <append>true</append>
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <!-- rollover daily -->
        <fileNamePattern>${LOG_FOLDER}/archived/infolog.%d{yyyy-MM-dd}.%i.html</fileNamePattern>
        <maxHistory>1</maxHistory>
        <totalSizeCap>1MB</totalSizeCap>
        <timeBasedFileNamingAndTriggeringPolicy
        class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
            <maxFileSize>1MB</maxFileSize>
        </timeBasedFileNamingAndTriggeringPolicy>
    </rollingPolicy>
</appender>

消息示例:

HTTP 请求:用户:未知 - 路径:度假村 - 标头:{host=[localhost:8022], connection=[keep-alive], content-length=[795], user-agent=[Mozilla/5.0 ( X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.78 Safari/537.36], cache-control=[no-cache], origin=[chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop], content-type= [应用程序/json],授权=[g8mm505be952dc27b7hofgaa0la1],邮递员令牌=[21c3aba1-9629-9352-7d6b-25c2dcbc3eaf],接受=[/],接受编码=[gzip,放气, br],接受语言=[pt],authToken=[g8mm505be952dc27b7hofgaa0la1]} -
实体:{“url”:“sdfbgs”, “视频”:空, “服务标识”:空, “纬度”:“”, “经度”:“”, “已发布”:假 }


我从 json 中删除了一些可能会造成理解混乱的键值对。我在“HTTP REQUEST :”之后添加了 html 标记的开头,并且该标记的结尾放置在消息的末尾。

【问题讨论】:

  • 在您的问题中您声明“我的消息已格式化”,您能否更新问题以包含您尝试记录的消息的示例
  • 我已经用例子更新了问题。

标签: html logback


【解决方案1】:

回答我自己的问题。

我使用 Java 类 HTMLLayout 完成了它,它扩展了 logback 库中的 HTMLLayout 类。

然后在 logback.xml 文件中给出该类路径。

我跟随this 创建了 HTMLLayout 类。更准确地说,在第 61 行,在提供的链接中,使用了 pre 标签解决了我的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-22
    • 1970-01-01
    • 1970-01-01
    • 2019-04-08
    • 1970-01-01
    • 2014-02-21
    • 1970-01-01
    相关资源
    最近更新 更多