选项1:使用logback.configurationFile系统属性指定logback配置文件的位置。这实际上允许您在每个项目有多个配置文件。根据
logback documentation,此属性的值可以是URL,类路径上的资源或应用程序外部文件的路径。例如:
-Dlogback.configurationFile = / path / to / config.xml
选项2:使用变量替换来使用系统属性设置日志文件的名称。例如:
>您的appender可以如下设置文件:
< file> / var / tmp / $ {mycompany.myapplication} .log< / file>
>然后你可以在启动java时指定该变量的值:
-Dmycompany.myapplication = SomeUtility
选项3:使用系统属性设置记录器级别。这将允许您记录更多/更少。例如:
>把它放入你的logback配置文件:
< logger name =“com.mycompany”level =“$ {mycompany.logging.level:-DEBUG}”/>
这将导致指定的软件包默认在DEBUG级别进行日志记录。
>如果要在特定应用程序中将日志级别更改为INFO,则在启动该应用程序时将以下内容传递给java:
-Dmycompany.logging.level = INFO
选项4:通过将系统属性命令行参数传递给java来添加/删除appender。这将允许您登录到不同的地方。注意conditional processing requires janino.例如:
>将它放入您的logback配置文件,无论您将放置< appender-ref>,将ref值更改为您自己的< appender>之一,当然:
< if condition =“property(”mycompany.logging.console“)。equalsIgnoreCase(”true“)”>
< then>< appender-ref ref =“STDOUT”/>< / then>< / if>
>如果要启用此附加程序,则在启动该应用程序时将以下内容传递给java:
-Dmycompany.logging.console = true
关于系统属性,您将它们作为-D参数传递给java。java -Dmy.property = / path / to / config.xml com.mycompany.MyMain