Инструменты пользователя

Инструменты сайта


database-server-security

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
database-server-security [2026/02/09 10:57] – создано infradatabase-server-security [2026/02/09 11:02] (текущий) – infra
Строка 1: Строка 1:
-# MessageLog X-Road: настройка и обслуживание +====== MessageLog X-Road: настройка и обслуживание ======
- +
-## Что такое MessageLog+
  
 MessageLog - база данных PostgreSQL для хранения логов обмена сообщениями X-Road Security Server. MessageLog - база данных PostgreSQL для хранения логов обмена сообщениями X-Road Security Server.
  
 **Содержит:** **Содержит:**
-- Метаданные запросов/ответов +  * Метаданные запросов/ответов 
-- Тела сообщений (опционально) +  * Тела сообщений (опционально) 
-- Подписи и временные метки+  * Подписи и временные метки
  
-## Конфигурация в local.ini+==== Конфигурация ====
  
-Файл: `/etc/xroad/conf.d/local.ini`+Файл: /etc/xroad/conf.d/local.ini
  
-### Рекомендуемые настройки для production+=== Рекомендуемые настройки ===
  
-```ini+<code>
 [message-log] [message-log]
-# Хранение в БД только 1 день 
 keep-records-for=1 keep-records-for=1
- 
-# Архивирование каждые 2 часа 
 archive-interval=0 0/2 * 1/1 * ? * archive-interval=0 0/2 * 1/1 * ? *
- 
-# Очистка каждые 3 часа   
 clean-interval=0 0/3 * 1/1 * ? * clean-interval=0 0/3 * 1/1 * ? *
- 
-# Отключить логирование тел сообщений 
 message-body-logging=false message-body-logging=false
- 
-# Размеры пакетов для обработки 
 clean-transaction-batch=10000 clean-transaction-batch=10000
 archive-transaction-batch=10000 archive-transaction-batch=10000
-```+</code>
  
-### Объяснение параметров+=== Параметры ===
  
-| Параметр | Значение | Описание | +^ Параметр ^ Значение ^ Описание ^ 
-|----------|----------|----------| +| keep-records-for | 1 | Срок хранения в БД (дни) | 
-| `keep-records-for` | 1 | Срок хранения в БД (дни). После этого записи архивируются в файлы | +| archive-interval | 0 0/2 * 1/1 * ? * | Каждые 2 часа архивировать | 
-| `archive-interval` | `0 0/2 * 1/1 * ? *` | Каждые 2 часа архивировать записи | +| clean-interval | 0 0/3 * 1/1 * ? * | Каждые 3 часа очищать БД | 
-| `clean-interval` | `0 0/3 * 1/1 * ? *` | Каждые 3 часа очищать архивированные записи из БД | +| message-body-logging | false | Не сохранять тела сообщений | 
-| `message-body-logging` | false | Не сохранять тела сообщений (экономия места) | +| clean-transaction-batch | 10000 | Размер пакета очистки | 
-| `clean-transaction-batch` | 10000 | Количество записей для пакетной очистки | +| archive-transaction-batch | 10000 | Размер пакета архивирования |
-| `archive-transaction-batch` | 10000 | Количество записей для пакетного архивирования |+
  
-## Cron-выражения+=== Cron-выражения ===
  
-Формат: `секунды минуты часы день месяц день_недели`+Формат: секунды минуты часы день месяц день_недели
  
 **Примеры:** **Примеры:**
-``` +  * 0 0/2 * 1/1 * ? * — Каждые 2 часа 
-0 0/2 * 1/1 * ? *     # Каждые 2 часа +  * 0 0/3 * 1/1 * ? * — Каждые 3 часа 
-0 0/3 * 1/1 * ? *     # Каждые 3 часа +  * 0 0 */6 * * ? — Каждые 6 часов 
-0 0 */6 * * ?         # Каждые 6 часов +  * 0 0 2 * * ? — Ежедневно в 2:00
-0 0 2 * * ?           # Ежедневно в 2:00 +
-```+
  
-## Хранение архивов+<note important>Архивные файлы автоматически сохраняются в директории /var/lib/xroad/</note>
  
-Архивные файлы автоматически сохраняются в: +==== Проверка работы ====
-``` +
-/var/lib/xroad/ +
-```+
  
-## Проверка работы +Размер базы данных: 
- +<code>
-### Размер базы данных +
- +
-```bash+
 sudo -u postgres psql -c "SELECT pg_size_pretty(pg_database_size('messagelog'));" sudo -u postgres psql -c "SELECT pg_size_pretty(pg_database_size('messagelog'));"
-```+</code>
  
-### Количество записей +Количество записей: 
- +<code>
-```bash+
 sudo -u postgres psql -d messagelog -c "SELECT COUNT(*) FROM messagelog;" sudo -u postgres psql -d messagelog -c "SELECT COUNT(*) FROM messagelog;"
-``` +</code>
- +
-### Перезапуск для применения настроек+
  
-```bash+Применение настроек: 
 +<code>
 sudo systemctl restart xroad-proxy sudo systemctl restart xroad-proxy
-```+</code>
  
-## Устранение проблем+==== Устранение проблем ====
  
-### База переполнена+При переполнении БД:
  
-```bash +<code> 
-# Принудительная очистка старых записей +# Очистка старых записей 
-sudo -u postgres psql -d messagelog -c " +sudo -u postgres psql -d messagelog -c "DELETE FROM messagelog WHERE request_in_ts < NOW() - INTERVAL '1 day';"
-DELETE FROM messagelog  +
-WHERE request_in_ts < NOW() - INTERVAL '1 day';"+
  
-# VACUUM после удаления+# VACUUM
 sudo -u postgres psql -d messagelog -c "VACUUM ANALYZE messagelog;" sudo -u postgres psql -d messagelog -c "VACUUM ANALYZE messagelog;"
  
-# Перезапуск сервиса+# Перезапуск
 sudo systemctl restart xroad-proxy sudo systemctl restart xroad-proxy
-```+</code>
  
-## Итоговый пример конфигурации+==== Полный пример конфигурации ====
  
-```ini+<code>
 [proxy-ui] [proxy-ui]
  
Строка 123: Строка 99:
 wsdl-validator-command = /usr/share/xroad/wsdlvalidator/bin/wsdlvalidator_wrapper.sh wsdl-validator-command = /usr/share/xroad/wsdlvalidator/bin/wsdlvalidator_wrapper.sh
 strict-identifier-checks = false strict-identifier-checks = false
-```+</code> 
 + 
 +----
  
---- +Автор Даниил Горбенко
-Автор: Даниил Горбенко+
  
database-server-security.1770634657.txt.gz · Последнее изменение: — infra

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki