Integration with logs
Similar to metrics, logs often suffer from the lack of request-scoped context and their investigative power can be improved by capturing some of that context in the fields of structured log records.
Before we go further, let us briefly talk about structured logging. Traditionally, the logging frameworks generate the log lines as plain strings, an example of which you can see in the output of the Hello application clients:
25-11-2018 18:26:37.354 [main] ERROR client.Runner.runQuery - error from server 25-11-2018 18:26:37.468 [main] INFO client.Runner.runQuery - executing http://localhost:8080/sayHello/Bender 25-11-2018 18:26:37.531 [main] ERROR client.Runner.runQuery - error from server 25-11-2018 18:26:37.643 ...