Gatling - 在simulation.log或console中记录请求体

nam*_*ake 13 scala gatling

我想看看我在剧本中发送的帖子正文中有什么内容.事实上,我希望看到请求,请求正文和响应.从查看文档和论坛,我看到我可以取消注释logback-test.xml中的一行,我做了如下所示

<contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
    <resetJUL>true</resetJUL>
</contextListener>

<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
        <pattern>%d{HH:mm:ss.SSS} [%-5level] %logger{15} - %msg%n%rEx</pattern>
        <immediateFlush>false</immediateFlush>
    </encoder>
</appender>

<!-- Uncomment for logging ALL HTTP request and responses -->
<logger name="io.gatling.http" level="TRACE" /> 
<!-- Uncomment for logging ONLY FAILED HTTP request and responses -->
    <!--<logger name="io.gatling.http" level="DEBUG" /> --> 

<root level="DEBUG">
    <appender-ref ref="CONSOLE" />
</root>
Run Code Online (Sandbox Code Playgroud)

simulation.log文件和控制台向我显示请求,响应等.经过一些谷歌搜索和阅读文档后,我看到我可以这样做 -

.extraInfoExtractor(extraInfo => List(extraInfo.request, extraInfo.response,extraInfo.session))
Run Code Online (Sandbox Code Playgroud)

这为我提供了除请求主体以外的所有内容.我如何获得请求正文?我正在尝试调试一个问题,我确信发送的正文不是我真正想要的.

Bhu*_*ale 13

将其添加到logback.xml

<logger name="io.gatling.http.ahc" level="DEBUG" />
Run Code Online (Sandbox Code Playgroud)

这将打印每个故障的以下详细信息 -

  1. 请求网址
  2. 请求标头
  3. 请求正文
  4. 响应头
  5. 加特林会议数据

  • 奇怪的是,我也收到成功请求的记录 (2认同)

dfo*_*tic 5

<?xml version="1.0" encoding="UTF-8"?>
<configuration>

    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%-5level] %logger{15} - %msg%n%rEx</pattern>
            <immediateFlush>false</immediateFlush>
        </encoder>
    </appender>

    <timestamp key="timestamp" datePattern="yyyy-MM-dd'T'HH:mm:ss"/>

    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <file>logs/test_${timestamp}.log</file>
        <append>true</append>
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%-5level] %logger{15} - %msg%n%rEx</pattern>
        </encoder>
    </appender>

    <!-- TRACE logs all HTTP requests/response, DEBUG logs only failed HTTP requests/response-->
    <logger name="io.gatling.http.engine.response" level="TRACE" />

    <root level="INFO">
        <appender-ref ref="FILE" />
        <appender-ref ref="CONSOLE"/>
    </root>

</configuration>
Run Code Online (Sandbox Code Playgroud)

  • 适用于 gattle 3。只需编辑行 `&lt;logger name="io.gadling.http.engine.response" level="TRACE" /&gt;` (2认同)