SystemTap с помощью debuginfo может отслеживать вызовы функций в библиотеках; в системе Centos 7:
$ sudo stap -L 'process("/lib64/libglib*").function("*strndup*")'
process("/usr/lib64/libglib-2.0.so.0.5000.3").function("g_strndup")
$
И это можно использовать как probe
точку, которая печатает обратные трассировки или что угодно, что вы хотите, что может быть записано с помощью SystemTap:
probe begin {
printf("ok\n")
}
probe process("/usr/lib64/libglib-2.0.so.0.5000.3").function("g_strndup") {
/* printf("%s[%d]\n", execname(), pid()) */
print_usyms(ubacktrace())
}
сохранено как probelibraryfunc.stp
это можно запустить через
$ sudo stap probelibraryfunc.stp
хотя может выдавать сумасшедшие объемы вывода, если вызов является обычным...
Для еженедельного выполнения вы можете использовать @weekly
во многих настройках или
0 0 * * 0 your_weekly_command
Настройте первые два поля, если время не подходит, и последнее поле, если не подходит день.
При почасовом исполнении с 7:00 до 19:00 (включая ), в час,
0 7-19 * * * your_hourly_command