Как разделить скрипт systemtap на несколько файлов?

Я пишу сценарий systemtap среднего размера с четко разделенными частями. Я хотел бы разделить его на несколько файлов. Я вижу две возможности для этого, но не идеальные. Есть ли официальный способ или, может быть, конвенция?

1. объединить вручную и прочитать скрипт со стандартного ввода

cat *.stp | stap -

2. использовать функцию импорта

Systemtap всегда импортирует целые файлы, так что это должно работать:

main.stp

probe begin {
    import_child();
}

ребенок.stp

function import_child() {
    // using this function imports the whole file
}

person Georg Schölly    schedule 02.05.2017    source источник


Ответы (1)


Последний метод используется библиотекой tapset. Поскольку вы создаете свою собственную аналогичную библиотеку, не стесняйтесь использовать ту же самую. stap -I /path/to/your/tapset/directory добавит его в путь поиска. Вам не нужно использовать функцию для создания межфайловой ссылки; глобальная переменная или псевдоним зонда также достаточно хороши.

person fche    schedule 18.07.2017