`
yangzb
  • 浏览: 3501202 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用Weblogic JMS监控log4j的日志

    博客分类:
  • Java
阅读更多

配置CLASSPATH 下的 log4j.properties:

 

# This is the configuring for logging displayed in the Application Server;delete ,stdout

log4j.rootCategory=INFO,R,A1

 

log4j.appender.A1=org.apache.log4j.net.JMSAppender

log4j.appender.A1.providerURL=t3://localhost:7001

#log4j.appender.A1.userName=weblogic

#log4j.appender.A1.password=weblogic

log4j.appender.A1.topicConnectionFactoryBindingName=jms/JNDI_JMS_Connection_Factory

log4j.appender.A1.topicBindingName=jms/JNDI_LOG_TOPIC

log4j.appender.A1.initialContextFactoryName=weblogic.jndi.WLInitialContextFactory

注意:

1, 应该是消息主题( TOPIC ),下面的配置和代码也应该为 topic ,而不是 queue

2,Log4j 的版本是 log4j-1.2.15.jar ,并且应该将 log4j-1.2.15.jar 拷贝到 %WL_HOME%\user_projects\domains\base_domain\lib 下。

 

 

配置 JMS Servers

 

配置 JMS Modules JMS 模块):

 

 

代码:

MessagingExampleBean.java:

 

package com.sunrise.psmis.ejb;
 
import javax.jms.JMSException;
import javax.jms.ObjectMessage;
import javax.jms.TextMessage;
 
import org.apache.log4j.spi.LoggingEvent;
 
public class MessagingExampleBean implements javax.ejb.MessageDrivenBean,
       javax.jms.MessageListener {
    private javax.ejb.MessageDrivenContext messageContext = null ;
 
    public void setMessageDrivenContext(
           javax.ejb.MessageDrivenContext messageContext)
           throws javax.ejb.EJBException {
       System. out .println( " 设置上下文 " );
       this . messageContext = messageContext;
    }
 
    public void ejbCreate() {
       System. out .println( " 创建消息 Bean" );
    }
 
    public void ejbRemove() {
       messageContext = null ;
    }
 
    public MessagingExampleBean() {
    }
 
    public void onMessage(javax.jms.Message message) {
 
       String msgText= "" ;
        if (message instanceof TextMessage) {
        try {
             msgText = ((TextMessage) message).getText();
        } catch (JMSException e){
             e.printStackTrace();
        }
 
        } else if (message instanceof ObjectMessage) {
        try {
            Object obj=((ObjectMessage) message).getObject();
            if (obj instanceof LoggingEvent){
                 LoggingEvent event=(LoggingEvent)obj;
                 System. out .println(event.getRenderedMessage());
            }
        } catch (JMSException e){
            e.printStackTrace();
        }
           
 
        }
        System. out .println( " 返回消息: " +msgText);
    }
}
 
 
ejb-jar.xml:

 

<? xml version = "1.0" encoding = "UTF-8" ?>
< ejb-jar version = "2.1" xmlns = "http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation = "http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd" >
    < display-name > MessagingExample </ display-name >
    < enterprise-beans >
       < message-driven >
           < display-name > MessagingExampleBean </ display-name >
           < ejb-name > MessagingExampleBean </ ejb-name >
           < ejb-class > com.sunrise.psmis.ejb.MessagingExampleBean </ ejb-class >
           < transaction-type > Bean </ transaction-type >
           < message-destination-type >
              javax.jms.Topic
           </ message-destination-type >
       </ message-driven >
    </ enterprise-beans >
    < assembly-descriptor >
       < container-transaction >
           < method >
              < ejb-name > MessagingExampleBean </ ejb-name >
              < method-name > * </ method-name >
           </ method >
           < trans-attribute > Required </ trans-attribute >
       </ container-transaction >
    </ assembly-descriptor >
</ ejb-jar >
 
weblogic-ejb-jar.xml:

 

<? xml version = "1.0" encoding = "UTF-8" ?>
<! DOCTYPE weblogic-ejb-jar PUBLIC "-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB//EN" "http://www.bea.com/servers/wls810/dtd/weblogic-ejb-jar.dtd" >
< weblogic-ejb-jar >
    < weblogic-enterprise-bean >
       < ejb-name > MessagingExampleBean </ ejb-name >
       < message-driven-descriptor >
           < pool >
              < max-beans-in-free-pool > 5 </ max-beans-in-free-pool >
              < initial-beans-in-free-pool >
                  5
              </ initial-beans-in-free-pool >
           </ pool >
           < destination-jndi-name > jms/JNDI_LOG_TOPIC </ destination-jndi-name >
           < initial-context-factory >
              weblogic.jndi.WLInitialContextFactory
           </ initial-context-factory >
           < connection-factory-jndi-name >
              jms/JNDI_JMS_Connection_Factory
           </ connection-factory-jndi-name >
           < jms-polling-interval-seconds >
              20
           </ jms-polling-interval-seconds >
       </ message-driven-descriptor >
       < transaction-descriptor >
           < trans-timeout-seconds > 3600 </ trans-timeout-seconds >
       </ transaction-descriptor >
    </ weblogic-enterprise-bean >
</ weblogic-ejb-jar >
 

参考:

Messaging Quickstart: Weblogic JMS Sample Code

Messaging Quickstart: Configuring Weblogic JMS

标签 : other , java
分享到:
评论

相关推荐

    JMS入门小例子以及weblogic安装,并且在weblogic中配置JMS服务

    同时,使用`Log4j`进行日志记录,可以帮助开发者追踪消息处理的过程。 总的来说,JMS入门实例结合WebLogic的安装和配置,为初学者提供了一个了解和实践Java消息服务的完整流程。通过这个过程,开发者可以学习到如何...

    weblogic虚幻脚本日志设置

    在WebLogic的运行过程中,日志系统扮演着至关重要的角色,它记录了服务器的运行状态、错误信息以及诊断数据,帮助管理员监控和调试应用。针对"weblogic 虚幻脚本日志设置"这个主题,我们将深入探讨WebLogic的日志...

    AIX下的Weblogic安装

    在AIX环境下,遇到问题时,查看WebLogic的日志文件(如`&lt;domain_home&gt;/logs/&lt;server_name&gt;.log`)和AIX系统的系统日志(如`/var/adm/messages`)可以帮助定位问题。 以上就是在AIX系统中安装、配置和启动WebLogic...

    weblogic dump 学习

    - jms.messages.log:JMS消息日志。 ### 3. 启动脚本与配置参数文件的获取 获取WebLogic的启动脚本和配置参数文件对于了解服务器的配置和定制化设置非常重要,这些文件包含了初始化WebLogic时使用的各种参数和设置...

    WebLogic检查 问题定位 维护

    JMS监控 - **连接状态**:检查Interoperability-WTC Servers-Connected属性,确保其值为true,以保证消息传递的正常。 #### 7. 后台进程监控 - **Aix命令**:使用Aix系统的命令如`ps`来监控后台进程,确认...

    weblogic故障诊断与日常维护总结

    2. **日志文件的种类**:WebLogic会产生多种类型的日志文件,如Server.log、AdminServer.log等,每种日志文件记录的信息有所不同。 3. **关键信息的查找**:在日志文件中查找带有关键字的信息(如BEA-开头的错误码)...

    Weblogic 服务器管理

    12. **日志和诊断**:WebLogic的日志系统可以帮助开发者定位和解决问题,诊断文件如`server.log`、`diagnostic.log`提供了丰富的运行时信息。 文件`WebLogic服务器管理.doc`可能包含WebLogic服务器的详细操作步骤和...

    weblogic 错误信息详解

    主要的日志文件有`server.log`和`diagnostic logs`,通过分析这些日志,我们可以找到问题的线索。 3. **错误代码** WebLogic错误通常以`WLS-`或`BEA-`开头,每个错误代码都对应一个具体的错误条件。例如,`WLS-...

    linux下weblogic新建域操作过程

    进入新创建的域目录,例如`cd /weblogic/user_projects/domains/testdomain/`,然后运行`nohup ./startWebLogic.sh &gt; s.log & tail -f s.log`启动服务并记录日志。 2. **停止服务**: 仍在域目录中,执行`./...

    Weblogic Server 11g 系统管理

    日志管理是WebLogic Server系统管理的关键部分,通过对log文件的分析可以了解服务器的运行状况。此外,课程还涵盖了服务器的基本管理操作,如启动、关闭、监控以及使用NodeManager远程管理服务器。配置运行环境包括...

    Weblogic实用教程及常用技巧集锦

    - **使用WebLogic诊断框架(WLDF)**:这是一个强大的工具,可以帮助识别和解决性能问题,通过编写诊断条件和操作来监控服务器行为。 6. **高级特性** - **集群与复制**:通过集群,可以实现应用的高可用性和负载...

    weblogic9技术白皮书

    - **WebLogic Log Central**:集中式日志管理系统。 - **WebLogic Network Gatekeeper**:安全网关服务。 #### 三、性能与可用性 - **概述**:WebLogic Server 9.0 在性能方面进行了重大改进,尤其是在处理大量...

    weblogic使用手册

    2. **日志分析**:查看`server.log`文件,诊断运行时问题。 3. **JDBC数据源监控**:监控数据库连接池的使用情况。 4. **性能指标**:使用WebLogic仪表板查看服务器性能指标。 #### 2.5 高可用性与扩展 1. **集群**...

    Weblogic 8.1 + MyEclipse的配置及其Java Web应用的部署和测试.doc

    9. **错误处理和日志查看**:Weblogic的错误信息通常会记录在`domain_home\servers\server_name\logs`目录下的`server.log`文件中。开发者需要定期检查这些日志,以解决部署或运行时遇到的问题。 以上就是MyEclipse...

    weblogic管理指南

    WebLogic Server提供了丰富的日志和诊断工具,如server.log文件、JVM堆转储、JMX MBeans等。当遇到问题时,管理员可以通过这些资源定位问题,如查看异常信息、分析内存使用情况或监控特定的系统指标。 八、WebLogic...

    Oracle WebLogic Server 12c Advanced Administration Cookbook

    - **监控工具**:WebLogic Server Console提供了一系列监控工具用于实时监控服务器状态。 - **问题解决策略**:对于常见问题,本书提供了具体的解决方案和步骤指导。 #### 三、案例研究与实践 本书包含了超过60个...

    weblogic 管理指南

    WebLogic Server自带的监控工具可以帮助管理员了解服务器的运行状况,包括内存使用、CPU利用率、线程状态等。通过JMX(Java Management Extensions)和WLDF(WebLogic Diagnostics Framework),可以收集和分析详细...

    weblogic日常维护总结与故障诊断要点.doc

    3. 分析数据:根据问题表现或收集的数据,使用WebLogic自带的管理工具、性能监控工具等进行分析,同时也可以在网上和官方支持站点寻找类似问题的解决方案。 4. 解决问题:针对找到的问题点,尝试采取相应的解决措施...

    weblogic技术培训(一)考试试题.pdf

    - **定义**: WebLogic域记录了三种主要的日志文件——运行日志(AdminServer.log)、HTTP访问日志(access.log)和域运行日志(域名.log)。 - **重要性**: 日志文件对于调试问题和监控WebLogic服务器的运行状况非常关键...

Global site tag (gtag.js) - Google Analytics