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

digna CLI Reference 2025.04

2025-04-01

На этой странице задокументирован полный набор команд CLI digna релиза 2025.04, включая примеры использования и опции.


Основы CLI


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

Опция --help предоставляет информацию о доступных командах и их использовании. Существует два основных способа применения этой опции:

  1. Отображение общей справки:

    Вызовите --help сразу после ключевого слова dignacli:

    dignacli --help
    

  2. Получение справки по конкретной команде:

    Для подробной информации о конкретной команде добавьте --help к этой команде. Например, чтобы получить справку по команде add-user, выполните:

    dignacli add-user --help
    

    ### вывод:

    • Описание команды: Подробное описание того, что делает команда.
    • Синтаксис: Показывает точный синтаксис, включая обязательные и необязательные аргументы.
    • Опции: Перечисляет опции, специфичные для команды, с их объяснениями.
    • Примеры: Приводит примеры эффективного выполнения команды.

Использование команды check-repo-connection

Команда check-repo-connection — утилита в инструменте CLI digna, предназначенная для проверки доступности и прав доступа к указанному репозиторию digna. Эта команда гарантирует, что CLI может взаимодействовать с репозиторием.

Использование команды

dignacli check-repo-connection

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

Если подключение к репозиторию не удалось, проверьте файл config.toml на корректность настроек.

Использование команды --version

Чтобы проверить установленную версию dignacli, используйте опцию --version.

Использование команды

dignacli --version

Пример вывода

dignacli version 2025.04

Использование параметров логирования

По умолчанию консольный вывод команд digna минималистичен. Большинство команд позволяют вывести дополнительную информацию с помощью следующих опций:

-- verbose (-v)
-- debug (-d)
-- logfile (lf)

«verbose» и «debug» определяют уровень детализации, тогда как переключатель «logfile» позволяет перенаправить вывод в файл вместо консоли.

Управление пользователями

Использование команды add-user

Команда add-user в CLI digna используется для добавления нового пользователя в систему digna.

Использование команды

dignacli add-user [OPTIONS] USER_NAME USER_FULL_NAME USER_PASSWORD
Аргументы
  • USER_NAME: Имя пользователя для нового пользователя (обязательно).
  • USER_FULL_NAME: Полное имя нового пользователя (обязательно).
  • USER_PASSWORD: Пароль для нового пользователя (обязательно).

Опции

  • --is_superuser, -su: Флаг для назначения нового пользователя администратором.
  • --valid_until, -vu: Устанавливает дату истечения срока действия аккаунта в формате YYYY-MM-DD HH:MI:SS. Если не задано, аккаунт не имеет срока действия.

Пример

Чтобы добавить нового пользователя с именем jdoe, полным именем John Doe и паролем password123:

dignacli add-user [OPTIONS] USER_NAME USER_FULL_NAME USER_PASSWORD

Чтобы добавить нового пользователя и установить срок действия аккаунта:

dignacli add-user jdoe "John Doe" password123 --valid_until "2024-12-31 23:59:59"

Использование команды delete-user

Команда delete-user в CLI digna используется для удаления существующего пользователя из системы digna.

Использование команды

dignacli delete-user USER_NAME
Аргументы
  • USER_NAME: Имя пользователя, которого нужно удалить (обязательно). Это единственный аргумент, требуемый командой.

Пример

dignacli delete-user jdoe

Выполнение этой команды удалит пользователя jdoe из системы digna, аннулируя его доступ и удаляя связанные данные и права в репозитории.

Использование команды modify-user

Команда modify-user в CLI digna используется для обновления данных существующего пользователя в системе digna.

Использование команды

dignacli modify-user <USER_NAME> <USER_FULL_NAME> [options]
Аргументы
  • USER_NAME: Имя пользователя, которого нужно изменить (обязательно).
  • USER_FULL_NAME: Новое полное имя пользователя (обязательно).

Опции

  • --is_superuser, -su: Назначает пользователя суперпользователем, предоставляя повышенные привилегии. Этот флаг не требует значения.
  • --valid_until, -vu: Устанавливает дату истечения срока действия аккаунта в формате YYYY-MM-DD HH:MI:SS. Если не указан, аккаунт остается действительным бессрочно.

Пример

Чтобы изменить полное имя пользователя jdoe на «Johnathan Doe» и назначить пользователя суперпользователем:

dignacli modify-user jdoe "Johnathan Doe" --is_superuser

Использование команды modify-user-pwd

Команда modify-user-pwd в CLI digna используется для смены пароля существующего пользователя в системе digna.

Использование команды

