LoggerAdapter Extension

Summary

Extension for adapting logger output

Extension Interface

org.apache.dubbo.common.logger.LoggerAdapter

Extension Configuration

<dubbo:application logger="xxx" />

Or:

-Ddubbo:application.logger=xxx

Existing Extension

  • org.apache.dubbo.common.logger.slf4j.Slf4jLoggerAdapter
  • org.apache.dubbo.common.logger.jcl.JclLoggerAdapter
  • org.apache.dubbo.common.logger.log4j.Log4jLoggerAdapter
  • org.apache.dubbo.common.logger.log4j2.Log4j2LoggerAdapter
  • org.apache.dubbo.common.logger.jdk.JdkLoggerAdapter

Extension Guide

Directory layout:

src
 |-main
    |-java
        |-com
            |-xxx
                |-XxxLoggerAdapter.java (LoggerAdapter implementation)
    |-resources
        |-META-INF
            |-dubbo
                |-org.apache.dubbo.common.logger.LoggerAdapter (plain text file with the content: xxx=com.xxx.XxxLoggerAdapter)

XxxLoggerAdapter.java:

package com.xxx;
 
import org.apache.dubbo.common.logger.LoggerAdapter;
 
public class XxxLoggerAdapter implements LoggerAdapter {
    public Logger getLogger(URL url) {
        // ...
    }
}

XxxLogger.java:

package com.xxx;
 
import org.apache.dubbo.common.logger.Logger;
 
public class XxxLogger implements Logger {
    public XxxLogger(URL url) {
        // ...
    }
    public void info(String msg) {
        // ...
    }
    // ...
}

META-INF/dubbo/org.apache.dubbo.common.logger.LoggerAdapter:

xxx=com.xxx.XxxLoggerAdapter