我的web应用程序将部署到不同环境中Windows和Linux/Unix上的Weblogic应用程序服务器。日志文件位置、附件和日志级别在不同的部署中会有所不同,我们希望能够在运行时更改日志配置(通过交换配置文件),因此我无法嵌入log4j2。xml(或任何其他配置文件)添加到我的部署中。由于我在无法控制的应用服务器上运行,所以我没有机会添加环境变量来指向另一个配置位置。 目前,我的log4j2.
我正在升级运行在Tomcat 8上的Web应用程序的log4j版本。我正在从1.2.12版本升级到最新的2.11.1。 应用程序正在使用Maven。因此,我向我的应用程序(版本在父pom中管理): 我删除了旧的配置文件,并将其替换为文件夹中的一个新的文件(在我的log4j2文件内容下面找到)。 当我直接运行函数时,日志会正确地写入控制台和文件中。但是,当我在Tomcat上部署应用程序并运行它时,没
我按照这里的教程SpringEureka教程创建了一个基本的Eureka注册表jar应用程序。下一步是将日志记录更改为log4j2,这样我就可以使用Spring log4j2指南中的指南获得一个滚动文件。 我遇到的问题是,当我运行应用程序时,没有抛出错误,但是 eureka服务器日志仍会输出到控制台 已创建自定义日志输出文件“eureka.log”,但该文件为空 我编写的任何自定义日志,例如
我正在研究Wildfly 9/10。我使用定制的Log4j2配置文件编写了web应用程序。 配置文件正确地包含在war jar库中。 结果是,当我运行web应用程序时,它会生成以下文件: 但它继续在服务器控制台上打印日志,而文件保持为空。 相同的配置在独立应用程序上正常工作。我错过了什么? 更新当我部署我的应用程序时,服务器会打印以下调试级别信息:
我们有以下设置: 应用服务器:Weblogic 10.3.6 我们有2台托管服务器,在这两台托管服务器上部署了3个web应用程序。所有log4j2 jar都保存在服务器库中,并在服务器启动时加载。 现在,我们希望每个Web应用程序都有自己的logj2配置,因为我们希望控制日志级别。 我们为每个web应用程序制作了单独的log4j2配置文件,使用log4j2-web.jar初始化web.xml但是我
我正在将一些web应用程序从log4j1.12迁移到Log4j2。由于公司政策,我们的log4j。xml文件位置在应用服务器中配置为URL,应用程序必须使用JNDI获取它们。我们实现了一个,它允许我们以这种方式初始化log4j基础结构: 但是,随着log4j2api的更改,这将无法再使用。Log4j2提供了lo4j2web。jar模块,它使用初始化库。这将调用,负责获取配置文件的URI。 有什么方
我正在尝试在: 我从java代码中设置了如下键: 我也尝试了内部的没有工作。如何在布局元素之外的中引用MDC键? 我还在properties部分下为键指定了默认值,如下所示:
我有一个log4j2.xml文件,我配置如下: 现在,我想自定义将数据记录到commons中。日志和分析。日志文件。 java中的示例: 我想在需要时自定义将日志写入每个文件,例如: 问题:我怎么做?请帮助我解决log4j2中的所有问题。xml文件和Java代码示例。 谢谢!
我使用带有路由附加器和包装器的log4j2xml配置。我将传递不同的appender,以记录项目不同部分的不同文件。我的配置看起来像这样。 问题是,我在第二个路由中获得了外部库日志(那些没有附加程序的)和我的项目日志,尽管我只想要外部日志。
我有以下控制台附加器; 问题是我在这里使用的模式输出了一个空的ThreadContext()。我不想使用特定的密钥名称(例如,),因为系统非常广泛,密钥集也不同。示例输出: 2017-09-26 10:39:55396[main]信息:启动内部HTTP客户端{}
我正在使用lombok的log4j2记录器,需要基于ThreadContext映射配置路由附加器。路由键由脚本确定。这是整个log4j2。xml配置文件: 但是,我得到以下错误: Log4j2留档给了我们一个类似的脚本示例,它不适用于我的以太。我对JS相当陌生,但此代码似乎是一个有效的脚本。我是不是做错了什么? 提前谢谢。
我在我的项目中使用Log4j 2将儿子日志写入数据库表。这些事件是基于某些MDC密钥/值对来标识的。我关心的是这个appender可以从其append方法中抛出的未经检查的LoggingExcture。这些数据库日志是在异步事务进程中生成的,我不希望主进程受到appender引发的潜在异常的影响。我应该怎么照顾它?我应该将基于配置的appender移动到自定义appender吗?在日志事件追加错误
我遇到了一个奇怪的问题,我不明白: 当我删除我的文件appender时,它会阻止我登录到我的服务器,即使文件appender不应该负责将任何内容登录到服务器;这项任务应该只属于我的GELF appender。 下面的代码可以很好地登录到我的控制台和服务器 JAVA XML 但是,当我删除这个 和 它不再向我的服务器记录任何内容。 文件附件和记录器不应该只登录到文件而不是服务器吗?如果是这样,为什么
我的log4j2属性文件如下所示- 当我试图使用以下代码访问appender时 它将条目记录在SeriesIn响应appender中,而不是ejdk appender中。我的log4j2有多个自定义appender。我需要在不同的类文件中使用不同的appender,它应该将条目记录在正确的文件中。
据我所知,log4j2中的RollingFileAppender不会在指定的时间(比方说-在一小时结束时)回滚,而是在超过时间阈值后到达的第一个日志事件时回滚。 有没有一种方法可以触发一个事件,一方面会导致文件滚动,另一方面不会附加到日志中(或者会附加一些无关紧要的东西,比如空字符串)?