问题标签 [log4j2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java 包 Log4J2:MapFilters
我有一个关于 MapFilters 的简单问题。好吧,我知道什么是映射:简单的键值对。现在 log4j 允许通过(来自网站的示例)过滤所谓的地图消息:
但是我在代码中的哪里定义这些消息。我试过这样的:
但这不是处理这个问题的一种方便的方法,顺便说一句:它不起作用。
你知道这个话题更详细的介绍吗?API在这里并没有真正帮助我。
谢谢大家!
java - Jetty 服务器上的 Log4j2 和 Flume
我正在尝试使用 Log4J2 和 Flume-ng 对分布式系统进行集中式日志记录。系统中的其中一台服务器运行 Jetty,我用它来为系统执行 Web 服务(servlet)。当我在这个项目中包含 Log4J2 和 Flume-ng 的 Maven 依赖项时,它会破坏 Jetty 并且它不会正确启动/绑定。如果我删除下面列表中的依赖项(log4j-flume-ng),那么 Jetty 将正常运行,给我以下输出:
但是有了这种依赖关系,它就会出现(只是 Memcached 输出):
Maven POM中的依赖如下:
我不知道如何开始解决这个问题。我已经设法让 Flume 与我的其他服务器一起工作没有问题,但似乎 Jetty 不会有它。有人可以提供任何建议以使其正常工作吗?
java - Log4j_2 和 Socket UDP 附加程序
我正在尝试创建一个简单的 UDP 服务器来处理来自 Log4j2 Socket appender 的包,但是我从收到的第二个包中得到了“java.io.StreamCorruptedException:无效流标头:7372003E”。
附加器:
片段 UDP 服务器:
有什么建议吗?
java - Log4j2 - 配置
我试图在我的新项目中采用 Log4j2,但我登录了catalina.out
,第一个总是:ERROR StatusLogger Unable to locate a logging implementation, using SimpleLogger
。似乎我已经根据 Log4j2 文档完成了所有工作,但仍然如此。
这是我实际所做的:
- 添加
log4j-api-2.0-beta3.jar
到我的项目中 - 创建了一个
log4j2.xml
文件并将其放在类路径上的位置(当前,在/usr/local/tomcat/home/lib
. 事实上,我从 Log4J2 网页中获取了一个示例文件。 - 重新启动tomcat。
我正在使用 Tomcat 7、MacOS X 10.8、Java 7。
我错过了什么?
以防万一,这是我正在使用的 log4j2.xml:
xml - log4j2 - 限制日志文件的数量
我有以下 log4j2.xml 文件:
我怎样才能修改这个配置,这样
- 在达到 5mb 限制后,会创建一个新文件,而不是一遍又一遍地覆盖相同的日志文件。最好有像 test1.log、test2.log 等等。
如何限制在 1. 中创建的部分日志文件的数量?我想要实现的是如下方案:
/li>
有谁知道,如何实现这样的目标?当然,如果仅使用 log4j2 就可以实现类似的功能,那就太好了。但是也许有一种方法可以将 log4j2 与某种外部程序结合起来,该程序将与主 Java 应用程序一起运行并删除多余的日志文件,同时保持最后两个日志文件完好无损。因此,如果有人至少对 1. 提出建议,那可能已经是我正在寻找的东西了。因为我也许可以为第二部分编写程序。当然,如果第二部分也可以使用 log4j2 完成,那将是非常棒的。
java - Log4j2 保存文件(使用 RollingFile appender)
我正在尝试 log4j2 为我正在开发的系统创建日志文件,我已按照他们网站上的说明进行操作,运行它时没有发生错误,但日志没有保存在我设置的位置(例如。“ D:\logs\app.log")。
这是我的 log4j.xml
我试过了 :
- 删除 app.log 以查看我的配置 (D:\logs\app.log) 是否有效。当我运行应用程序时,它会创建 app.log,所以我认为这意味着它可以看到配置,唯一的事情是它没有保存我在 java 应用程序中所做的 log.info
- 将根级别更改为“TRACE”,它会打印 log.info。
[编辑:]
我的类路径中也有这些库
- log4j-api-2.0-beta3.jar
- log4j-core-2.0-beta3.jar
Am I missing something on RollingFile configuration or a library (maybe)?
Thanks in advance.
java - Tomcat中的Log4j2
我正在使用 Tomcat 6 并尝试将 JUL 切换到 Log4j2 (2.0 beta 3)。但是,由于它是一个相当新的项目,文档非常稀少,在线资源还不是很多。
我想要的是
- 调试级别以上的所有事件都应转到磁盘上的文件。
- 错误应该去
syserr
。 - 从信息到警告的所有内容都应该转到
sysout
. - 标记的审计日志应该跳过所有这些并转到磁盘上的不同文件。
我试过的
这是我的第一次尝试log4j2.xml
文件:
我应该写configuration status
什么?关于它的一些文档在哪里?
记录器名称与 Java 类及其记录器有何关系?
示例代码:
当我运行它时,我在控制台和日志文件中得到它:
为什么忽略警告?
如果我删除additivity="false"
,我得到:
再次忽略警告并重复错误(如预期的那样)。
我究竟做错了什么?
在折叠下:Tomcat 的其余部分可以使用 JULI,我只想要 Log4j2 用于我的应用程序。
matlab - 您如何在 Matlab 中使用 Log4j2
我正在尝试在 Matlab 应用程序中从 log4j 1.2 切换到 log4j 2。
我已将 log4j-core-2.0-beta3.jar 和 log4j-api-2.0-beta3.jar 添加到我的 Matlab java 类路径中。
在我的 Matlab 类构造函数中,我:
但是当我检查 Logger 对象时,我看到:
我没有定义配置文件,我希望 log4j 给我默认配置并登录到控制台(根据 log4j2 文档)
难道我做错了什么?
在 Matlab 中使用 log4j2 有问题吗?
编辑:我相信这与 Matlab 中 log4j 的内置用法有关,用于 Matlab 自己的内部日志记录。我设法解决了与 logback 类似的问题,因为 logback 抱怨 Matlab 使用 log4j。classpath.txt 文件可能可以用来解决这个问题,即从 classpath.txt 中删除 log4j 但这可能会破坏 Matlab 的内部日志记录。我通过切换到不同的日志记录工具来解决这个问题。
java - 在 Log4j2 中,如何将 XML Schema 与 log4j2.xml 关联?
我一直在尝试新的 Log4j2。从关于 migration的文档看来,XML Schema/DTD 规范已经被取消了。
这似乎是倒退了一步。当然,应该可以将 XML Schema 或 DTD 与 my 关联log4j2.xml
以帮助编写它并进行验证。我无法在文档中找到任何有用的东西,也没有找到 XML Schema 或 DTD 本身。
所以:在 Log4j2 中,我应该如何将 XML Schema 与log4j2.xml
?