Перейти к содержанию

cleanup.php

Модуль очистки системных данных: управление таймаутами развертывания, проверка SMTP, очистка IPMI/NAT, работа с базами данных и ISO-образами

Методы API

Метод Действие Описание
autodeploy_timeout очистка зависших деплоев Запуск процесса очистки серверов, у которых истек таймаут автоматического развертывания.
check_email проверка SMTP Отправка тестового письма для проверки работоспособности SMTP-соединения.
check_vm проверка виртуальных машин Получение списка виртуальных машин с фильтрацией по статусу и пагинацией.
cleanup_auth_attempts очистка попыток авторизации Очистка записей о неудачных попытках входа (защита от брутфорса).
cleanup_db очистка БД Метод-заглушка. Очистка базы данных выполняется планировщиком (CleanupDbWorker) через Jenkins.
cleanup_ipmi очистка IPMI и NAT Комплексная очистка: удаление неактивных записей IPMI, разблокировка IP в BIRD (через теги block_expire) и очистка NoVNC/ISO монтирований.
cleanup_iso очистка ISO-образов Очистка устаревших монтирований ISO-образов.
cleanup_old_ip_ranges очистка старых IP-диапазонов Удаляет устаревшие IPv4 диапазоны, которые были помечены тегом 'moved_to_old_ranges' более 30 дней назад.
cleanup_s3_journal очистка журнала S3 Очищает историю журналов в хранилище S3.
cleanup_servers очистка серверов Выполняет комплексную очистку данных серверов, включая теги, RR и застрявшие TT-серверы.
cleanup_traffic очистка трафика Обновляет периоды трафика и выполняет очистку шейпинга (overdue invoices).
cleanup_upgrade_invoices очистка инвойсов на апгрейд Ищет и отменяет старые инвойсы на апгрейд через WHMCS.
get_currency_rates получение курсов валют Возвращает текущие курсы валют для расчета стоимости.
reload_traffic_data перезагрузка данных трафика Пересчитывает периоды и счетчики трафика для конкретного ID.
sync_billing_status синхронизация статусов биллинга Синхронизирует данные о статусах оплаты из WHMCS для компонентов, у которых истек срок действия условий.
update_billing_currency_rates обновление курсов валют биллинга Обновляет курсы валют в системе WHMCS для указанной локации.
update_components обновление компонентов Запускает процесс обновления локаций для всех компонентов.
update_currency_rates обновление курсов валют Обновляет стоимость услуг в EUR на основе актуальных курсов.
update_hw_config обновление конфигураций оборудования Запускает ежечасное обновление аппаратных конфигураций серверов.
update_jira_organizations обновление организаций Jira Запускает процесс синхронизации и обновления данных организаций в системе Jira.
update_rates обновление цен (проверка/тест) Запускает процесс пересчета цен для серверов в зависимости от выбранного этапа или конкретного сервера.
update_traffic_rates актуализация стоимости трафика Запускает процесс актуализации стоимостей входящего и исходящего трафика (cost_trafficIN/cost_traffic) для активных серверов.
yookassa_check_pending_refunds проверка незавершенных возвратов YooKassa Запускает фоновую задачу через Jenkins для проверки и обработки ожидающих возвратов в платежной системе YooKassa.

cleanup/autodeploy_timeout

Запуск процесса очистки серверов, у которых истек таймаут автоматического развертывания.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: autodeploy_timeout
token ✅ string Токен авторизации для выполнения запроса

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=autodeploy_timeout" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"data": [
{
"id": 123,
"status": "cleaned"
}
]
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка при выполнении очистки таймаутов"
}

cleanup/check_email

Отправка тестового письма для проверки работоспособности SMTP-соединения.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: check_email
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=check_email"
Пример успешного ответа
{
"result": "OK",
"action": "check_email",
"data": {
"status": "sent",
"recipient": "debug@example.com"
}
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка отправки письма"
}

cleanup/check_vm

Получение списка виртуальных машин с фильтрацией по статусу и пагинацией.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: check_vm
count ❌ integer Количество записей для получения.
skip ❌ integer Смещение (offset) для пагинации.
status ❌ string Фильтр по статусу виртуальной машины. Допустимые значения: presale, sale, rent.

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=check_vm"
Пример успешного ответа
{
"result": "OK",
"message": "check_vm: done for 10 servers"
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка при получении списка VM"
}

cleanup/cleanup_db

Метод-заглушка. Очистка базы данных выполняется планировщиком (CleanupDbWorker) через Jenkins.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: cleanup_db
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=cleanup_db"
Пример успешного ответа
{
"result": "OK",
"message": "cleanup_db is handled by scheduler, this endpoint is a no-op"
}
Примеры ошибок
{
"code": -1,
"message": "Метод не активен"
}

