- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想配置一个集中登录到 WebLogic 12C。根据业务需求,我必须在生产环境中使用 Syslog,并且我必须在开发和测试环境中提供自定义(例如文件、控制台日志)。我只想为域中的每个应用程序处理 1 个集中日志配置。这些应用程序使用 SLF4J API。在 Glassfish 3.1 和 WebLogic 10.3.5 中,当我将 Logback 或 Log4J 桥及其实现放入域库中并进行配置时,它们运行良好。但是在 WebLogic 12C 中我遇到了很多问题。主要问题是 WL 已经包含模块之间的 SLF4J 绑定(bind)(我不想修改 WL,或者我应该吗?)。因此,当我放置第二个绑定(bind)时,SLF4J 无法初始化它/它们并使用默认的 JUL 记录器。我还尝试通过 WL 管理控制台配置 Log4J 记录器,但只有服务器消息进入 Log4J 记录器,应用程序的消息仍然进入 JUL。 ( http://docs.oracle.com/cd/E24329_01/web.1211/e24428/config_logs.htm#i1011558 , https://forums.oracle.com/forums/thread.jspa?threadID=1037672 )
那么我如何才能在 WebLogic12C 域中仅维护 1 个 Log4J 或 Logback(或满足上述要求的任何其他解决方案)配置?
感谢您的帮助!
最佳答案
如果你想使用 SLF4J 和 Logback,这里有一些说明:
您必须将您希望与您的应用程序一起使用的 SLF4J 和 Logback 工件捆绑在一起(这是我找到的唯一可行的解决方案!我知道通常不会捆绑 SLF4J 绑定(bind)!)。还要在您的 WAR 项目中捆绑一个 weblogic.xml(WebLogic 特定的 web.xml),并在您的 EAR 项目中捆绑 weblogic-application.xml(WebLogic 特定的 application.xml)(如果您同时使用两者,则选择匹配的一个) .同样,EAR 和 WAR 都必须提供以下工件:
那些xml文件的内容:
weblogic.xml
<?xml version="1.0" encoding="UTF-8"?>
<wls:weblogic-web-app
xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd
http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd">
<!-- GERMAN: http://www.torsten-horn.de/techdocs/jee-oracleweblogic.htm -->
<wls:container-descriptor>
<wls:prefer-web-inf-classes>true</wls:prefer-web-inf-classes>
</wls:container-descriptor>
</wls:weblogic-web-app>
weblogic-application.xml
<?xml version="1.0" encoding="UTF-8"?>
<weblogic-application xmlns="http://www.bea.com/ns/weblogic/90">
<!-- GERMAN: http://www.torsten-horn.de/techdocs/jee-oracleweblogic.htm -->
<prefer-application-packages>
<package-name>org.slf4j.*</package-name>
<package-name>org.apache.commons.logging.*</package-name>
</prefer-application-packages>
<prefer-application-resources>
<resource-name>org/slf4j/impl/StaticLoggerBinder.class</resource-name>
</prefer-application-resources>
</weblogic-application>
通过这些 xml 文件,您告诉 WebLogic 更喜欢捆绑版本而不是 WebLogic 附带的版本 (WAR)。对于 EAR,这可以在每个包/资源的基础上完成。更准确地说,类加载器的顺序针对指定的包进行了更改。
虽然仅将 SLF4J 和 Logback jar 与 EAR 或 WAR 捆绑在一起会让您出错或根本没有日志记录,但在将工件捆绑在两者中时您也会收到警告。如果有人有改进的想法,请随时发表评论!
据我了解,EAR 和 WAR 文件在 WebLogic 中具有不同的类加载器,即使 WAR 与 EAR 捆绑在一起也是如此。这就是为什么你不能在他们之间共享这个库,对吗?
配置回退:为了能够在运行时更改 logback 配置,您必须将 logback.xml 放置在 WebLogic 类路径中的某个位置。我找到了很多网站,告诉我 WebLogic 从域目录加载资源文件,但在我的例子中它不在类路径中,所以我不得不通过服务器启动脚本将它添加到全局类路径(这会影响每个域的登录设置!)。 同样,欢迎任何改进!
关于log4j - WebLogic 12C 集中式 Log4J 或 Logback 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15013427/
我正在尝试在 weblogic (10.3.2.0) 中创建和加载动态类。这是我部署到 weblogic 服务器的 ADF 应用程序。 当我打印时 ((GenericClassLoader)this.
我正在尝试使用 weblogic 部署计划将 init-param 值添加到供应商提供的 .war 文件的 web.xml。 虽然我意识到我可以打开 .war 文件并只在其中编辑文件,但我更喜欢使用部
当我尝试从本地计算机启动 weblogic 服务器(在另一台服务器上运行)时,出现以下错误。我可以毫无问题地停止这个 weblogic 服务器,但我无法启动。 boot.properties 文件中有
很难说出这里问的是什么。这个问题是含糊的、模糊的、不完整的、过于宽泛的或修辞性的,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开它,visit the help center 。 已关
如果我想在网页中显示图像,并且其 src 是上下文根之外的文件。在 IDE 中,图像显示为已加载。 但是当我测试网页时,没有任何显示。如何配置 weblogic 服务器以允许显示图像。如果没有,无论如
我知道我们用于 WebLogic 的 4 个配置文件: web.xml weblogic.xml weblogic-application.xml 应用程序.xml 使用这些文件的目的是什么? 最佳答
我需要一个自定义属性来为 Weblogic 中的每个服务器 JVM 设置。什么是更好的方法呢? 我知道我们可以指定如下参数: 在域结构 Pane 中,展开服务器节点。 单击要配置的服务器的名称。 在右
我需要使用哪些 URL、端口和 weblogic 服务器端设置? 最佳答案 这取决于您是否要连接到 WebLogic MBean 服务器(域、运行时、编辑)或平台 (JDK) MBean 服务器(请参
当我使用已部署的应用程序启动 Weblogic 实例时,部署有时处于准备状态,而不是事件状态。我必须转到 Weblogic 控制台并手动启动部署,这是相当缓慢且烦人的重复工作。由于这是在开发计算机上完
我想在我的 Web 应用程序中访问在 Weblogic 的自定义 keystore 配置中配置的身份 keystore (JKS)。如何让 weblogic 在不依赖以下环境属性的情况下公开此内容:-
我在我的 mac 机器上运行 Weblogic 10.3 的托管实例。有一天,我尝试启动它,但收到此错误消息 * **
我需要为 Weblogic 中的每个服务器 JVM 设置一个自定义属性。更好的方法是什么? 我知道我们可以指定如下参数: 在“域结构” Pane 中,展开“服务器”节点。 单击要配置的服务器的名称。
当我运行 WLST 脚本 .sh 脚本来设置环境时,为什么在回显时看不到更新的路径? [linbox2 bin]$ ./setWLSEnv.sh CLASSPATH=/directory/ols_wl
我有一个 WebLogic 集群,在该集群上部署了许多主题和使用它们的应用程序。我的应用程序统一显示为警告状态。查看部署中的监控,我看到 MDB 应用程序连接到服务器 #1,但在服务器 #2 上显示如
我想切换到 CentOS 来运行当前部署在 RHEL 下的 WebLogic 11g。人们在 CentOS 上运行 WebLogic 11g 时是否遇到过任何我应该注意的问题? 最佳答案 大约三年前,
我一直在尝试将我们的 Activiti 实现重构为使用 CDI,但遇到了许多问题。我已经花了太多时间试图解决这个问题,但我就是不能放手......我想我现在已经解决了这个问题,在不涉及 Activit
我正在编写代码以在 weblogc 上启动、停止、取消部署和部署我的应用程序。 我的组件需要部署在少数托管服务器上。 当我手动进行新部署时,我可以通过勾选多个框并从下拉菜单中选择启动和停止来并行启动和
我无法从 jdevloper 创建 weblogic 域! 我正在使用 Jdevloper 12.1.2(12c),当我尝试在默认集成 weblogic 服务器 上创建域时,会出现这样的错误 - wl
使用 Weblogic 11g 并希望能够向 weblogic 提供的所有文件添加 header 。 weblogic 前面没有单独的 Web 服务器。找不到配置 weblogic 向 HTTP 响应
我正在尝试将 Jprofiler7 连接到远程 weblogic10.3 托管服务器。我能够在 JProfiler 中连接并查看管理控制台线程和内存使用情况,但不能查看部署在托管服务器上的应用程序。
我是一名优秀的程序员,十分优秀!