草庐IT

NonFTP_Access_log_domain_visits

全部标签

java - 毕竟 log4j 不是线程安全的吗?

(这是在SLES11、Java7、Tomcat6、log4j-1.2.16上)我们使用log4j将不同的内容写入不同的日志文件。我继承了这段代码,所以无论好坏,通用结构都暂时保留在这里。记录器将创建两个日志文件:main.log和stats.log。特定的统计消息通过单独的调用记录到两个记录器(您将在下面看到),并且一大堆其他内容记录到主日志。因此,在我们的所有代码中,您会看到类似Log.logMain(someMessageToLog);的内容。在我们的代码(由多个线程执行)的一个地方有以下内容:StringstatsMessage=createStatsMessage();Log.

java - Log4J 不记录任何内容

我刚刚在工作中选择了一个现有的Web应用程序,它应该使用Log4J记录其Activity。我已经完全按照我被告知的那样配置了我的工作区,其他一切(数据库连接、身份验证等)都工作正常,除了没有任何内容被写入日志文件。其他类似的应用程序登录没有问题。当应用程序启动时,我查看了WebSphere控制台,那里没有任何错误可能表明Log4J没有记录的原因。我向另一位开发人员(他曾经开发过此应用程序,但时间不长,而且比我开发的还过时)提到了这一点,他说这是非常奇怪的行为,但不知道为什么会这样无法记录并且不报告任何错误。我检查了配置文件和属性文件,一切看起来都正常。我怀疑Log4J甚至从未阅读过lo

java - "log4j: Error Could not find value for key log4j.appender.SQL_APPENDER"背后可能的原因是什么

我想知道为什么在部署我的网络应用程序时会出现此错误。log4j:ErrorCouldnotfindvalueforkeylog4j.appender.SQL_APPENDER这是我的log4j.properties文件。log4j.rootLogger=error,stdoutlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout=org.apache.log4j.PatternLayout#PrintthedateinISO8601formatlog4j.appender.s

java - Log4j 为单个类设置日志级别

我在这个包中有包mypack和MyClass。我只想记录此类的信息级别并尝试使用log4j.properties设置它:log4j.debug=truelog4j.rootLogger=ALL,debugLogfilelog4j.rootCategory=,debugLogFile#log4j.category.mypack=INFOlog4j.logger.mypack=INFOlog4j.appender.debugLogfile=org.apache.log4j.RollingFileAppenderlog4j.appender.debugLogfile.File=mylog.l

java.lang.NoClassDefFoundError : Lorg/apache/logging/log4j/Logger; but the artifact exists 错误

我正在使用Tomcat部署javawebapp。简而言之,我得到了一个很长的堆栈跟踪:GRAVE:Achildcontainerfailedduringstartjava.util.concurrent.ExecutionException:org.apache.catalina.LifecycleException:Failedtostartcomponent[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/new-webapp]][...]Causedby:java.lang.NoClassDefF

java - 为@Transactional 方法禁用警告 "Access can be package-private"

我有几个用@Transactional注释的公共(public)方法,IntelliJ显示了它们可以是包私有(private)或私有(private)的警告。@TransactionalpublicvoiddoSomething(){///body}由于用@Transactional注释的方法应该是公开的,我如何在IntelliJ中禁用此检查/警告仅针对那些方法? 最佳答案 遗憾的是,不可能让所有用@Transactional注释的方法清除警告,尽管可以将@SuppressWarnings("WeakerAccess")添加到使警告

java - 是否有强大的 java.util.logging 系统日志处理程序实现?

我正在考虑将第3方Java应用程序连接到我们的日志聚合/分析解决方案(可能是Splunk,但我们还没有最终确定我们的选择)。将Splunk代理连接到syslog似乎是最简单的方法,因此我正在寻找一种方法将应用程序日志重定向到服务器上的本地syslog守护进程。Java应用程序使用java.util.logging,不幸的是它没有开箱即用的syslog处理程序(不过我相信log4j有)。有没有经过验证的库可以做到这一点?日志负载不是很大(每个进程每分钟可能有10-20条消息,每个主机最多6个进程)但我关心可靠性和持久性(例如,当守护进程关闭时会发生什么?...)。任何帮助将不胜感激...

java - 如何将 java.util.logging 重定向到文件?

我有一个使用外部库的Java程序。主程序使用log4j来记录其消息,库使用java.util.logging。我的问题是来自外部库和主程序的日志消息在控制台中混合在一起。我想将所有日志消息从外部库重定向到一个文件。我尝试使用logging.properties文件来做到这一点:handlers=java.util.logging.FileHandler.level=INFOjava.util.logging.FileHandler.pattern=foo.logjava.util.logging.FileHandler.formatter=java.util.logging.XMLFo

java - 为什么我们通过调用 Acceptor.accept() 而不是 Visitor.visit() 来启动 Visitor?

在维基百科中sample在GoF书中,访问者模式的使用是通过调用某些接受器上的accept方法开始的。但是为什么会这样呢?为什么我们不能以所需的接受器作为参数开始调用visit方法?我们仍然可以使访问者的行为取决于两种类型——访问者和接受者(双重dispatch)——并且我们可以消除冗余调用(在我看来)。下面是示例代码来说明这一点:publicinterfaceVisitor{voidvisit(AcceptorAacceptor);voidvisit(AcceptorBacceptor);}////Visitorwhichsings//classSingingVisitorimple

java - 如何将 logging.properties 添加到 Eclipse 项目的类路径?

我正在使用Eclipse3.7.1,但我的代码没有看到我的logging.properties文件。(我认为它会自动看到它,因为它位于JRE中的标准位置,但这显然是错误的)。有人告诉我需要将此文件添加到类路径的根目录中,但我不确定该怎么做。Eclipse为我提供了将jar、库、变量和其他内容添加到类路径的方法,但我不知道如何添加属性文件。任何人都可以告诉我吗?您可能认为添加一个简单的文本文件比添加一个jar文件更容易,但我没有看到任何文本文件或属性文件的选项,所以我不确定如何继续。 最佳答案 右键单击您的项目->运行/调试设置->编