Michiel Kalkman

Notes and observations

04 May 2020

Visibility maturity

Simple checklists for evaluating visibility maturity

Logs

Maturity is measured on a scale from 0 to 5. Each item below counts for 1 point towards the total score.

  1. Application emits logs at runtime with appropriate log levels (DEBUG, INFO, WARNING, ERROR)
  2. Application uses a centralised logging system
  3. Application uses structured logs
  4. Application logs contain externally defined and documented diagnostic codes
  5. Application logs contain correlation identifiers for matching with other visibility data (external logs, tracing)

Metrics

Maturity is measured on a scale from 0 to 5. Each item below counts for 1 point towards the total score.

  1. Application runtime metrics are available
  2. Application emits custom application-level metrics (business metrics)
  3. Application metrics are emitted with externally defined and documented dimensions
  4. Application RED (Response, Error, Duration) metrics are available on a per-function basis
  5. Application USE (Utilisation, Saturation, Error) metrics are available on a per-function basis

Tracing

Maturity is measured on a scale from 0 to 5. Each item below counts for 1 point towards the total score.

  1. Application has a tracing system
  2. Application can generate or propagate correlation identifiers
  3. Application tracing system can cross technology boundaries
  4. Application has tracing that interoperates with the larger organisation
  5. Application has tracing based on open industry standards for future changes

Correlation

Maturity is measured on a scale from 0 to 5. Each item below counts for 1 point towards the total score.

  1. Correlation data exists across individual system boundaries
  2. Correlation data is consistent across transactions
  3. Correlated data is accessible via the same interface
  4. Correlation data is present for two visibility data types
  5. Correlation data is present for all three visibility data types

Alerting

Maturity is measured on a scale from 0 to 5. Each item below counts for 1 point towards the total score.

  1. Synthetic monitoring is in place for availability and uptime measurement
  2. Alerts can be configured based on visibility data
  3. Alerts can be configured on a self-service basis by the operations team
  4. Alerts can be triggered as close to the origin of visibility data as possible
  5. Alerts are actionable and contain references or links to the source of the trigger data
Next time, we'll talk about "What Tiger King can teach us about x86 Assembly"