
С развитием облачных технологий особую популярность приобрели микросервисные архитектуры, распространение которых, в свою очередь, вызвало развитие распределенных систем. Но вместе с новыми решениями появляются и новые проблемы: да, микросервисы упрощают масштабируемость приложений, но одновременно с этим усложняют их мониторинг. Традиционные инструменты отслеживания процессов, происходящих внутри систем, разрабатывались с прицелом на монолитные приложения – они не были рассчитаны на выявление нетривиальных связей между разрозненными сервисами. Из-за этого возникла проблема обеспечения наблюдаемости (observability) систем.
Классическое определение наблюдаемости звучит так: наблюдаемость – это свойство системы, отражающее то, насколько об ее внутреннем состоянии можно судить по ее внешним проявлениям. Иными словами, наблюдаемость – это степень прозрачности системы. А данные, позволяющие анализировать и контролировать работу системы, называют данными телеметрии.