Конфигурация Manticore поддерживает синтаксис shebang, позволяющий писать конфигурацию на языке программирования и интерпретировать её при загрузке. Это даёт возможность динамически задавать настройки, например, создавать таблицы, выполняя запросы к таблице базы данных, изменять настройки в зависимости от внешних факторов или включать внешние файлы с объявлениями таблиц и источников.
Файл конфигурации разбирается объявленным интерпретатором, а его вывод используется в качестве фактической конфигурации. Это происходит каждый раз при чтении конфигурации, а не только при запуске searchd.
Примечание: эта функция недоступна на платформе Windows.
В следующем примере используется PHP для создания нескольких таблиц с разными именами и для сканирования определённой папки на наличие файлов с дополнительными объявлениями таблиц:
#!/usr/bin/php
...
<?php for ($i=1; $i<=6; $i++) { ?>
table test_<?=$i?> {
type = rt
path = /var/lib/manticore/data/test_<?=$i?>
rt_field = subject
...
}
<?php } ?>
...
<?php
$confd_folder='/etc/manticore.conf.d/';
$files = scandir($confd_folder);
foreach($files as $file)
{
if(($file == '.') || ($file =='..'))
{} else {
$fp = new SplFileInfo($confd_folder.$file);
if('conf' == $fp->getExtension()){
include ($confd_folder.$file);
}
}
}
?>