jgroups演示项目日志记录无效

时间:2017-09-21 11:54:41

标签: logging log4j jgroups

我想记录以了解jgroup如何在内部工作。所以,我通过跟随http://jgroups.org/tutorial/index.htmt网站成功创建了两个集群.cluster成功但我无法记录FD协议保持活动消息,向另一个人共享消息节点等

我使用以下java命令来形成集群

java -cp“。:log4j.jar:jgroups.jar:。:” - Djgroups.bind_addr = 127.0.0.1 -Djava.net.preferIPv4Stack = true -Djgroups.use.jdk_logger = true org.jgroups.demos。 Draw -props tcp1.xml

java -cp“。:log4j.jar:jgroups.jar:。:” - Djgroups.bind_addr = 127.0.0.1 -Djava.net.preferIPv4Stack = true -Djgroups.use.jdk_logger = true org.jgroups.demos。绘制-props tcp2.xml

的log4j.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<!--
   For more configuration infromation and examples see the Apache Log4j website: http://logging.apache.org/log4j/
 -->
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="true">

    <appender name="ROLL" class="org.apache.log4j.DailyRollingFileAppender">
        <param name="Threshold" value="ALL"/>
        <param name="Target" value="System.out"/>
    <param name="Append" value="true"/> 
    <param name="ImmediateFlush" value="true"/>
    <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/>
    <param name="File" value="JgroupLogs/jgroup.log"/>
        <layout class="org.apache.log4j.PatternLayout">
            <!-- The default pattern: Date Priority [Category] Message\n -->
            <param name="ConversionPattern" value="%d %-5p [%c{1}] (%t) %m%n"/>
        </layout>
    </appender>


    <!-- ================ -->
    <!-- Limit categories -->
    <!-- ================ -->


    <category name="org.jgroups">
        <priority value="ALL"/>
    </category>

    <!-- ======================= -->
    <!-- Setup the Root category -->
    <!-- ======================= -->

    <root>
        <priority value="ALL"/>
        <appender-ref ref="ROLL"/>
    </root>

</log4j:configuration>

tcp.xml

<!--
    TCP based stack, with flow control and message bundling. This is usually used when IP
    multicasting cannot be used in a network, e.g. because it is disabled (routers discard multicast).
    Note that TCP.bind_addr and TCPPING.initial_hosts should be set, possibly via system properties, e.g.
    -Djgroups.bind_addr=192.168.5.2 and -Djgroups.tcpping.initial_hosts=192.168.5.2[7800]
    author: Bela Ban
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns="urn:org:jgroups"
        xsi:schemaLocation="urn:org:jgroups http://www.jgroups.org/schema/jgroups.xsd">
    <TCP bind_port="7800"
         recv_buf_size="${tcp.recv_buf_size:130k}"
         send_buf_size="${tcp.send_buf_size:130k}"
         max_bundle_size="64K"
         sock_conn_timeout="300"

         thread_pool.min_threads="0"
         thread_pool.max_threads="20"
         thread_pool.keep_alive_time="30000"/>

    <TCPPING async_discovery="true"
             initial_hosts="${jgroups.tcpping.initial_hosts:localhost[7800],localhost[7801]}"
             port_range="2"/>
    <MERGE3  min_interval="10000"
             max_interval="30000"/>
    <FD_SOCK/>
    <FD timeout="3000" max_tries="3" />
    <VERIFY_SUSPECT timeout="1500"  />
    <BARRIER />
    <pbcast.NAKACK2 use_mcast_xmit="false"
                   discard_delivered_msgs="true"/>
    <UNICAST3 />
    <pbcast.STABLE desired_avg_gossip="50000"
                   max_bytes="4M"/>
    <pbcast.GMS print_local_addr="true" join_timeout="2000"
                view_bundling="true"/>
    <MFC max_credits="2M"
         min_threshold="0.4"/>
    <FRAG2 frag_size="60K"  />
    <!--RSVP resend_interval="2000" timeout="10000"/-->
    <pbcast.STATE_TRANSFER/>
<TRACE/>
</config>

谢谢帮帮我!!!

1 个答案:

答案 0 :(得分:2)

-Djgroups.use.jdk_logger=true表示您不会使用log4j2。

使用系统属性-Dlog4j.configurationFile=$HOME/log4j2.xml和下面的log4j2.xml文件。您需要将$HOME替换为homedir,并注意log4j2 JAR需要位于类路径上。

<?xml version="1.0" encoding="UTF-8"?> <configuration> <appenders> <Console name="STDOUT" target="SYSTEM_OUT" follow="true"> <!--PatternLayout pattern="%-7d{HH:mm:ss,SSS} [%p] %c: %m%n"/--> <PatternLayout pattern="%r [%p] %c{1}: %m%n"/> </Console> </appenders> <loggers> <root level="warn"> <appender-ref ref="STDOUT"/> </root> <logger name="org.jgroups" level="warn"/> <logger name="org.jgroups.protocols" level="TRACE"/> </loggers> </configuration>