intDataBlog
← ЖурналМаршруты обучения ↗

Linux-диагностика: strace как быстрый профиль системных вызовов

<code>strace -c</code> помогает увидеть, какие системные вызовы занимают время процесса, и быстро собрать фактуру для инженерной задачи.

Для первичного профиля системных вызовов достаточно запустить процесс под strace -c или подключиться к PID в тестовом окне обслуживания.

strace -c -p <pid>

В отчете важны time, usecs/call, calls и имя syscall. Если большую долю занимает write, openat, stat или сетевые вызовы, это дает направление для следующего шага.

Как оформить наблюдение

  • Команда запуска и длительность наблюдения.
  • Топ системных вызовов по времени и количеству.
  • Версия сервиса, PID, контейнер или systemd-unit.
  • Гипотеза: файловый ввод-вывод, сеть, частые открытия файлов, частая запись.
  • Следующий шаг: буферизация, кэширование, изменение логирования или профиль приложения.