Перейти до змісту

digna CLI Reference 2025.04

2025-04-01

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


Основи CLI


Використання опції --help

Опція --help надає інформацію про доступні команди та їх використання. Існує два основні способи використання цієї опції:

  1. Відображення загальної допомоги:

    Використовуйте --help одразу після ключового слова dignacl
    ```bash 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 key, що є необхідним для захисту паролів, збережених у репозиторії digna.

Використання команди

dignacli generate-key

Управління даними

Використання команди clean-up

Команда clean-up у CLI digna призначена для видалення профілів, прогнозів та даних системи Traffic Light System для одного або кількох джерел даних у межах вказаного проекту. Ця команда важлива для управління життєвим циклом даних, допомагаючи підтримувати впорядковане та ефективне середовище даних шляхом очищення застарілих або непотрібних даних.

Використання команди

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 використовується для створення профілів, прогнозів та даних системи Traffic Light System для одного або кількох джерел даних у межах вказаного проекту. Ця команда допомагає аналізувати й моніторити дані за визначений період.

Використання команди

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, інспекція буде виконана для всіх доступних проектів. Команда повертає request id, який можна використати для відстеження прогресу інспекції.

Використання команди

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 використовується для перевірки прогресу асинхронної інспекції за ID запиту.

Використання команди

dignacli inspect-status <REQUEST ID> [options]

Аргументи

  • REQUEST_ID: ID запиту, що був повернений командою inspect-async

Опції

  • --report_level, -rl: Встановлює рівень звіту: 'task' або 'step' [за замовчуванням: task]

Приклад

Щоб перевірити прогрес інспекції з ID запиту 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

Ця команда покаже лише план імпорту об’єктів, які будуть імпортовані та пропущені.