Учимся дебажить с perf — целых 18 страниц про основные подкоманды, фичи и устройство инструмента. Джулия рекомендует; “Я даже использовала его несколько раз для профилирования Ruby программ!” Уровень сложности — для суперпродвинутого администратора. Когда нужно отыскать причину сбоя, не имея доступа к исходным кодам. Все логи уже просмотрены, все debug и verbose-ключи включены, а причина проблем так и не обнаружена — используйте perf. Потребуется навык кодинга на языках типа Си. Читать дальше →
Александр Алексеев (Postgres Professional) Отличный обзорный доклад конференции HighLoad++ 2016 о том, как надо проводить профилирование программного кода. О типичных ошибках, происходящих при измерениях. И, конечно, об инструментах: — gettimeofday — strace, ltrace, truss — gprof — gdb / lldb — perf — pmcstat — SystemTap — DTrace
В эпоху быстрорастущих приложений важно иметь возможность контролировать состояние системы в любой момент времени. Одними из требований для достижения этого являются логи и метрики, которые помогают нам следить за многими параметрами, такими как количество запросов в секунду (RPS), потребление памяти, cache git и т.д. Однако, есть ещё один полезный инструмент - трейсинг. В этой статье мы ознакомимся со стандартом OpenTelemtry в языке Go и инструментом Jaeger Читать далее
Трейсинг (возможность отслеживания пути запроса между сервисами в микросервисной архитектуре) - критический важное требование функционирования более-менее крупных систем.У Uber - тысячи микросервисов. А у Netflix - несколько тысячВ каком сервисе возникла ошибка? Сервис упал или просто ошибка сети? Что за ошибка возникла?Стоп! Рим не за один день был построенПоэтому начнем с малого и подключим трейсинг к обычной микросервисной системе на ASP.NET Core.Поможет нам в этом OpenTelemetry Читать далее