cleanup/cleanup_ipmi

Комплексная очистка: удаление неактивных записей IPMI, разблокировка IP в BIRD (через теги block_expire) и очистка NoVNC/ISO монтирований.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: cleanup_ipmi
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=cleanup_ipmi"
Пример успешного ответа
{
"result": "OK",
"message": "cleanup_ipmi: cleared NAT for <IP_LIST>"
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка при выполнении очистки IPMI/NAT"
}

cleanup/cleanup_iso

Очистка устаревших монтирований ISO-образов.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: cleanup_iso
days ❌ integer Срок хранения в днях (должен быть положительным целым числом). По умолчанию 30.

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=cleanup_iso" \
--data "days=15"
Пример успешного ответа
{
"result": "OK",
"statistic": 5
}
Примеры ошибок
{
"code": -1,
"message": "$module/$action: days must be a positive integer"
}

cleanup/cleanup_auth_attempts

Очистка записей о неудачных попытках входа (защита от брутфорса).

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: cleanup_auth_attempts
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=cleanup_auth_attempts"
Пример успешного ответа
{
"result": "OK"
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка очистки попыток авторизации"
}

cleanup/cleanup_old_ip_ranges

Удаляет устаревшие IPv4 диапазоны, которые были помечены тегом 'moved_to_old_ranges' более 30 дней назад.

HTTP-метод: GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: cleanup_old_ip_ranges
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X GET \
--data "action=cleanup_old_ip_ranges"
Пример успешного ответа
{
"result": "OK",
"summary": [
"12 unused tags cleared",
"eq height updated",
"servers data cleaned",
"unused RR cleaned",
"Old deploy tags cleared"
]
}
Примеры ошибок
{
"code": -1,
"message": "cleanup/cleanup_old_ip_ranges: error message"
}

cleanup/cleanup_s3_journal

Очищает историю журналов в хранилище S3.

HTTP-метод: GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: cleanup_s3_journal
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X GET \
--data "action=cleanup_s3_journal"
Пример успешного ответа
{
"result": "OK",
"msg": "Journal S3 history cleared"
}
Примеры ошибок
{
"code": -1,
"message": "Cleanup error"
}

cleanup/cleanup_servers

Выполняет комплексную очистку данных серверов, включая теги, RR и застрявшие TT-серверы.

HTTP-метод: GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: cleanup_servers
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X GET \
--data "action=cleanup_servers"
Пример успешного ответа
{
"result": "OK",
"summary": [
"5 unused tags cleared",
"eq height updated",
"servers data cleaned",
"unused RR cleaned",
"stalled TT servers cleared: 0"
]
}
Примеры ошибок
{
"code": -1,
"message": "Cleanup error"
}

cleanup/cleanup_traffic

Обновляет периоды трафика и выполняет очистку шейпинга (overdue invoices).

HTTP-метод: GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: cleanup_traffic
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X GET \
--data "action=cleanup_traffic"
Пример успешного ответа
{
"result": "OK",
"summary": {
"update_traffic_periods": 0,
"cleanup_shape_traffic": 0
}
}
Примеры ошибок
{
"code": -1,
"message": "Cleanup error"
}

cleanup/cleanup_upgrade_invoices

Ищет и отменяет старые инвойсы на апгрейд через WHMCS.

HTTP-метод: GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: cleanup_upgrade_invoices
age ❌ integer Максимально допустимый возраст инвойса в днях для отмены.

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X GET \
--data "action=cleanup_upgrade_invoices"
Пример успешного ответа
{
"result": "OK",
"summary": [
{
"component_id": 123,
"result": "cancelled"
}
]
}
Примеры ошибок
{
"code": -1,
"message": "Cleanup error"
}

cleanup/get_currency_rates

Возвращает текущие курсы валют для расчета стоимости.

HTTP-метод: GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: get_currency_rates
token ✅ string Токен авторизации для доступа к API.

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X GET \
--data "action=get_currency_rates" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"rate": 1.05
}
Примеры ошибок
{
"code": -1,
"message": "Error getting rates"
}

cleanup/reload_traffic_data

Пересчитывает периоды и счетчики трафика для конкретного ID.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: reload_traffic_data
id ✅ integer ID объекта для перезагрузки данных трафика.

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=reload_traffic_data" \
--data "id=VALUE"
Пример успешного ответа
{
"result": "OK"
}
Примеры ошибок
{
"code": -1,
"message": "No id provided"
}

cleanup/sync_billing_status

