将 curity idsvr 从 log4j2 迁移到 logback
Migrating curity idsvr from log4j2 to logback
Curity 当前使用 log4j2 作为默认记录器。 有没有办法把它改成logback.?
目前我已经构建了一个自定义 Docker 图像,执行以下步骤。 (使用基本图像 curity.azurecr.io/curity/idsvr:6.7.2
)
将 log4j2.xml 文件替换为具有 logback 配置的 logback.xml 文件路径 /opt/idsvr/etc/
删除了路径 /opt/idsvr/lib
中现有的 log4j jar 文件并替换为下载的 logback jar 文件来自 https://logback.qos.ch/download.html
完成上述步骤后,我将自定义图像作为容器启动。但是我收到以下错误消息。
your customer that you accept the terms of the Curity License Agreement.
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
idsvr was installed into /opt/idsvr. You can begin using it by starting /opt/idsvr/bin/idsvr
openjdk version "11.0.13" 2021-10-19 LTS
OpenJDK Runtime Environment Zulu11.52+14-SA (build 11.0.13+8-LTS)
OpenJDK 64-Bit Server VM Zulu11.52+14-SA (build 11.0.13+8-LTS, mixed mode)
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/logging/log4j/core/impl/LogEventFactory
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(Unknown Source)
at java.base/java.security.SecureClassLoader.defineClass(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
at se.curity.identityserver.app.LogInitializer.initializeLoggers(LogInitializer.java:54)
at se.curity.identityserver.app.Bootstrapper.main(Bootstrapper.java:118)
at se.curity.identityserver.app.Bootstrapper.main(Bootstrapper.java:100)
Caused by: java.lang.ClassNotFoundException: org.apache.logging.log4j.core.impl.LogEventFactory
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
... 12 more
如有任何帮助,我们将不胜感激。谢谢..
否,不支持用 Logback 替换 Log4j。 use of Log4j在产品中运行的很深,用户无法替代。我建议就导致您想要更换日志子系统的 ❤️ 的问题提出另一个问题。也许那有一个不需要心脏手术的解决方案。
Curity 当前使用 log4j2 作为默认记录器。 有没有办法把它改成logback.?
目前我已经构建了一个自定义 Docker 图像,执行以下步骤。 (使用基本图像 curity.azurecr.io/curity/idsvr:6.7.2
)
将 log4j2.xml 文件替换为具有 logback 配置的 logback.xml 文件路径
/opt/idsvr/etc/
删除了路径
/opt/idsvr/lib
中现有的 log4j jar 文件并替换为下载的 logback jar 文件来自 https://logback.qos.ch/download.html
完成上述步骤后,我将自定义图像作为容器启动。但是我收到以下错误消息。
your customer that you accept the terms of the Curity License Agreement.
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
idsvr was installed into /opt/idsvr. You can begin using it by starting /opt/idsvr/bin/idsvr
openjdk version "11.0.13" 2021-10-19 LTS
OpenJDK Runtime Environment Zulu11.52+14-SA (build 11.0.13+8-LTS)
OpenJDK 64-Bit Server VM Zulu11.52+14-SA (build 11.0.13+8-LTS, mixed mode)
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/logging/log4j/core/impl/LogEventFactory
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(Unknown Source)
at java.base/java.security.SecureClassLoader.defineClass(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
at se.curity.identityserver.app.LogInitializer.initializeLoggers(LogInitializer.java:54)
at se.curity.identityserver.app.Bootstrapper.main(Bootstrapper.java:118)
at se.curity.identityserver.app.Bootstrapper.main(Bootstrapper.java:100)
Caused by: java.lang.ClassNotFoundException: org.apache.logging.log4j.core.impl.LogEventFactory
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
... 12 more
如有任何帮助,我们将不胜感激。谢谢..
否,不支持用 Logback 替换 Log4j。 use of Log4j在产品中运行的很深,用户无法替代。我建议就导致您想要更换日志子系统的 ❤️ 的问题提出另一个问题。也许那有一个不需要心脏手术的解决方案。