dignacli modify-user-pwd <USER_NAME> <USER_PWD>
Аргументы
  • USER_NAME: Имя пользователя, для которого нужно изменить пароль (обязательно).
  • USER_PWD: Новый пароль для пользователя (обязательно).

Пример

Чтобы изменить пароль пользователя jdoe на newpassword123:

dignacli modify-user-pwd jdoe newpassword123

Использование команды list-users

Команда list-users в CLI digna отображает список всех пользователей, зарегистрированных в системе digna.

Использование команды

dignacli list-users

Выполнение этой команды в CLI digna подключится к репозиторию digna и выведет всех пользователей, показывая их ID, имя пользователя, полное имя, статус суперпользователя и метки времени истечения срока действия.

Управление репозиторием

Использование команды upgrade-repo

Команда upgrade-repo в CLI digna используется для обновления или инициализации репозитория digna. Эта команда необходима для применения обновлений или настройки инфраструктуры репозитория в первый раз.

Использование команды

dignacli upgrade-repo [options]

Опции

  • --simulation-mode, -s: При включении эта опция запускает команду в режиме симуляции, печатая SQL-запросы, которые были бы выполнены, но при этом они не выполняются. Это полезно для предварительного просмотра изменений без внесения модификаций в репозиторий.

Пример

Чтобы обновить репозиторий digna, можно выполнить команду без опций:

dignacli upgrade-repo
Чтобы запустить обновление в режиме симуляции (увидеть SQL-запросы, не применяя их):

dignacli upgrade-repo --simulation-mode

Эта команда имеет ключевое значение для поддержки системы digna, гарантируя, что схема базы данных и другие компоненты репозитория соответствуют последней версии ПО.

Использование команды encrypt

Команда encrypt в CLI digna используется для шифрования пароля.

Использование команды

dignacli encrypt <PASSWORD>

Аргументы

  • PASSWORD: Пароль, который необходимо зашифровать (обязательно).

Пример

Чтобы зашифровать пароль, необходимо передать пароль в качестве аргумента.
Например, чтобы зашифровать пароль mypassword123, используйте:

dignacli encrypt mypassword123
Эта команда выводит зашифрованную версию предоставленного пароля, которая затем может использоваться в безопасных контекстах. Если аргумент пароля не указан, CLI выведет ошибку о недостающем аргументе.

Использование команды generate-key

Команда generate-key используется для генерации Fernet-ключа, который необходим для защиты паролей, хранящихся в репозитории digna.

Использование команды

dignacli generate-key

Управление данными

Использование команды clean-up

Команда clean-up в CLI digna используется для удаления профилей, предсказаний и данных системы светофора для одного или нескольких источников данных в заданном проекте. Эта команда необходима для управления жизненным циклом данных, помогая поддерживать организованную и эффективную среду данных путем очистки устаревших или ненужных данных.

Использование команды

dignacli clean-up <PROJECT_NAME> <FROM_DATE> <TO_DATE> [options]

Аргументы

  • PROJECT_NAME: Имя проекта, из которого будут удаляться данные (обязательно). Использование ключевого слова all-projects в этом аргументе инструктирует digna пройтись по всем существующим проектам и применить команду.
  • FROM_DATE: Дата и время начала удаления данных. Допустимые форматы включают %Y-%m-%d, %Y-%m-%dT%H:%M:%S или %Y-%m-%d %H:%M:%S (обязательно).
  • TO_DATE: Дата и время окончания удаления данных, в тех же форматах, что и FROM_DATE (обязательно).

Опции

  • --table-name, -tn: Ограничивает операцию очистки конкретной таблицей внутри проекта.
  • --table-filter, -tf: Фильтрует, ограничивая очистку таблицами, содержащими указанный подстроковый фрагмент в имени.
  • --timing, -tm: Отображает продолжительность процесса очистки после его завершения.
  • --help: Отображает справочную информацию по команде clean-up и завершает выполнение.

Пример

Чтобы удалить данные из проекта ProjectA между 1 января 2023 и 30 июня 2023:

dignacli clean-up ProjectA 2023-01-01 2023-06-30

Чтобы удалить данные только из конкретной таблицы с именем Table1:

dignacli clean-up ProjectA 2023-01-01 2023-06-30 --table-name Table1

Эта команда помогает управлять хранением данных и обеспечивает наличие в репозитории только актуальной информации.

Использование команды list-projects

Команда list-projects в CLI digna используется для отображения списка всех доступных проектов в системе digna.

Использование команды

dignacli list-projects

Эта команда особенно полезна администраторам и пользователям, управляющим несколькими проектами, предоставляя быстрый обзор доступных проектов в репозитории digna.

