Tag: log4j

安全/加密log4j文件

我有个问题 ; 安全要求我有java swing应用程序,它具有log4j生成的日志文件,用于跟踪错误时的支持问题。 我必须ecrypt / cypher / secure文件,以便客户端无法打开它们并查看它们(至少不是人类可读的方式),同时当支持技术团队获取这些文件时,他们将知道如何阅读( 解密 )它们。 我做了很多搜索,我尝试了我发现的最佳选项,即通过扩展SkeletonAppender构建自定义appender。 现在知道我有log4j工作得很好,如下面的配置,但我创建了新的类来加密它但我不能让它工作,即使简单的设置它不会创建文件,所以我可以继续在ecnryption部分。 任何帮助,链接都很好。 工作…版本 不工作……版本 简单的class级考试 http://www.javaworld.com/article/2075817/core-java/customized-appender-extending-org-apache-log4j-fileappender.html package com.MyAppender; import org.apache.log4j.spi.LoggingEvent; public class MyAppender extends org.apache.log4j.RollingFileAppender { private String file; private boolean initialized = false; private String baseFileName = null; // private static final Log log = LogFactory.getLog(MyAppender.class); /** * * write to ActivityLog […]

使用log4j2进行Spring-Boot日志记录?

我正在使用spring-boot-starter ,并且希望配置log4j2.xml以将异步+不同内容记录到不同的日志文件。 我创建了log4j2文件,但Spring仍然使用spring-boot默认日志记录。 如何切换日志记录?

“log4j:configuration”必须匹配“(渲染器… .loggerFactory)?)”

在将war文件部署到tomcat时出现错误: log4j:WARN The content of element type “log4j:configuration” must match “(renderer*,throwableRenderer?,appender*,plugin*,(category|logger)*,root?,(categoryFactory|loggerFactory)?)” 我google了一下,发现我的log4j.xml的排序可能是错误的,但它应该是正确的。 有什么建议么?

使用log4j的多个日志文件

我正在为我的应用程序日志创建一个解决方案,它有各种类型的日志记录(用户,应用程序等…),希望将每种类型的日志保存在单独的文件中。 这可以使用log4j或其他一些API吗? 我怎么能这样做? 如果您认为有趣,我会编辑问题并输入代码,但我认为它不值得,它们仍然非常基础。 提前致谢。

使用JAR 加载log4j.properties

我有一个包含以下Manifest的jar文件 Manifest-Version: 1.0 Created-By: 1.7.0_07 (Oracle Corporation) Main-Class: test.Main Class-Path: ./log4j.properties lib/log4j-1.2.17.jar 我按如下方式运行课程 java -jar test.jar 这是我的文件夹 lib log4j.properties test.jar 为什么我看不到log4j属性文件? 这就是我所看到的 log4j:WARN No appenders could be found for logger (test.Main). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. 谢谢 解决方案:将MANIFEST中的classhpath更改为此 Class-Path: . lib/log4j-1.2.17.jar

在log4j中使用系统属性或变量

我想这样做: 注意这一行: 我试着像这样设置值: public static void main(String[] args) { System.setProperty(“error.log.path”, “/test/crm/log/error.log”); ApplicationContext context = new ClassPathXmlApplicationContext(“blah.xml”); ………. ………. } 但我没有看到任何影响。 在调用main方法之前是否配置了log4j? 有没有其他方法可以做到这一点?

log4j.Logger中getLogger的通用方式

而不是在每个类上指定类名: log = Logger.getLogger(Foo.class); log = Logger.getLogger(Bar.class); log = Logger.getLogger(Test.class); 可以使用: log = Logger.getLogger(this.getClass()); 会有什么影响?

在Ivy中找到隐藏的依赖项

我正在使用Apache Ivy + IvyDE获取项目的依赖项,它们是: 源代码是Maven和JBoss(Hibernate)存储库。 正如您所看到的,我正在使用logback + SLF4J进行日志记录,但由于某种原因,Ivy也会下载log4j和slf4j-log4j,这会导致我的应用程序出现一些小问题。 有没有办法看到为什么会发生这种情况,看看上面哪个依赖项依赖于log4j? 我可以获得从Ivy / IvyDE生成的依赖图/树吗? 那么有没有办法防止这种情况发生?

如何从Storm中禁用/关闭日志记录function

我想在从本地群集运行时关闭默认提供的日志记录function。 目前它在控制台上记录了很多信息。 以下是日志示例: 261 [main] INFO backtype.storm.daemon.task – Shut down task Getting-Started-Toplogie-1-1376388324:2 2261 [main] INFO backtype.storm.daemon.task – Shutting down task Getting-Started-Toplogie-1-1376388324:1 2262 [Thread-24] INFO backtype.storm.util – Async loop interrupted! 2276 [main] INFO backtype.storm.daemon.task – Shut down task Getting-Started-Toplogie-1-1376388324:1 2278 [main] INFO backtype.storm.daemon.worker – Terminating zmq context 2279 [main] INFO backtype.storm.daemon.worker – Disconnecting from storm cluster […]

log4j rootLogger似乎inheritance了其他logger的日志级别。 为什么?

我有一个log4J设置,其中根记录器应该将ERROR级别消息和上面的消息记录到控制台,另一个记录器将所有内容记录到syslog中。 log4j.properties是: # Root logger option log4j.rootLogger=ERROR,R log4j.appender.R=org.apache.log4j.ConsoleAppender log4j.appender.R.layout=org.apache.log4j.PatternLayout log4j.appender.R.layout.ConversionPattern=%d %p %t %c – %m%n log4j.logger.SGSearch=DEBUG,SGSearch log4j.appender.SGSearch=org.apache.log4j.net.SyslogAppender log4j.appender.SGSearch.SyslogHost=localhost log4j.appender.SGSearch.Facility=LOCAL6 log4j.appender.SGSearch.layout=org.apache.log4j.PatternLayout log4j.appender.SGSearch.layout.ConversionPattern=[%-5p] %m%n 在代码我做 private static final Logger logger = Logger.getLogger(“SGSearch”); . . . logger.info(“Commencing snapshot index [” + args[1] + ” -> ” + args[2] + “]”); 发生的事情是我获得了所有日志记录级别的控制台日志记录。 似乎正在发生的事情是SGSearch的级别以某种方式覆盖了根记录器的级别设置。 我无法弄明白。 我已经确认Log4J正在读取我认为的属性文件,而没有其他文件(通过-Dlog4j.debug选项)