### GET /hello.txt: a static resource
HTTP 200  body=static file served by ResourceHttpRequestHandler
01 REQUEST  filter:raw(order 5)            before chain
02 REQUEST  filter:accessLog(order 10)     before chain GET /hello.txt
03 REQUEST  servlet:DispatcherServlet      doDispatch start
04 REQUEST  interceptor:A                  preHandle  handler=ResourceHttpRequestHandler
05 REQUEST  interceptor:B                  preHandle  handler=ResourceHttpRequestHandler
06 REQUEST  interceptor:B                  postHandle status=200 modelAndView=null
07 REQUEST  interceptor:A                  postHandle status=200 modelAndView=null
08 REQUEST  interceptor:B                  afterCompletion ex=null
09 REQUEST  interceptor:A                  afterCompletion ex=null
10 REQUEST  servlet:DispatcherServlet      doDispatch end
11 REQUEST  filter:accessLog(order 10)     after chain status=200 asyncStarted=false
12 REQUEST  filter:raw(order 5)            after chain

### GET /nope: no controller, no file
HTTP 404  body={"timestamp":"...","status":404,"error":"Not Found","path":"/nope"}
01 REQUEST  filter:raw(order 5)            before chain
02 REQUEST  filter:accessLog(order 10)     before chain GET /nope
03 REQUEST  servlet:DispatcherServlet      doDispatch start
04 REQUEST  interceptor:A                  preHandle  handler=ResourceHttpRequestHandler
05 REQUEST  interceptor:B                  preHandle  handler=ResourceHttpRequestHandler
06 REQUEST  interceptor:B                  afterCompletion ex=null
07 REQUEST  interceptor:A                  afterCompletion ex=null
08 REQUEST  servlet:DispatcherServlet      doDispatch end
09 REQUEST  filter:accessLog(order 10)     after chain status=404 asyncStarted=false
10 REQUEST  filter:raw(order 5)            after chain
11 ERROR    servlet:DispatcherServlet      doDispatch start
12 ERROR    interceptor:A                  preHandle  handler=HandlerMethod BasicErrorController#error
13 ERROR    interceptor:A                    error attributes: status=404 exception=null
14 ERROR    interceptor:B                  preHandle  handler=HandlerMethod BasicErrorController#error
15 ERROR    interceptor:B                  postHandle status=404 modelAndView=null
16 ERROR    interceptor:A                  postHandle status=404 modelAndView=null
17 ERROR    interceptor:B                  afterCompletion ex=null
18 ERROR    interceptor:A                  afterCompletion ex=null
19 ERROR    servlet:DispatcherServlet      doDispatch end

### POST /api/ping: the path exists, the method does not
HTTP 405  body={"timestamp":"...","status":405,"error":"Method Not Allowed","path":"/api/ping"}
01 REQUEST  filter:raw(order 5)            before chain
02 REQUEST  filter:accessLog(order 10)     before chain POST /api/ping
03 REQUEST  servlet:DispatcherServlet      doDispatch start
04 REQUEST  servlet:DispatcherServlet      doDispatch end
05 REQUEST  filter:accessLog(order 10)     after chain status=405 asyncStarted=false
06 REQUEST  filter:raw(order 5)            after chain
07 ERROR    servlet:DispatcherServlet      doDispatch start
08 ERROR    interceptor:A                  preHandle  handler=HandlerMethod BasicErrorController#error
09 ERROR    interceptor:A                    error attributes: status=405 exception=null
10 ERROR    interceptor:B                  preHandle  handler=HandlerMethod BasicErrorController#error
11 ERROR    interceptor:B                  postHandle status=405 modelAndView=null
12 ERROR    interceptor:A                  postHandle status=405 modelAndView=null
13 ERROR    interceptor:B                  afterCompletion ex=null
14 ERROR    interceptor:A                  afterCompletion ex=null
15 ERROR    servlet:DispatcherServlet      doDispatch end
