我正在编写一个用于日志记录的自定义spring boot starter项目。我的logback-spring.xml变得很大,希望将附加符放入单独的文件(console-appender.xml和file-appender.xml)中,并希望包含在logback-spring.xml文件中,如下所示。我将所有三个XML放在自定义starter项目的src/main/resources文件夹中。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<springProperty scope="context" name="JSONLOGSENABLED" source="spring.logs.json.enabled" defaultValue="true" />
<springProperty scope="context" name="JSONLOGSAPPENDER" source="spring.logs.json.appender" defaultValue="console" />
<if condition='property("JSONLOGSENABLED").equalsIgnoreCase("true")'>
<then>
<include file="{path to file}/console-appender.xml"/>
<include file="{path to file}/file-appender.xml"/>
<root level="INFO">
<if condition='property("JSONLOGSAPPENDER").equalsIgnoreCase("file")'>
<then>
<appender-ref ref="FILEJSON" />
</then>
<else>
<appender-ref ref="CONSOLEJSON" />
</else>
</if>
</root>
</then>
</if>
<logger
name="org.springframework.web.filter.CommonsRequestLoggingFilter">
<level value="DEBUG" />
</logger>
</configuration>
文件-appender.xml
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>testFile.log</file>
<append>true</append>
<!-- set immediateFlush to false for much higher logging throughput -->
<immediateFlush>true</immediateFlush>
<!-- encoders are assigned the type
ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
<encoder>
<pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
</encoder>
</appender>
但是当在我的Spring Boot应用程序中使用这个启动程序时,它无法解析控制台和文件附加文件。
我尝试过以下路径:
<include file="/src/main/resources/console-appender.xml"/>
<include file="./console-appender.xml"/>
<include resource="console-appender.xml"/>
在这种情况下如何正确包含文件?
是的。有可能。Logback使用Joran,因此您必须遵循Joran规则。
有关更多信息,请参阅文档。
无论如何,这是执行您所要执行的任务的首选方法。
例如,我定义了两个文件,然后您可以根据自己的喜好对其进行修改。
logback-spring.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="console-appender.xml"/>
<root level="debug">
<appender-ref ref="CONSOLE"/>
</root>
</configuration>
<included>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%date{"yyyy-MM-dd HH:mm:ss.SSS", Europe/Rome} [%mdc{id}] [%-11thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
</included>
请注意,
标记是必需的
尝试转换多个时。使用py2exe将文件复制到exe文件中我得到错误:回溯(最近一次调用上次):文件“ParentWindow.py”,第7行,in 提到的“FileAnalysers1”是包含. py脚本的python包。如何在exe中包含整个包?
问题内容: 我正在编写一个网络自动化程序,到目前为止,使用Selenium的FirefoxDriver可以正常工作。但是,如果未安装Firefox,我想使其使用Chrome。我下载了ChromeDriver,将其放在Eclipse项目的文件夹中,然后运行它。在我添加之后,它运行良好。但是,当我尝试导出它时(使用Eclipse的标准Export)。我相信它会崩溃,因为它找不到ChromeDriver
问题内容: 我正在使用pyinstaller创建我的python脚本的可执行文件。 在脚本中,我使用了以下导入: 问题是,运行时,它将导致包括Firefox而不是Chrome。在结果文件夹c:… \ dist \ myscript \ selenium \ webdriver中,有一个firefox文件夹,因此它只是跳过了chromedriver,这对我来说是个严重的问题,因为脚本需要与Chrom
如果任何人有一个解决办法,或者可以指出我应该读什么的方向,以进一步理解这一点,这将是非常感谢的。 参见下面的cmakelists.txt
我还使用tkinter用Python3.7编写了一个程序。因为我使用的是外部图片,所以当我将所有内容编译成一个exe时,我需要包含它们。我尝试过执行,但仍然出现以下错误: _特金特。Tcl错误:无法打开“files/bg.png”:没有这样的文件或目录 代码如下: 我做错了什么?我也尝试过添加二进制文件,将该文件添加到我的spec文件中。我真的搞不懂!
问题内容: 我想创建一个XML文件,该文件将用于存储Java程序的结构。我能够成功解析Java程序并根据需要创建标签。当我尝试,包括我的标签中的源代码,就会出现问题,因为Java源代码可以使用的实体引用广大和保留的字符,如,,,。我无法创建有效的XML。 我的XML应该像这样: 这样,但是问题是条件表达式或其他语句中有很多或其他保留的符号,这妨碍了XML的验证。由于所有这些数据(源代码)都是由用户