logback / LOGBACK-1554 [Open]
Logback-access %b is empty, most of time

==============================

Here's what changed in this issue in the last few minutes.
This issue has been created
This issue is now assigned to you.

View or comment on issue using this link
https://jira.qos.ch/browse/LOGBACK-1554

==============================
 Issue created
------------------------------

Dongfeng Lu created this issue on 26/Mar/21 6:08 PM
Summary:              Logback-access %b is empty, most of time
Issue Type:           Bug
Affects Versions:     1.2.3
Assignee:             Logback dev list
Attachments:          rest.zip
Components:           logback-access
Created:              26/Mar/21 6:08 PM
Environment:          Java 11, Gradle
Priority:             Major
Reporter:             Dongfeng Lu
Description:
  Originally, we were trying to get Tomcat access log in JSON format. We 
followed the example in 
https://github.com/jochenchrist/spring-boot-access-logs-demo and everything 
seems to work well, except that we were not able to get response's content 
length.
  
  To narrow things down, I created a simple Spring Boot project with only 
"spring-boot-starter-web" and "logback-access:1.2.3" (No logstash here), with 
simple configuration for logback-access.xml. I created 4 simple REST APIs, 
started the app and ran the following 4 requests in browser.
  {code}
  http://localhost:8080/list
  http://localhost:8080/map
  http://localhost:8080/long
  http://localhost:8080/string 
  {code}
  The browser displays the response correctly in JSON format. And in the 
console, the corresponding access log entries were
  {code}
  0:0:0:0:0:0:0:1 - - 26/Mar/2021:11:04:34 -0500 "GET /list HTTP/1.1" 200 124 - 
- -
  0:0:0:0:0:0:0:1 - - 26/Mar/2021:11:04:36 -0500 "GET /map HTTP/1.1" 200 13 - - 
-
  0:0:0:0:0:0:0:1 - - 26/Mar/2021:11:04:37 -0500 "GET /long HTTP/1.1" 200 6 - - 
-
  0:0:0:0:0:0:0:1 - - 26/Mar/2021:11:04:39 -0500 "GET /string HTTP/1.1" 200 6 6 
6 6
  {code}
  Following http://logback.qos.ch/manual/layouts.html, I tried all the 
conversion word for the content length, "%b", "%B", and "%bytesSent", and they 
all seem to work and generate the content length, but ONLY if the response 
return type is "String". They did NOT generate the content length for Map, List 
or even a Long object.
  
  I attached my simple project for you to reproduce it. You can unzip it, and 
run "gradlew clean bootRun". Please let me know if any additional information 
is needed. Thanks.


==============================
 This message was sent by Atlassian Jira (v8.8.0#808000-sha1:e2c7e59)

_______________________________________________
logback-dev mailing list
logback-dev@qos.ch
http://mailman.qos.ch/mailman/listinfo/logback-dev

Reply via email to