【问题标题】:How to implement Log4j2 custom layout yaml configuration如何实现Log4j2自定义布局yaml配置
【发布时间】:2017-04-07 14:47:40
【问题描述】:

我正在为 log4j2 框架使用自定义布局。如何在 log4j2 yaml 配置文件中指定自定义布局? 我尝试的示例如下所示。目前说无效元素“布局”不起作用。

Configutation:
  status: warn
  packages: uk.co.logging.layout

  Properties:
    Property:
      name: logging.dir
      value: ./default_log_dir/
    Property:
      name: service.name
      value: default

  Appenders:
    Console:
      name: CONSOLE
      layout: ConnectJsonLayout

      policies:
        TimeBasedTriggeringPolicy:
          interval: 1
          modulate: true
        SizeBasedTriggeringPolicy:
          size: 250MB
    RollingFile:
      - name: APPLICATION
        fileName: ${logging.dir}/${service.name}.log
        filePattern: ${logging.dir}/${date:yyyy-MM}/${service.name}-%d{yyyy-MM-dd}-%i.log.gz
        layout: ConnectJsonLayout

        policies:
          TimeBasedTriggeringPolicy:
            interval: 1
            modulate: true
          SizeBasedTriggeringPolicy:
            size: 250MB

  Loggers:
      Root:
        level: error
        AppenderRef:
          - ref: CONSOLE
          - ref: APPLICATION
      Logger:
        - name: uk.co.xxx
          additivity: false
          level: debug
          AppenderRef:
            - ref: CONSOLE
            - ref: APPLICATION

亲切的问候,

基兰

【问题讨论】:

  • 你发现了吗?我有同样的问题。在 XML 中,您只需将 <ConnectJsonLayout/> 元素放在 中,它会转换为 RollingFile: 中的 ConnectJsonLayout: 元素;但我也得到 invalid element 错误。

标签: log4j2


【解决方案1】:
Configutation:
  status: warn
  packages: uk.co.logging.layout

  Properties:
    Property:
      name: logging.dir
      value: ./default_log_dir/
    Property:
      name: service.name
      value: default

  Appenders:
    Console:
      name: CONSOLE
      ConnectJsonLayout: {}
  Loggers:
    Root:
      level: error
      AppenderRef:
        - ref: CONSOLE

【讨论】:

  • 请添加解释您的答案的描述。
  • 这有效 - 上面,“ConnectJsonLayout”是自定义附加程序的名称。 yaml 中 的等价物是 "ConnectJsonLayout: {}" - 你必须给它分配一些东西。
猜你喜欢
  • 2016-01-05
  • 2017-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多