Skip to content

Хранение данных (retention)

Механизм retention периодически удаляет устаревшие данные из базы данных и файлового хранилища. По умолчанию механизм выключен — без него объём данных будет неограниченно расти. Для production-окружений рекомендуется включить retention с параметрами по умолчанию.

Очистка выполняется фоновыми задачами по расписанию (по умолчанию — ежедневно с 04:10 до 05:00 по локальному времени сервера). Задачи очистки запускаются только при включённом retention; по умолчанию функция выключена.

Параметры конфигурации

Параметр Docker (user.ini) Kubernetes (values.yaml) По умолчанию Описание
Включение v.common_config.retention.enabled commonConfig.retention.enabled off Мастер-переключатель механизма retention
События v.common_config.retention.event_days commonConfig.retention.eventDays 14 Записи событий
Агрегаты по дням v.common_config.retention.aggregated_data_by_day_days commonConfig.retention.aggregatedDataByDayDays 32 Записи aggregated_data_by_day
Агрегаты по неделям v.common_config.retention.aggregated_data_by_week_days commonConfig.retention.aggregatedDataByWeekDays 378 Записи aggregated_data_by_week
Фоновые задачи v.common_config.retention.background_task_days commonConfig.retention.backgroundTaskDays 100 Записи фоновых задач
Scan pipelines v.common_config.retention.scan_pipeline_days commonConfig.retention.scanPipelineDays 380 Завершённые scan pipelines
Findings v.common_config.retention.finding_num_per_issue commonConfig.retention.findingNumPerIssue 100 Лишние findings на issue — остаются только N последних
Временные файлы оркестрации v.common_config.retention.orchestration_tmp_files_days commonConfig.retention.orchestrationTmpFilesDays 7 Архивы репозиториев, результаты сканов, временные конфиги сканеров
Загруженные файлы сканов v.common_config.retention.scan_upload_files_days commonConfig.retention.scanUploadFilesDays 381 Файлы, загруженные через scan upload

Значения в колонке «По умолчанию» рассчитаны на типичное production-окружение — рекомендуем включить retention с ними, не переопределяя отдельные параметры. Меняйте сроки хранения только при явной необходимости: требования комплаенса или аудита, нехватка диска, высокая нагрузка на БД или, наоборот, потребность хранить историю дольше обычного.

Retention не удаляет открытые issues и не прерывает активные scan pipelines — очищаются только записи, чей возраст превышает заданный порог (или findings сверх лимита на issue).

Включение для Docker

Добавьте параметры в /opt/hw-vmp/config/user.ini:

v.common_config.retention.enabled = on

Чтобы изменить сроки хранения, добавьте нужные параметры из таблицы выше, например:

v.common_config.retention.event_days = 30
v.common_config.retention.scan_pipeline_days = 180

Примените изменения:

/opt/hw-vmp/bin/reconfig

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

Включение для Kubernetes

Добавьте в файл оверрайдов (например, my-production-config.yaml):

commonConfig:
  retention:
    enabled: "on"

Чтобы изменить сроки хранения:

commonConfig:
  retention:
    enabled: "on"
    eventDays: "30"
    scanPipelineDays: "180"

Примените изменения:

helm upgrade $RELEASE_NAME oci://registry.hexway.io/charts/vampy \
  --version $RELEASE_VERSION \
  -n $RELEASE_NAMESPACE \
  -f my-production-config.yaml