Использование команды list-ds

Команда list-ds в CLI digna используется для отображения списка всех доступных источников данных в указанном проекте. Эта команда полезна для понимания имеющихся данных для анализа и управления в системе digna.

Использование команды

dignacli list-ds <PROJECT_NAME>

Аргументы

  • PROJECT_NAME: Имя проекта, для которого перечисляются источники данных (обязательно).

Пример

Чтобы перечислить все источники данных в проекте с именем ProjectA:

dignacli list-ds ProjectA

Эта команда дает пользователям обзор доступных в проекте источников данных, помогая навигации и управлению ландшафтом данных.

Использование команды inspect

Команда inspect в CLI digna используется для создания профилей, предсказаний и данных системы светофора для одного или нескольких источников данных в указанном проекте. Эта команда помогает анализировать и мониторить данные за определённый период.

Использование команды

dignacli inspect <PROJECT_NAME> <FROM_DATE> <TO_DATE> [options]

Аргументы

  • PROJECT_NAME: Имя проекта, для которого будет выполняться инспекция данных (обязательно). Использование ключевого слова all-projects в этом аргументе инструктирует digna пройтись по всем существующим проектам и применить команду.
  • FROM_DATE: Дата и время начала инспекции данных. Допустимые форматы включают %Y-%m-%d, %Y-%m-%dT%H:%M:%S или %Y-%m-%d %H:%M:%S (обязательно).
  • TO_DATE: Дата и время окончания инспекции данных, в тех же форматах, что и FROM_DATE (обязательно).

Опции

  • --table-name, -tn: Ограничивает инспекцию конкретной таблицей внутри проекта.
  • --table-filter, -tf: Фильтрует, инспектируя только таблицы, содержащие указанный подстроковый фрагмент в именах.
  • --do-profile: Запускает пересбор профилей. По умолчанию — do-profile.
  • --no-do-profile: Предотвращает пересбор профилей.
  • --do-prediction: Запускает пересчёт предсказаний. По умолчанию — do-prediction.
  • --no-do-prediction: Предотвращает пересчёт предсказаний.
  • --do-alert-status: Запускает пересчёт статусов оповещений. По умолчанию — do-alert-status.
  • --no-do-alert-status: Предотвращает пересчёт статусов оповещений.
  • --iterative: Запускает инспекцию периода по дням (итерациями). По умолчанию — iterative.
  • --no-iterative: Выполняет инспекцию всего периода за один раз.
  • --enable_notification, -en: Включает отправку уведомлений в случае оповещений.
  • --timing, -tm: Отображает продолжительность процесса инспекции после её завершения.

Пример

Чтобы инспектировать данные для проекта ProjectA с 1 января 2024 по 31 января 2024:

dignacli inspect ProjectA 2024-01-01 2024-01-31

Чтобы инспектировать только конкретную таблицу и принудительно пересчитать предсказания:

dignacli inspect ProjectA 2024-01-01 2024-01-31 --table-name Table1 --force-prediction
Эта команда полезна для генерации обновлённых профилей и предсказаний, мониторинга целостности данных и управления системой оповещений в рамках заданного временного диапазона проекта.

Использование команды tls-status

Команда tls-status в CLI digna используется для запроса статуса Traffic Light System (TLS) для конкретной таблицы в проекте на заданную дату. Traffic Light System предоставляет информацию о состоянии и качестве данных, указывая на возможные проблемы или оповещения, требующие внимания.

Использование команды

dignacli tls-status <PROJECT_NAME> <TABLE_NAME> <DATE>

Аргументы

  • PROJECT_NAME: Имя проекта, для которого запрашивается статус TLS (обязательно).
  • TABLE_NAME: Конкретная таблица в проекте, для которой требуется статус TLS (обязательно).
  • DATE: Дата, за которую запрашивается статус TLS, обычно в формате %Y-%m-%d (обязательно).

Пример

Чтобы проверить статус TLS для таблицы UserData в проекте ProjectA на 1 июля 2024 года:

dignacli tls-status ProjectA UserData 2024-07-01

Эта команда помогает пользователям мониторить и поддерживать качество данных, предоставляя понятный и практичный отчёт о состоянии на основе заранее определённых критериев.

Использование команды inspect-async

Команда inspect-async в CLI digna используется для того, чтобы поручить бэкенду асинхронно выполнить инспекцию для одного или нескольких источников данных в заданном проекте. Если project_name установлен как all-projects, инспекция будет выполнена по всем доступным проектам. Команда возвращает идентификатор запроса, который можно использовать для отслеживания прогресса инспекции.

