Задача: необходимость удаления агента(ов) платформы.
На машине с платформой необходимо выполнить следующие действия:
Создаём файл:
sudo touch clear_agent.sh
CODE
Назначаем права исполняемости:
chmod u+x clear_agent.sh
CODE
Записывапваем текст скрипта в файл:
cat > clear_agent.sh << EOL
#!/bin/bash
echo "Введите список id агентов через запятую. Пример: 2,4,10"
read agent_id
docker exec -it db psql -U postgres -p 5432 pma -c "delete from "audit".audits WHERE instance_id in ( select instance_id from core.instances where agent_id in (\$agent_id) );
delete from "monitoring".trigger_states WHERE instance_id in ( select instance_id from core.instances where agent_id in (\$agent_id) );
delete from core.instance_config WHERE instance_id in ( select instance_id from core.instances where agent_id in (\$agent_id) );
delete from core.instances WHERE instance_id in ( select instance_id from core.instances where agent_id in (\$agent_id) );
delete from core.host_config where host_id in ( select host_id from core.agents where agent_id in (\$agent_id) );
delete from core.agents where agent_id in (\$agent_id);
delete from core.hosts where host_id in (\$agent_id );"
EOL
CODE
Вызываем скрипт, указав id агентов через запятую, которые необходимо удалить(id можно посмотреть в веб интерфейсе):
./clear_agent.sh
CODE