Сейчас проблема повторилась, и я разобрался как принудительно удалять старые логи.
Во-первых, в конфигурации должен быть активирован compactor. У меня такой конфиг:
compactor:
working_directory: {{ loki_data_dir }}/retention
compaction_interval: 10m
retention_enabled: true
retention_delete_delay: 30m
retention_delete_worker_count: 150
delete_request_store: filesystem
delete_request_cancel_period: 5m
Затем делаем такой запрос в Loki с указанием query для фильтрации и таймштампами:
curl -G -X POST 'http://localhost:3100/loki/api/v1/delete' \
--data-urlencode 'query={service="your-damned-service"}' \
--data-urlencode 'start=2026-06-05T00:00:00Z' \
--data-urlencode 'end=2026-06-25T00:00:00Z'
Смотрим статус запроса:
curl 'http://localhost:3100/loki/api/v1/delete'
[{"request_id":"d7f76f7f","start_time":1780617600,"end_time":1782345600,"query":"{service="your-damned-service"}","status":"processed","created_at":1782393974.431}]
Ждем некоторое время (compaction_interval: 10m, delete_request_cancel_period: 5m, retention_delete_delay: 30m) и наслаждаемся освобожденным местом.