草庐IT

log4j-over-slf

全部标签

java - 为什么 log4j 在(多次)重复相同异常后禁用堆栈跟踪?

在我们的一个客户安装中,我们遇到了数千次相同的异常。在大量记录良好的堆栈跟踪(9332)之后,仍然记录了异常的发生,但没有堆栈跟踪。重新启动java进程后,同样的事情:这次我们有17858个堆栈跟踪,然后只有异常发生本身。有个类似的问题here,但没有答案...这是log4j的特性还是错误?(我相信前者,因为我真的很喜欢那些apache家伙做的事)有什么想法吗? 最佳答案 使用Java5或更高版本?然后你会看到:ThecompilerintheserverVMnowprovidescorrectstackbacktracesfora

java - IntelliJ 13 Tomcat 配置类 org.springframework.web.util.Log4jConfigListener 的应用程序监听器时出错

我正在尝试使用IntelliJ13及其内置的Tomcat部署插件运行Java/Spring/Hibernate/Ivy应用程序。我使用的是Tomcat8.0.9,但我也尝试过使用Tomcat6.0.39。当我尝试启动Tomcat时,我正在创建一个工件;更具体地说,是一场爆炸性的war。我正在使用Ivy来解决我的依赖关系,这是因为它是一个不使用Maven的遗留应用程序。愚蠢,我知道。当尝试使用任何版本的Tomcat从IntelliJ内部运行此应用程序时,我在“服务器”日志中收到以下消息:C:\dev\apache-tomcat-6.0.39\apache-tomcat-6.0.39\bi

java - 使用 com4j 连接到现有的 iTunes 实例

使用com4j和iTunes包装器我可以启动一个iTunes实例ClassFactory.createiTunesApp();从我的应用程序成功使用API。但如果iTunes已经独立运行,那么它会失败com4j.ExecutionException:com4j.ComException:80080005CoCreateInstancefailed:Serverexecutionfailed:.\com4j.cpp:153atcom4j.ComThread.execute(ComThread.java:236)atcom4j.Task.execute(Task.java:26)atcom

java - Neo4j:如何使用 java api 在 neo4j 中打开现有数据库?

如何使用javaapi在neo4j中使用已有的数据库?我已经创建了一个neo4j数据库并想将其用于多个查询。但是,当我打开我创建的现有数据库并进行一些查询时,它没有返回任何内容。我使用的代码片段如下:privatestaticfinalStringDB_PATH="c:/Users/Reed/workspace/test/target1/ttldb";GraphDatabaseServicedb=newGraphDatabaseFactory().newEmbeddedDatabase(DB_PATH);ExecutionEngineengine=newExecutionEngine(

java - 将org.slf4j.MDC与Netty channel 一起使用?

实际上,我想做的是HowtouseMDCwiththreadpools?所要问的,但要与Netty一起。我想要每个Channel关联的MDC信息。Netty有哪些选择?如果我需要手动重置MDC,可以使用哪种方法从一个地方进行重置? 最佳答案 看看GitHub上的mdedetrich/mdc-async-netty-eventloopgroup项目。基本上,您必须装饰EventLoopGroup.execute@Overridepublicvoidexecute(Runnablerunnable){delegate.execute(n

java - neo4j 直接访问和通过 OGM 之间的显着性能差异

我正在使用插入、更新、删除和查询的简单基准评估Neo4j图形数据库的性能。与通过Neo4j驱动程序直接访问相比,使用Neo4jOGM我发现执行时间明显变慢(大约2-4倍)。例如,在我的机器上,对于10K节点和11K关系,删除操作(参见下面的代码)在500毫秒内完成,而在1200毫秒内完成。我想知道为什么会发生这种情况,特别是因为下面的删除代码甚至没有使用任何节点实体。我可以想象OGM有一些开销,但这似乎太多了。有人知道为什么它变慢了吗?示例节点:publicabstractclassAbstractBaseNode{@GraphId@Index(unique=true)privateL

java - 从纯客户端调用远程 EJB(RMI over IIOP)时如何传播 JAAS Subject

我正在测试JAASSubject的传播用customPrincipal从运行在原始Java运行时上的独立EJB客户端到JavaEE服务器。我同时针对JBoss和WebSphere实现。根据thisforumthread我曾预计它会很容易地与JBoss一起工作。这是我的EJB客户端代码片段:Subjectsubject=newSubject();PrincipalmyPrincipal=newMyPrincipal("meImyself");subject.getPrincipals().add(myPrincipal);PrivilegedExceptionActionaction=n

java - 如何在 log4j 文件名中插入当前 webapp 的文件夹名称

我正在编写一个要在Tomcat中部署的JavaWeb应用程序,并且我正在使用log4j进行日志记录。我喜欢在生成的日志文件的名称中自动插入Web应用程序的文件夹名称。目前log4j.properties中的文件名设置如下所示:log4j.appender.R.File=${catalina.home}/logs/mywebapp.log我需要这样的东西:log4j.appender.R.File=${catalina.home}/logs/${current.webapp.folder}.log是否需要在属性文件中为此指定某种环境变量,或者我必须从代​​码中实例化记录器?

SpringBoot整合Log4j2日志框架

SpringBoot底层默认使用logback日志框架。切换使用Log4j2日志框架。pom.xml配置org.springframework.bootspring-boot-starter-web spring-boot-starter-loggingorg.springframework.bootorg.springframework.bootspring-boot-starter-log4j2log4j2-spring.xml文件命名固定log4j2-spring.xml,让SpringBoot加载配置文件。文件名为log4j2.xml,文件将绕过SpringBoot直接调用日志框架。F

java - 如何在 maven 中设置 java.util.logging 日志级别(用于 Jenkins 插件 (JenkinsRule) 测试)

我正在编写一个Jenkins插件,并使用mvnverify和JenkinsRule对其进行测试。到目前为止一切顺利,但我希望能够使输出安静下来;这是每次测试的页数。我使用什么样的配置文件,我应该把它放在哪里?我已经在src/test/resources(以及target/test-classes)中尝试了一个合适的log4j.properties(并且只是为了确定,一个logging.properties);我试过将它们放在target/jenkins-for-test/WEB-INF/classes中,但这也没有帮助。万一它打乱了任何人的内存,我试图抑制的输出是这样的Feb08,20