The OpenNET Project
 
Поиск (теги):    НОВОСТИ (+) КОНТЕНТ WIKI MAN'ы ФОРУМ

18.06.2012 14:04  Увидела свет система динамической трассировки SystemTap 1.8

Представлен релиз системы динамической трассировки SystemTap 1.8, предоставляющий для платформы Linux средства похожие на технологию DTrace. SystemTap позволяет организовать доскональное наблюдение за работающей Linux системой, производить сбор статистики о работе приложений, профилирование и контроль системных вызовов. Управление производится через интерфейс командной строки и специальный Си-подобный язык сценариев.

В развитии проекта участвуют такие компании как Red Hat, IBM, Intel, Hitachi и Oracle. В каталоге примеров представлено более 100 скриптов на все случаи жизни, подходящие для слежения за распределением памяти, вводом/выводом, дисковыми операциями, сетевым трафиком (например, анализ работы NFS), работой планировщика задач, обработкой прерываний, использованием системных буферов, установкой блокировок, выполнением системных вызовов, обработкой сигналов и т.п.

Основные улучшения версии 1.8:

  • Поддержка проверки приложений пространства пользователя из коробки начиная с выпуска ядра 3.5-rc, без необходимости использования модифицированного ядра Linux;
  • Поддержка контрольных вызовов (probes) для подсистемы netfilter. Набор сопутствующих инструментов представлен в tapset-е netfilter.stp;
  • Полная поддержка IPv6 в tapset-ах и сервере/клиенте компиляции скриптов;
  • В сервере компиляции сценариев (systemtap compile-server) обеспечена поддержка параллельной обработки одновременных соединений (управление через опцию "--max-threads");
  • Поддержка секций ".debug_types", определённых в отладочном формате DWARF4 (например, используется когда исполняемый файл или библиотека собраны свежими версиями GCC с опцией -gdwarf-4 или -fdebug-types-section);
  • Реализация конструкции @var(), которую можно использовать для доступа к переменным в глобальной области видимости. Например, указав @var("somevar@some/src/file.c") можно получить доступ к значению переменной somevar, определённой в файле "some/src/file.c".
  • Поддержка в stap возможности ограничения ресурсов (--rlimit-as=NUM, --rlimit-cpu=NUM, --rlimit-nproc=NUM, --rlimit-stack=NUM, --rlimit-fsize=NUM);
  • Тестирование работы в широком спектре версий ядра Linux, от 2.6.9 до 3.5-rc.
  • Добавлен новый tapset guru-delay.stp, позволяющий внедрять задержки в операции ядра. Обновлены tapset-ы: syscalls.stp (поддержка системных вызовов ядра 3.5-rc), dentry.stp, context-caller.stp, s390/registers.stp , inet_*.stp (расширено число доступных в непривилегированном режиме функций), inet_*.stp (поддержка IPv6);
  • Новые примеры использования SystemTap:
    • netfilter_drop.stp - отбрасывание заданных исходящих пакетов;
    • netfilter_summary.stp - показ TCP/IP трафика по адресу источника и назначения;
    • psig.stp - показ активных обработчиков сигналов для указанного процесса;
    • auditbt.stp - генерация обратной трассировки (backtraces) для пользовательсного процесса для заданных событий аудита;
    • nfsdtop.stp - вывод суммарных данных о выполняемых запросах в NFS;
    • pf3.stp - формирование профиля взаимодействия ядра и пользовательского процесса;
    • enospc.stp - создание в syslog записей при нехватке свободного места на дисковом разделе.


  1. Главная ссылка к новости (https://lkml.org/lkml/2012/6/17/64...)
  2. Использование systemtap для устранения уязвимости в реализации /proc/pid/mem
  3. Выявление нагружающих дисковую подсистему процессов в Linux
Тип: Программы
Ключевые слова: systemtap, tapset, debug, trace, linux, kernel, (найти похожие документы)
При перепечатке указание ссылки на opennet.ru обязательно
Реклама
Обсуждение Линейный вид (Ajax) | Показать все | RSS
 
  • 1.1, Аноним, 14:37, 18/06/2012 [ответить] [смотреть все]
  • +/
    Т е systemtap фактически уже принят в ядро ... весь текст скрыт [показать]
     
     
  • 2.2, ананим, 14:52, 18/06/2012 [^] [ответить] [смотреть все]  
  • +/
    давно уже.
    достаточно установить дебагинфо в большинстве дистрибутивов или скомпилировать так:
    (KPROBES) - this can be enabled in 'Instrumentation Support -> Kprobes'."
    (RELAY) - this can be enabled in 'General setup -> Kernel->user space relay support (formerly relayfs)'."
    (DEBUG_FS) - this can be enabled in 'Kernel hacking -> Debug Filesystem'."
     
  • 2.3, Andrey Mitrofanov, 15:12, 18/06/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    >> Поддержка проверки приложений пространства пользователя из коробки начиная с выпуска ядра 3.5-rc, без необходимости использования модифицированного ядра Linux;
    > Т.е. systemtap фактически уже принят в ядро?

    У них в доке, вроде, написано, что для испоьзования нужна только debug-инфо от ядра. И работатет оно чуть не 2.6.9.

    Про 3.5-rc, я думаю они отдельно написали, потому как в 3.5 включили конкурента - uprobe - и, то ли нужно было отдельно указать, что оно, таки да, работает, то ли нужно было с таким ядром совместимость отдельно допиливать.

     
  • 2.4, Мяут, 23:46, 18/06/2012 [^] [ответить] [смотреть все]  
  • +/
    SystemTap никогда ничего и не писал в ядро (хотя собирает и загружает модули ядра для трассировки). Его изначально таким спроектировали.
     
     
  • 3.7, ананим, 02:14, 19/06/2012 [^] [ответить] [смотреть все]  
  • +/
    Не совсем верно.
    Во-первых нужен кпробе, во-вторых такие кпробе нужны для кучи подсистем, например для вайфая.
    Я выше написал минимум для запуска.
     
  • 1.5, alexgpg, 01:52, 19/06/2012 [ответить] [смотреть все]  
  • +/
    А есть инфа по практическому использованию его для трассировки своих приложений?
     
     
  • 2.6, ананим, 02:12, 19/06/2012 [^] [ответить] [смотреть все]  
  • +/
    2 абзац, 2 предложение.
    Сложно, но вы всё же попробуйте дочитать. Там даже ссыдь есть.
     
     
  • 3.8, alexgpg, 08:56, 19/06/2012 [^] [ответить] [смотреть все]  
  • +/
    > 2 абзац, 2 предложение.
    > Сложно, но вы всё же попробуйте дочитать. Там даже ссыдь есть.

    В упор не вижу там, как встраивать датчики в свое приложение. Или как им мониторить/трассировать свое работающее приложение. Или отчета о стабильности это штуки. Это интересно.


     

    Ваш комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:
     
    Навигация
     
     Новости для экспорта XML
     В социальных сетях:  twitter    
     Сводные | за день | мини-новости
     Разделы новостей
     Что нового на OpenNet
     Поиск в новостях
     Новые комментарии
     Добавить свою новость

    Важное
    - 22.10 Fastsocket - новая высокомасштабируемая реализация сетевой подсистемы ядра Linux (52 +25)
    - 17.10 Анонсирован Android 5.0 "Lollipop", выпущен SDK и предварительные сборки (97 +29)
    - 15.10 Выпуск пользовательской оболочки KDE Plasma 5.1 (53 +31)
    - 15.10 Новый вид атаки на HTTPS ставит под вопрос дальнейшее существование SSL 3.0 (57 +24)
    - 14.10 Релиз Firefox 33 (83 +35)
    - 11.10 Компания AMD представила новую стратегию разработки графических драйверов для Linux (54 +75)
    - 07.10 В Bugzilla устранена опасная уязвимость, открывшая новый вид атак на web-приложения (22 +7)

    Советы
    - 02.10 Применение двухфакторной аутентификации для SSH и GDM средствами Google Authenticator
    - 01.10 Организация кэширования только медленных ответов сервера при помощи Nginx
    - 18.09 Запуск Android-приложений в окружении Chrome OS или в браузере Chrome
    - 17.09 Добавление поддержки SSL в pgbouncer при помощи stunnel
    - 17.08 Простой способ существенно увеличить производительность открытого драйвера RadeonSI

    Обсуждаемые новости
    - 13:09 Обзор изменений в Debian Jessie, связанных с мультимедиа (12)
    - 13:06 Серия статей о LaTeX (10)
    - 13:03 Компания Imagination опубликовала документацию на набор кома (8)
    - 13:02 Clang включен в число системных компиляторов DragonFly BSD (1)
    - 12:57 Отчёт о состоянии развития FreeBSD за третий квартал 2014 го (37)
    - 12:53 Fastsocket - новая высокомасштабируемая реализация сетевой п (52)
    - 12:48 Выпуск PyPy3 2.4, реализации Python 3, написанной на языке P (33)
    - 12:32 Выпуск Pidgin 2.10.10 с устранением уязвимостей (1)


      Закладки на сайте
      Проследить за страницей
    Created 1996-2014 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    RUNNet TopList