草庐IT

java - 在log4j中使用MDC动态命名日志文件

是否有可能一些如何使用MDC在运行时命名日志文件。我有一个Web应用程序,它使用tomcat文档库同时被不同的名称调用。所以我需要为他们每个人准备单独的日志文件。 最佳答案 这可以在Logback中完成,Log4J的继任者。Logbackisintendedasasuccessortothepopularlog4jproject,pickingupwherelog4jleavesoff.请参阅SiftingAppender的文档TheSiftingAppenderisuniqueinitscapacitytoreferenceand

java - 将 libgdx 项目导入 Eclipse 时未绑定(bind)类路径变量 junit 和 log4j

我正在尝试导入并运行此处列出的项目:Scene2dActionsandEventHandling我首先下载zip文件,然后将其导入到eclipse中。从这里我得到以下三个错误(在解决其他与不正确的android版本有关的错误之后):DescriptionResourcePathLocationTypeUnboundclasspathvariable:'M2_REPO/junit/junit/4.5/junit-4.5.jar'inproject'game-test-desktop'game-test-desktopBuildpathBuildPathProblemDescription

java - Log4j 中带日期的文件名

我正在尝试将当前日期附加到log4j日志文件。所以它会是这样的:myApp-2011-01-07.log问题是我不想使用DailyRollingFileAppender。原因是每天都会运行另一个脚本来备份日志文件夹中的所有内容。这是在Tomcat5.5下运行。这在log4j中可能吗? 最佳答案 我想你可以在代码中设置一个系统属性来包含当前日期:static{SimpleDateFormatdateFormat=newSimpleDateFormat("yyyy-MM-dd");System.setProperty("current.

java - 使用 log4j 在日志文件中打印线程 ID

我正在尝试在我的日志文件中打印正在执行日志记录的线程的ID。我通过log.info(Thread.currentThread().getId())在代码级别完成了它,其中“log”是Logger类对象,但这不是我真正想要的。实际上,我的应用程序是一个大型分布式应用程序,不可能在每个log.info("something")中添加Thread.currentThread().getId()代码。无论如何,我可以通过它在我的log4j.xml文件中进行任何更改并为我的代码中的每个log.info打印线程ID。这是我的log4j.xml现在我假设我可以在我的xml布局中添加一些东西来打印线程

java - Maven Spring Boot 无法实例化 SLF4J LoggerFactory 报告异常 :

我正在学习教程https://spring.io/guides/gs/actuator-service/当我尝试运行应用程序时,我得到:FailedtoinstantiateSLF4JLoggerFactoryReportedexception:java.lang.NoClassDefFoundError:ch/qos/logback/core/joran/spi/JoranExceptionatorg.slf4j.LoggerFactory.bind(LoggerFactory.java:150)atorg.slf4j.LoggerFactory.performInitializat

java - 如何更改 launch4j 生成的 exe 文件的语言参数?

我正在使用Eclipse中的launch4jANT任务生成我的java程序的Windows可执行EXE文件。在ANT任务中,我使用保存的launch4j配置文件(xml)并另外覆盖版本信息。目前一切正常。可执行文件已构建并运行良好。但是当查看文件的属性详细信息(右键单击=>属性=>详细信息)时,即使我使用的是德语Windows版本,我也会得到值为“英语(美国)”的“语言”属性,因此会期望它是“德语”。您知道是否有(可能隐藏或未记录?)launch4j配置选项将语言属性设置为“德语”? 最佳答案 这确实是当时launch4j中缺少的功

java - Log4J 2 配置监控和按位比较

一位同事指出了Log4J2.3code中的以下片段:/***Calledtodetermineiftheconfigurationhaschanged.*/@OverridepublicvoidcheckConfiguration(){finallongcurrent=System.currentTimeMillis();if(((counter.incrementAndGet()&MASK)==0)&&(current>=nextCheck)){LOCK.lock();try{nextCheck=current+intervalSeconds;if(file.lastModified

java - 使用 ServletContextListener 和 SLF4J 在 contextDestroyed 上没有日志输出

我正在尝试向记录器写入一条消息,表明(Vaadin)servlet已停止,这使用SLF4J和Log4j2。为此,我使用了一个ServletContextListener,它会在应用程序启动时记录一条消息。但是,在contextDestroyed方法中登录时,我一直无法获得任何输出...这是我的实现:@WebListenerpublicclassVaadinLoggerimplementsServletContextListener{privatestaticfinalLoggerlogger=LoggerFactory.getLogger(VaadinLogger.class);@Ov

java - 在使用 bolt 连接器运行嵌入式连接时访问 neo4j 浏览器

我的项目是用Java编写的,我创建了一个到我的Neo4j数据库的嵌入式连接,并向其添加了一个“bolt”连接器,如此处文档中所述:http://neo4j.com/docs/java-reference/current/#tutorials-java-embedded代码是:GraphDatabaseSettings.BoltConnectorbolt=GraphDatabaseSettings.boltConnector("0");graphDb=newGraphDatabaseFactory().newEmbeddedDatabaseBuilder(newFile("C:/.../

java - 将 org.dom4j.Document 转换为 org.w3c.dom.Document 和 XML 签名的问题

我有一些类已经使用了DOM4J读取XML文件并提供获取数据的方法。现在,我需要添加检查XML数字的可能性签名。使用org.w3c.dom并遵循http://java.sun.com/developer/technicalArticles/xml/dig_signature_api/一切正常。因此,我尝试使用DOMWriter将org.dom4j.Document转换为org.w3c.dom.Document,但在此之后签名验证不起作用。我认为它发生这种情况是因为DOMWiter正在更改XML树(正如doc4.asXML()似乎显示的那样)。我试图找到一些设置以保持文档的完整性,但是DO