Logging at railbird
structlog
We use the structlog python package for logging. The aim is to have all logging be machine readable so that logs can easily be filtered an aggregated. Log strings should always be essentially static, in the sense that they should never have any formatted or dynamic content. Any dynamic content should be added as fields.
Logs Explorer
We use the gcp Logs Explorer for deep insight into logs across all of our production components.