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

Настройки и отладка (chutils config)

Команда chutils config предоставляет инструменты для углубленной диагностики, трассировки значений и интеграции вашей конфигурации со средами разработки.


Синтаксис

chutils config [-h] {debug,generate-schema} ...

Подкоманды:

  1. debug — Интерактивный отладчик конфигурации (Trace).
  2. generate-schema — Быстрая генерация JSON Schema.

config debug

Позволяет запустить интерактивную сессию отладки конфигурации. Вы сможете детально увидеть, какое значение принял каждый параметр, из какого источника (дефолтные настройки, config.yml, config.local.yml или ENV) оно применилось и почему.

Синтаксис подкоманды:

chutils config debug [-h] [-m MODEL] [-d] [-f {tree,table,json}] [--show-secrets]

Параметры и флаги:

Флаг Полное имя Описание Обязательный
-m --model Путь к Pydantic-модели (например, myapp.config:Settings). Используется для валидации и вывода структуры. Нет
-d --defaults Показывать значения по умолчанию из модели. Нет
--include-fallbacks Показывать значения fallback по умолчанию, заданные в коде через get_config_*. Нет
-f --format Формат вывода данных: tree (дерево), table (таблица) или json (JSON-структура). По умолчанию: tree. Нет
--show-secrets Показывать реальные значения секретов вместо маскированных ([MASKED]). Нет

Примеры использования:

# Базовый запуск
chutils config debug

# Сбор fallback значений по умолчанию из вызовов в коде проекта
chutils config debug --include-fallbacks

Вывод в консоли:

=== Отладчик конфигурации chutils ===
Загруженный файл: D:\PROJECTS\chutils\config.yml

Доступные параметры:
  * Database.host (Источник: config.yml) -> 'localhost'
  * Database.port (Источник: env 'DATABASE__PORT') -> 5432 (переопределено из ENV)
  * Logging.level  (Источник: Дефолтное значение) -> 'INFO'

config generate-schema

Генерирует стандартный файл JSON Schema на основе структуры вашей Pydantic-модели. Схема используется текстовыми редакторами для автодополнения.

Синтаксис подкоманды:

chutils config generate-schema [-h] --model MODEL [-o OUTPUT] [--stdout]

Параметры и флаги:

Флаг Полное имя Описание Обязательный
--model Путь к Pydantic-модели в формате module:Class (например, myapp.config:Settings). Да
-o --output Путь к выходному JSON-файлу (например, config.schema.json). Нет
--stdout Вывести схему в консоль (игнорируется, если указан --output). Нет

Примеры использования:

Сохранение схемы в файл:

chutils config generate-schema --model app.config:Settings -o config.schema.json

Вывод в консоли:

 [OK]  JSON Schema успешно сгенерирована и сохранена в config.schema.json