Skip to main content

Standardize Logging, Monitoring, and Tracing

Context

Microservices are being adopted. There are multiple microservices with their own logging and monitoring each.

Problem

  • The diverse logging, monitoring, and tracing across the system don't allow central aggregation

Solution

Standardize logging, monitoring and tracing across microservices. This technique is a topic-related specialization of general standardization in microservice-based systems.

At a bare minimum, agree on a common format for logging, monitoring, and tracing information to allow parsing them into structured information. Further, consider standardizing how the information is accessible across microservices to streamline log and monitor metric aggregation.

Maturity

Proposed, to be evaluated.

Sources of Evidence

L16:

  • Standardize logging format and timestamps
    • helps to aggregated individual logs
    • not suitable for IoT since ont all services under control
    • should emphasize use of common logging format
  • example
    • internationalized time stamps

L31:

  • Context: aggregation of monitoring
  • monitoring information should be parsed and aggregated into structured information

L41:

  • Lambda provides standard formatting methods for logs and health checks

L46:

  • Context: enterprise monitoring
  • all emitters have to standardize events, e.g. operaitonal log events, metrics
  • in order to collect them in a central collection

Interview A:

  • Next standard is logging to std out in JSON format
    • so that it can be collected and parsed
    • and make available in Kibana as interface

Interview B:

  • Which tracing formats and infrastructure used => part of macro decisions
  • How tracing is done within services (which library) is in the services responsibility

Interview F:

  • Context: Standardization about monitoring/logging?
  • interviewee doesn't know, assumes there were requirements by the customer