{
  "appenders": {
    "console": {
      "type": "console"
    },
    "debug": {
      "type": "dateFile",
      "encoding": "utf-8",
      "filename": "${basePath}/log/debug",
      "pattern": "-yyyy-MM-dd.log",
      "alwaysIncludePattern": true,
      "layout": {
        "type": "pattern",
        "pattern": "[%d{yyyy-MM-dd hh.mm.ss.SSS} %-4p ][%z  %c] %m"
      },
      "maxLogSize ": 31457280
    },
    "maxDebug": {
      "type": "logLevelFilter",
      "appender": "debug",
      "level": "trace",
      "maxLevel": "debug"
    },
    "info": {
      "type": "dateFile",
      "filename": "${basePath}/log/info",
      "encoding": "utf-8",
      "pattern": "-yyyy-MM-dd.log",
      "maxLogSize": 10000000,
      "alwaysIncludePattern": true,
      "layout": {
        "type": "pattern",
        "pattern": "[%d{yyyy-MM-dd hh.mm.ss.SSS} %p ][%z  %c] %m"
      },
      "compress": true
    },
    "equalInfo": {
      "type": "logLevelFilter",
      "appender": "info",
      "level": "info",
      "maxLevel": "info"
    },
    "warn": {
      "type": "dateFile",
      "filename": "${basePath}/log/warn",
      "encoding": "utf-8",
      "pattern": "-yyyy-MM-dd.log",
      "maxLogSize": 10000000,
      "alwaysIncludePattern": true,
      "layout": {
        "type": "pattern",
        "pattern": "[%d{yyyy-MM-dd hh.mm.ss.SSS} %p ][%z  %c] %m"
      },
      "compress": true
    },
    "equalWarn": {
      "type": "logLevelFilter",
      "appender": "warn",
      "level": "warn",
      "maxLevel": "warn"
    },
    "error": {
      "type": "dateFile",
      "filename": "${basePath}/log/error",
      "pattern": "-yyyy-MM-dd.log",
      "maxLogSize": 10000000,
      "encoding": "utf-8",
      "alwaysIncludePattern": true,
      "layout": {
        "type": "pattern",
        "pattern": "[%d{yyyy-MM-dd hh.mm.ss.SSS} %p ][%z  %c] %m"
      },
      "compress": true,
      "level": "error"
    },
    "minError": {
      "type": "logLevelFilter",
      "appender": "error",
      "level": "error"
    }
  },
  "categories": {
    "default": {
      "appenders": [
        "console",
        "maxDebug",
        "equalInfo",
        "equalWarn",
        "minError"
      ],
      "level": "info"
    }
  }
}