Синхронизирует данные о статусах оплаты из WHMCS для компонентов, у которых истек срок действия условий.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: sync_billing_status
billing ❌ string Конкретный тип биллинга для фильтрации. Если не указан, обрабатываются все типы, кроме 'hand'.

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=sync_billing_status"
Пример успешного ответа
{
"result": "OK",
"data": [
"Component1 123 Condition_Component in invapi, bill status is active",
"Component1 456 Condition_Component in invapi, error: connection failed"
]
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка выполнения запроса к БД или WHMCS"
}

cleanup/update_components

Запускает процесс обновления локаций для всех компонентов.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: update_components
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=update_components"
Пример успешного ответа
{
"result": "OK",
"message": "update_components: done 15 components in 2 sec"
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка при выполнении обновления компонентов"
}

cleanup/update_hw_config

Запускает ежечасное обновление аппаратных конфигураций серверов.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: update_hw_config
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=update_hw_config"
Пример успешного ответа
{
"result": "OK",
"message": "update_hardware configs: done 120 servers"
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка при обновлении конфигураций оборудования"
}

cleanup/update_currency_rates

Обновляет стоимость услуг в EUR на основе актуальных курсов.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: update_currency_rates
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=update_currency_rates"
Пример успешного ответа
{
"result": "OK",
"message": "EUR costs update with a rate 1.08, tags_cleared: []",
"tags_cleared": []
}
Примеры ошибок
{
"code": -1,
"message": "Failed to update EUR costs"
}

cleanup/update_billing_currency_rates

Обновляет курсы валют в системе WHMCS для указанной локации.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: update_billing_currency_rates
location ❌ string Локация для обновления курсов. Если не указана, обновляются все локации.

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=update_billing_currency_rates" \
--data "location=US"
Пример успешного ответа
{
"result": "OK",
"message": "{\"active\":true,\"code\":\"EUR\",\"identifier\":\"US\",\"result\":1}"
}
Примеры ошибок
{
"code": -1,
"message": "Failed to update currency rates. No active billings found or update failed due to error."
}

cleanup/update_rates

Запускает процесс пересчета цен для серверов в зависимости от выбранного этапа или конкретного сервера.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: update_rates
server_id ❌ integer ID конкретного сервера для проверки цены.
stage ❌ integer Этап обновления цен. Допустимые значения: 1 (sale), 2 (NL rent), 3 (US rent), 4 (RU rent), 5 (FI rent), 6 (DE rent), 7 (infra), 8 (IS rent), 9 (TR rent), 10 (UK rent), 11 (FR rent), 12 (ES rent), 13 (IT rent), 14 (PL rent). По умолчанию -1.
dry_run ❌ boolean Режим тестирования без записи в БД. Допустимые значения: 0 (false), 1 (true). По умолчанию -1.
quiet ❌ integer Тихий режим выполнения. По умолчанию -1.
batch ❌ integer Размер пачки (batch size) для обработки цен. 0 использует значение по умолчанию (750).

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=update_rates"
Пример успешного ответа
{
"result": "OK",
"summary": {}
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка при расчете цен"
}

cleanup/update_traffic_rates

Запускает процесс актуализации стоимостей входящего и исходящего трафика (cost_trafficIN/cost_traffic) для активных серверов.

HTTP-метод: GET|POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: update_traffic_rates
dry_run ❌ boolean Режим симуляции без внесения изменений в базу данных.
location ❌ string Локация для фильтрации серверов.
limit ❌ integer Лимит записей для обработки.
offset ❌ integer Смещение (offset) при выборке данных.

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X GET|POST \
--data "action=update_traffic_rates"
Пример успешного ответа
{
"result": "OK",
"summary": [
"Обновление периодов трафика: 123",
"Очистка шейпа трафика: 45"
]
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка выполнения операции очистки трафика"
}

cleanup/yookassa_check_pending_refunds

Запускает фоновую задачу через Jenkins для проверки и обработки ожидающих возвратов в платежной системе YooKassa.

HTTP-метод: GET|POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: yookassa_check_pending_refunds
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X GET|POST \
--data "action=yookassa_check_pending_refunds"
Пример успешного ответа
{
"result": "OK",
"action": "yookassa_check_pending_refunds",
"data": {
"status": "completed",
"processed_count": 5
}
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка при запуске задачи через Jenkins"
}

cleanup/update_jira_organizations

Запускает процесс синхронизации и обновления данных организаций в системе Jira.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: update_jira_organizations
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/cleanup.php" -X POST \
--data "action=update_jira_organizations"
Пример успешного ответа
{
"result": "OK",
"organizations": {
"result": 1,
"data": []
}
}
Примеры ошибок
{
"code": -1,
"message": "Failed to update organizations: error_details"
}
question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×