我正在使用Gatling 2,下面是我的logback.xml
配置。
<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.ahc" level="TRACE" />
<!-- Uncomment for logging ONLY FAILED HTTP request and responses -->
<!-- <logger name="io.gatling.http.ahc" level="DEBUG" /> -->
<root level="WARN">
<appender-ref ref="CONSOLE" />
</root>
在控制台中查看日志时,我看到了
Content-Length: [1381]
Keep-Alive: [timeout=5, max=98]
Connection: [Keep-Alive]
Content-Type: [application/json]
但是,我没有在调试信息中看到任何JSON主体。我攻击了我的代码并将Content-Type
从application/json
更改为text/html
并收到以下内容:
Connection: [Keep-Alive]
Content-Type: [text/html]
Content-Encoding: [gzip]
Content-Length: [1381]
body=
{"items":[data_here]}}
有什么方法可以配置gatling或logback来显示这个JSON主体吗?
答案 0 :(得分:0)
有些东西不像你一样,作为一个初学者,期待它,并不一定意味着它的奇怪。这种行为有很好的理由。
这里,它不会在不需要时将块保存在存储器中,组装和解码。 Reading the documentation通常有帮助。
然后,您还可以在&#34; io.gatling.http&#34;上启用DEBUG日志记录。记录仪。 仅仅为了记录,我填写issue来改善这一点。
答案 1 :(得分:-1)
好。加特林很奇怪。
它会自动记录text/html
的正文,但不会记录application/json
,除非它认为有理由记录它!
要输出json正文,我将.check(bodyString.exists)
添加到我的http请求中,并在日志文件中正确显示。
编辑:
为我的logback.xml
<!-- Uncomment for logging ALL HTTP request and responses -->
<logger name="io.gatling.http.ahc" level="TRACE" />
<logger name="io.gatling.http.response" level="TRACE" />
<!-- Uncomment for logging ONLY FAILED HTTP request and responses -->
<!-- <logger name="io.gatling.http.ahc" level="DEBUG" /> -->
<!-- <logger name="io.gatling.http.response" level="DEBUG" /> -->