Skip to content
Эта страница создана и переведена с помощью ИИ. Если вы заметили неточности, помогите нам улучшить её. Редактировать на GitHub

prx daemon

Запуск полной среды выполнения PRX. Процесс демона управляет всеми долгоживущими подсистемами: HTTP/WebSocket шлюзом, подключениями каналов обмена сообщениями, планировщиком cron и движком самоэволюции.

Использование

bash
prx daemon [OPTIONS]

Параметры

ФлагСокр.По умолчаниюОписание
--config-c~/.config/prx/config.tomlПуть к файлу конфигурации
--port-p3120Порт прослушивания шлюза
--host-H127.0.0.1Адрес привязки шлюза
--log-level-linfoУровень детализации логов: trace, debug, info, warn, error
--no-evolutionfalseОтключить движок самоэволюции
--no-cronfalseОтключить планировщик cron
--no-gatewayfalseОтключить HTTP/WS шлюз
--pid-fileЗаписать PID в указанный файл

Что запускает демон

При запуске prx daemon инициализирует следующие подсистемы в указанном порядке:

  1. Загрузчик конфигурации — чтение и валидация файла конфигурации
  2. Бэкенд памяти — подключение к настроенному хранилищу памяти (markdown, SQLite или PostgreSQL)
  3. Шлюзовой сервер — запуск HTTP/WebSocket сервера на настроенных хосте и порту
  4. Менеджер каналов — подключение ко всем включённым каналам обмена сообщениями (Telegram, Discord, Slack и т.д.)
  5. Планировщик cron — загрузка и активация запланированных задач
  6. Движок самоэволюции — запуск конвейера эволюции L1/L2/L3 (если включён)

Примеры

bash
# Запуск с настройками по умолчанию
prx daemon

# Привязка ко всем интерфейсам на порту 8080
prx daemon --host 0.0.0.0 --port 8080

# Запуск с отладочным логированием
prx daemon --log-level debug

# Запуск без эволюции (полезно для отладки)
prx daemon --no-evolution

# Использование пользовательского файла конфигурации
prx daemon --config /etc/prx/production.toml

Сигналы

Демон реагирует на Unix-сигналы для управления во время работы:

СигналПоведение
SIGHUPПерезагрузка файла конфигурации без перезапуска. Каналы и задачи cron согласуются с новой конфигурацией.
SIGTERMКорректное завершение. Завершает текущие запросы, аккуратно отключает каналы и сбрасывает отложенные записи в память.
SIGINTАналогично SIGTERM (Ctrl+C).
bash
# Перезагрузка конфигурации без перезапуска
kill -HUP $(cat /var/run/prx.pid)

# Корректное завершение
kill -TERM $(cat /var/run/prx.pid)

Запуск как сервис systemd

Рекомендуемый способ запуска демона в промышленной эксплуатации — через systemd. Используйте prx service install для автоматической генерации и установки юнит-файла или создайте его вручную:

ini
[Unit]
Description=PRX AI Agent Daemon
After=network-online.target
Wants=network-online.target

[Service]
Type=notify
ExecStart=/usr/local/bin/prx daemon --config /etc/prx/config.toml
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
RestartSec=5
User=prx
Group=prx
RuntimeDirectory=prx
StateDirectory=prx

# Усиление безопасности
NoNewPrivileges=yes
ProtectSystem=strict
ProtectHome=yes
ReadWritePaths=/var/lib/prx /var/log/prx

[Install]
WantedBy=multi-user.target
bash
# Установка и запуск сервиса
prx service install
prx service start

# Или вручную
sudo systemctl enable --now prx

Логирование

По умолчанию демон выводит логи в stderr. В окружении systemd логи перехватываются журналом:

bash
# Отслеживание логов демона
journalctl -u prx -f

# Показать логи за последний час
journalctl -u prx --since "1 hour ago"

Для интеграции с агрегаторами логов добавьте log_format = "json" в файл конфигурации для включения структурированного JSON-логирования.

Проверка состояния

Пока демон работает, используйте prx doctor или отправьте запрос к эндпоинту проверки состояния шлюза:

bash
# Диагностика через CLI
prx doctor

# HTTP эндпоинт проверки состояния
curl http://127.0.0.1:3120/health

См. также

Released under the Apache-2.0 License.