Tag: slf4j

slf4j使用jdk进行日志记录 – 如何启用调试?

默认情况下,slf4j与jdk( slf4j-jdk14-1.6.1.jar )一起使用时,不会记录调试消息。 我该如何启用它们? 我无法在官方文档,网络或此处找到有关如何启用它的信息。 我发现了一些信息(虽然失败了)在%JDK_HOME%/ lib中创建文件并在配置文件中定义了那里的级别。 但是,我想在编译/运行时定义级别,以便我可以从具有不同日志记录级别的IDE运行和调试我的应用程序。 是不是我可以设置一些环境变量,或VM arg?

使用Log4J 1. *,如何将两个包写入两个单独的文件?

我有以下两个包: com.mycorp.project.first com.mycorp.project.second 我想配置Log4J(SLF4J)将日志从一个包写入一个文件,并从另一个包写入第二个文件。 我不希望他们混在一起。 要清楚,这是一个项目/一个进程正在运行。 我尝试过滤和使用logger但是它们似乎被log4j忽略了。 两个文件总是相同的。 编辑:谢谢你到目前为止的答案,这是我得到的,它不起作用。 两个输出文件都是相同的。 dev A:/dev/LogTesting/logs/first.log INFO A:/dev/LogTesting/logs/first.%d{yyyyMMdd}%d{_HHmmss,aux}.log.gz %d{MMM dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} – %msg%n A:/dev/LogTesting/logs/second.log INFO A:/dev/LogTesting/logs/second.%d{yyyyMMdd}%d{_HHmmss,aux}.log.gz %d{MMM dd HH:mm:ss.SSS} %property{HOSTNAME} [%thread] %level %logger{36} %msg%n

如何读取log4j输出到网页?

我有一个用于管理目的的网页,它运行一项任务(从远程站点获取图像)。 为了能够仅使用浏览器调试任务,没有ssh等,我希望能够从执行线程读取所有日志输出并将其吐出到网页。 任务归结为: 在呼叫开始时更改当前线程的日志级别,并在完成呼叫时恢复。 读取当前线程的所有日志输出并将其存储在字符串中。 所以在伪代码中,我的execute()方法看起来像这样:(我正在使用struts2) public String execute() throws Exception { turnLoggingLevelToDebugOnlyForThisThread() … do stuff… restoreLoggingLevelForThisThread() String logs = readAllLogsByThisThread(); } 可以用log4j完成吗? 我正在使用tomcat,struts2,log4j和slf4j。 编辑1:我应该注意,动机是能够在网页上看到现有日志,而无需在代码中添加新的日志行。 想象一个漂亮的Web调试界面,它允许您运行操作,结果会吐出操作的日志。 编辑2:我还应该注意到我已经在使用log4j(通过slf4j)和一个log4j.xml,所以我正在寻找的解决方案需要将当前的日志记录系统放在一边,而不是破坏它。

如何映射java.util.logging和SLF4J记录器的级别?

如何将java.util.logging中的日志记录级别映射到SLF4J? SLF4J 跟踪 调试 信息 警告 错误 致命 java.util.logging中 最好的 细 精细 配置 信息 警告 严重

Hibernate,Spring和SLF4J绑定

我正在尝试使用maven2托管依赖设置一个webapp。 这是我的pom.xml 4.0.0 mtx-production mtx-production 0.0.1 org.springframework spring-core 3.0.2.RELEASE org.springframework spring-orm 3.0.2.RELEASE jar org.springframework spring-web 3.0.2.RELEASE jar mysql mysql-connector-java 5.1.12 org.hibernate hibernate-core 3.5.1-Final jar compile org.hibernate hibernate-annotations 3.5.1-Final jar compile org.slf4j slf4j-log4j12 1.5.8 jar compile log4j log4j 1.2.14 jar compile jboss-releases http://repository.jboss.org/maven2 如果我出错了,请纠正我,但这应该有用吗?! 我只是进入了我的日食这个例外 13.06.2010 16:48:15 org.springframework.context.support.AbstractApplicationContext$BeanPostProcessorChecker postProcessAfterInitialization INFO: Bean ‘dataSource’ is not eligible for […]

java.lang.ClassNotFoundException:org.apache.log4j.Level

