{"push_id":816778132,"size":1,"distinct_size":0,"ref":"refs/heads/1.2.x","head":"b8b4ea489e91280ebb88327d8c11d6b483a03566","before":"a94f3a0cbf58e9fa1e02007d96c4f8e6fd1aca7e","commits":[{"sha":"b8b4ea489e91280ebb88327d8c11d6b483a03566","author":{"email":"f8966b18f34115a57ab2492f3b4493665c4f5ec1@pivotal.io","name":"Andy Wilkinson"},"message":"Improve MetricsFilter’s handling of async requests\n\nPreviously, MetricsFilter would treat async requests the same as\nsync requests and would record their response status as soon as the\nrequest had been processed by the filter chain. This would result in a\n200 response being recorded and the actual response status produced by\nthe async processing being ignored. Furthermore, the time that was\nrecorded for the request would not include the time take for any async processing.\n\nThis commit updates MetricsFilter to check whether or not an async\nrequest has been started before it records the metrics for the request.\nIn the event of an async request having been started no metrics are\nrecorded. Instead, the StopWatch is stored in a request attribute that\nis then retrieved during the filtering of the request’s async\ndispatch(es). Once the async processing has completed (isAsyncStarted()\nreturns false), the StopWatch is stopped, removed from the request’s\nattributes and the metrics for the request are recorded.\n\nCloses gh-4098","distinct":false,"url":"https://api.github.com/repos/spring-projects/spring-boot/commits/b8b4ea489e91280ebb88327d8c11d6b483a03566"}]}