Активация поддержки DTrace во FreeBSD |
[исправить] |
Краткое руководство по включению системы динамической трассировки DTrace во FreeBSD:
1. Включаем в ядре настройки KDTRACE_HOOKS, DDB_CTF и KDTRACE_FRAME (для amd64):
options KDTRACE_HOOKS # включение DTrace-хуков (для всех архитектур)
options DDB_CTF # включении поддержки загрузки CTF-данных в ELF-компоновщике (для всех архитектур)
options KDTRACE_FRAME # (для архитектуры amd64)
makeoptions WITH_CTF=1
2. Пересобираем ядро (параметр WITH_CTF=1 должен быть прописан в файл
конфигурации ядра, указание в make.conf или src.conf не поддерживается.
make buildkernel KERNCONF=DTRACE
3. Устанавливаем новое ядро и перезагружаемся:
make installkernel KERNCONF=DTRACE
shutdown -r NOW
4. Загружаем модули ядра, необходимые для работы DTrace:
kldload dtraceall
5. Убеждаемся, что нужные DTrace-хуки доступны (запускать команды для работы с
DTrace нужно от пользователя root):
dtrace -l | head
6. Правим make.conf для поддержки Dtrace на уровне пользователя:
STRIP=
CFLAGS+=-fno-omit-frame-pointer
7. Пересобираем пользовательское окружение, выполнив make buildworld и make install world
Хорошие подборки DTrace-скриптов можно найти на страницах:
* http://hub.opensolaris.org/bin/view/Community+Group+dtrace/dtracetoolkit
* http://www.solarisinternals.com/si/dtrace/
* http://www.brendangregg.com/dtrace.html
Запускаем скрипты так:
dtrace -s скрипт.d
|
|
|
|
Раздел: Корень / Администратору / Система / FreeBSD специфика / Сис. информация, оптимизация и тюнинг FreeBSD |