我正在尝试在swing应用程序中使用hibernate 3.5.1 final,这里是我正在使用的jar: hibernate核心3.5.1决赛 hibernate-的EntityManager-3.5.1-决赛 hibernate-jpa-2.0-api-1.0.0.Final 冬眠的注解-3.5.1-决赛 hibernate-commons-annotations-3.2.0.Final dom4j的-1.6.1 SLF4J-API-1.6.4 SLF4J-log4j12-1.6.4 当我尝试运行该应用程序时,出现以下错误: Failed to instantiate SLF4J LoggerFactory Reported exception: java.lang.NoClassDefFoundError: org/apache/log4j/Level at org.slf4j.LoggerFactory.bind(LoggerFactory.java:128) at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:108) at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:279) at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:252) at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:265) at org.hibernate.cfg.Configuration.(Configuration.java:165) at org.hibernate.ejb.Ejb3Configuration.(Ejb3Configuration.java:127) at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:54) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:48) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:32) at com.xeno.xecamp.desktopManagement.Main.main(Main.java:16) Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Level at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at […]

如何让泽西使用SLF4J代替JUL?

我找到了一篇有用的文章 ,解释了如何让泽西使用SLF4J而不是JUL。 现在我的unit testing看起来像(并且它完美地工作): public class FooTest extends JerseyTest { @BeforeClass public static void initLogger() { java.util.logging.Logger rootLogger = java.util.logging.LogManager.getLogManager().getLogger(“”); java.util.logging.Handler[] handlers = rootLogger.getHandlers(); for (int i = 0; i < handlers.length; i++) { rootLogger.removeHandler(handlers[i]); } org.slf4j.bridge.SLF4JBridgeHandler.install(); } public FooTest() { super("com.XXX"); } @Test public void testSomething() throws Exception { // … } } 我的pom.xml包含以下依赖项: […]

Spring构造函数注入SLF4J logger – 如何获取注入目标类?

我正在尝试使用Spring将SLF4J记录器注入类中,如下所示: @Component public class Example { private final Logger logger; @Autowired public Example(final Logger logger) { this.logger = logger; } } 我找到了FactoryBean类,我已经实现了它。 但问题是我无法获得有关注射目标的任何信息: public class LoggingFactoryBean implements FactoryBean { @Override public Class getObjectType() { return Logger.class; } @Override public boolean isSingleton() { return false; } @Override public Logger getObject() throws Exception { return LoggerFactory.getLogger(/* how […]

使用java注释注入logger依赖项

我使用带有aspect-j注释支持的@Loggable来允许@Loggable注释。 这允许基于配置自动登录类。 我想知道我是否可以以某种方式使用此注释将slf4j Logger变量暴露给类以供直接使用,这样我就不必对以下内容执行某些操作: Logger logger = LoggerFactory.getLogger(MyClass.class); 如果上面因为注释而隐式可用,那将是很好的,我可以去做logger.debug(“…”); 没有声明。 我不确定这是否可行。

启动Jetty服务器时扫描条目“module-info.class”时出错

我最近在启动java服务器时看到了这个。 有没有人见过这个? 如果是这样的话怎么办? 我可以确认jar和module-info.class存在于相关路径中。 MultiException[java.lang.RuntimeException: Error scanning entry module-info.class from jar file:jetty/9.2.4.v20141103/tempDirectory/webapp/WEB-INF/lib/slf4j-api-1.8.0-alpha2.jar, java.lang.RuntimeException: Error scanning entry module-info.class from jar file:jetty/9.2.4.v20141103/tempDirectory/webapp/WEB-INF/lib/log4j-over-slf4j-1.8.0-alpha2.jar, java.lang.RuntimeException: Error scanning entry module-info.class from jar file:jetty/9.2.4.v20141103/tempDirectory/webapp/WEB-INF/lib/jcl-over-slf4j-1.8.0-alpha2.jar] at org.eclipse.jetty.annotations.AnnotationConfiguration.scanForAnnotations(AnnotationConfiguration.java:535) at org.eclipse.jetty.annotations.AnnotationConfiguration.configure(AnnotationConfiguration.java:446) at org.eclipse.jetty.webapp.WebAppContext.configure(WebAppContext.java:473) at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1331) at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:741) at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) at org.eclipse.jetty.deploy.bindings.StandardStarter.processBinding(StandardStarter.java:41) at org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:186) at org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:498) at org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:146) at org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:180) at org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:64) at […]