12 секунд стали 2 — и никто не понимал почему. История о том, как ИИ нашел три скрытых проблемы в Linux за один час

ИИ нашел причину замедления сети в библиотеке на языке Rust.


ukmffbjxqiu7wfyghjibaxkdf8swz2pn.jpg

Разобраться в сложном сбое в Linux за несколько минут вместо нескольких часов звучит как фантастика. Но разработчик Йозеф Бачик уверяет, что именно к такому результату привёл выход Systing 1.0 – инструмента для трассировки системы на базе eBPF , который теперь умеет анализировать данные с помощью искусственного интеллекта.

Systing изначально создавался как средство для сбора подробных трассировок системы с последующей визуализацией в Perfetto. Программа записывает все ключевые события в единую временную шкалу, что помогает видеть взаимосвязь процессов. Такой подход оказался особенно полезен для разработчиков sched_ext, которым требовалось наглядно отслеживать работу планировщика задач.

Однако со временем проявились проблемы. Трассы получались слишком объёмными и перегруженными деталями, из-за чего анализ превращался в сложную задачу. Часть данных, например взаимодействие приложения с сетью, и вовсе трудно отобразить наглядно: половина операций проходит в контексте приложения, половина – в контексте ядра Linux . Разбор таких ситуаций требовал ручной работы.

В версии 1.0 Бачик изменил подход. Вместо хранения данных только в формате трасс Perfetto Systing теперь умеет записывать результаты в базу данных DuckDB. Такой формат позволяет выполнять запросы на языке SQL напрямую, без долгой конвертации. По словам автора, DuckDB заметно быстрее при работе с большими объёмами данных.