在Jmeter中定义Log4j2的自定义附加程序

时间:2020-11-12 15:19:42

标签: java jmeter log4j2

我正在使用Jmeter进行分布式测试。我希望我的奴隶使用自定义记录器记录数据。我创建了自定义Appender并覆盖了apache-jmeter文件夹中的Log4j2.xml。我的Log4J2.xml看起来像:

<?xml version="1.0" encoding="UTF-8"?>
<configuration status="warn" packages="com...customApender">
    <Properties>
        <Property name="logPath">logs/performance-logs</Property>
    </Properties>

    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
        </Console>
        <CustomApendername="customApendername">

        </CustomApendername>

        <Reporter name="TestReporter">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level: %msg%n"/>
        </Reporter>

    </Appenders>

    <Loggers>
        <Root level="INFO">
            <AppenderRef ref="customApendername"/>
            <AppenderRef ref="Console"/>
            <AppenderRef ref="TestReporter"/>
        </Root>
        <logger name="org.apache.jmeter" level="INFO" additivity="false">
            <AppenderRef ref="customApendername"/>
            <AppenderRef ref="Console"/>
            <AppenderRef ref="TestReporter"/>
        </logger>
        <logger name="com.testing" level="INFO" additivity="false">
            <AppenderRef ref="customApendername"/>
            <AppenderRef ref="Console"/>
            <AppenderRef ref="TestReporter"/>
        </logger>
    </Loggers>
</configuration>

但是,它找不到附加程序的定义。我正在使用

启动奴隶
jmeter.bat -Dserver_port=1105 -s -j "C:\customLog.log" -Dserver.rmi.ssl.disable=true -Dsearch_paths="C:\tests" -Dodl.client.entitlement.systemAccount=sysRFTTAOdlTestUser -Dodl.client.entitlement.keytabLocation="C:\tests\sysRFTTAOdlTestUser.keytab"

要调用的jar在“ C:\ tests”中。这个jar包含我的自定义附加程序的类。

如何让jmeter找到附加程序的定义?

感谢帮助!

0 个答案:

没有答案