Использование команды

dignacli inspect-async <PROJECT_NAME> <FROM_DATE> <TO_DATE> [options]

Аргументы

  • PROJECT_NAME: Имя проекта, для которого будет выполняться инспекция данных (обязательно). Использование ключевого слова all-projects в этом аргументе инструктирует digna пройтись по всем существующим проектам и применить команду.
  • FROM_DATE: Дата и время начала инспекции данных. Допустимые форматы включают %Y-%m-%d, %Y-%m-%dT%H:%M:%S или %Y-%m-%d %H:%M:%S (обязательно).
  • TO_DATE: Дата и время окончания инспекции данных, в тех же форматах, что и FROM_DATE (обязательно).

Опции

  • --table-name, -tn: Ограничивает инспекцию конкретной таблицей внутри проекта.
  • --table-filter, -tf: Фильтрует, инспектируя только таблицы, содержащие указанный подстроковый фрагмент в именах.

Пример

Чтобы асинхронно инспектировать данные для проекта ProjectA с 1 января 2024 по 31 января 2024:

dignacli inspect-async ProjectA 2024-01-01 2024-01-31

Использование команды inspect-status

Команда inspect-status в CLI digna используется для проверки прогресса асинхронной инспекции по идентификатору запроса.

Использование команды

dignacli inspect-status <REQUEST ID> [options]

Аргументы

  • REQUEST_ID: Идентификатор запроса, возвращённый командой inspect-async.

Опции

  • --report_level, -rl: Устанавливает уровень отчёта: 'task' или 'step' [по умолчанию: task]

Пример

Чтобы проверить прогресс инспекции с идентификатором запроса 12345 на детальном уровне шагов:

dignacli inspect-status 12345 --report-level step

Использование команды export-ds

Команда export-ds в CLI digna используется для создания экспорта источников данных из репозитория digna. По умолчанию будут экспортированы все источники данных из указанного проекта.

Использование команды

dignacli export-ds <PROJECT_NAME> [options]

Аргументы

  • PROJECT_NAME: Имя проекта, из которого будут экспортированы источники данных.

Опции

  • --table_name, -tn: Экспортировать конкретный источник данных из проекта.
  • --exportfile, -ef: Указать имя файла для экспорта.

Пример

Чтобы экспортировать все источники данных из проекта ProjectA:

dignacli export-ds ProjectA

Эта команда экспортирует все источники данных из ProjectA в виде JSON-документа, который можно импортировать в другой проект или в другой репозиторий digna.

Использование команды import-ds

Команда import-ds в CLI digna используется для импорта источников данных в целевой проект и создания отчёта об импорте.

Использование команды

dignacli import-ds <PROJECT_NAME> <EXPORT_FILE> [options]

Аргументы

  • PROJECT_NAME: Имя проекта, в который будут импортированы источники данных.
  • EXPORT_FILE: Имя файла экспорта источников данных, который нужно импортировать.

Опции

  • --output-file, -o: Файл для сохранения отчёта об импорте (если не указан, выводится в терминал в табличном виде).
  • --output-format, -f: Формат для сохранения отчёта об импорте (json, csv).

Пример

Чтобы импортировать все источники данных из файла экспорта my_export.json в ProjectB:

dignacli import-ds ProjectB my_export.json

После импорта команда также покажет отчёт об импортированных и пропущенных объектах. В ProjectB будут импортированы только новые источники данных. Чтобы узнать, какие объекты будут импортированы и пропущены, можно использовать команду plan-import-ds.

Использование команды plan-import-ds

Команда plan-import-ds в CLI digna используется для анализа файла экспорта перед импортом и создания плана импорта (отчёта), показывающего, какие объекты будут импортированы, а какие пропущены.

Использование команды

dignacli plan-import-ds <PROJECT_NAME> <EXPORT_FILE> [options]

Аргументы

  • PROJECT_NAME: Имя проекта, в который объекты будут импортированы в случае выполнения импорта.
  • EXPORT_FILE: Имя файла экспорта источников данных, который будет проанализирован перед импортом.

Опции

  • --output-file, -o: Файл для сохранения отчёта плана импорта (если не указан, печатается в терминал в табличном виде).
  • --output-format, -f: Формат для сохранения отчёта плана импорта (json, csv).

Пример

Чтобы проверить, какие источники данных будут импортированы, а какие — пропущены из файла экспорта my_export.json при импорте в ProjectB:

dignacli plan-import-ds ProjectB my_export.json

Эта команда показывает только план импорта — какие объекты будут импортированы и какие будут пропущены.