Взаимодействие между процессами SystemTap

Я рассматриваю возможность использования SystemTap для мониторинга действий файловой системы на рабочем сервере.

Как я могу передать данные из модуля ядра, который генерирует SystemTap, в другое приложение? Я видел printf только как способ вывода данных из сценария SystemTap. Есть ли какой-то интерфейс сокета?


person yoni    schedule 25.08.2016    source источник


Ответы (1)


В настоящее время в systemtap нет сетевой поддержки IPC. Тем не менее, способы включают в себя:

  • probe FOO { system("some_shell_command") } для постановки в очередь выполнения произвольного сценария оболочки.
  • probe procfs.{read,write}("PATH") {} для экспорта файлов в /proc, которые приложения пользовательского пространства могут читать/записывать, чтобы обращаться непосредственно к модулю stap.
  • stap --remote HOST ... для удаленного запуска модулей stap и обратного ввода-вывода через ssh.
  • Или используйте именованные каналы: mkfifo tun, откройте tun для чтения- только в целевом приложении, затем запустите stap -o tun ....
person fche    schedule 31.10.2016