NetWorker. Как сделать ответ JSON в командной строке REST API удобочитаемым

Résumé: Ответы интерфейса прикладного программирования (API) командной строки REST представлены в неформатированном формате JSON, что может быть затруднительно для анализа. В этой статье базы знаний представлены методы для форматирования ответа API REST в «удобочитаемые» выходные данные. ...

Cet article concerne Cet article ne concerne pas Cet article n’est associé à aucun produit spécifique. Toutes les versions du produit ne sont pas identifiées dans cet article.

Instructions

Вызовы API REST (Representational State Transfer) NetWorker можно выполнять из командной строки на сервере Linux NetWorker с помощью команды curl . Пример.

curl -k -u USERNAME:'PASSWORD' https://localhost:9090/nwrestapi/v3/global/RESTAPI-ENDPOINT
ПРИМЕЧАНИЕ. Замените USERNAME учетной записью пользователя, используемой для аутентификации в NetWorker. Замените PASSWORD паролем для указанной учетной записи пользователя. Замените RESTAPI-ENDPOINT выполненной функцией REST API. Документацию по API-интерфейсу REST можно найти на сайте: https://developer.dell.com/apis/2378/versions/v3/docs/GettingStarted.md.


Полезные данные отклика на операцию GET представлены в формате JSON. Ответ по умолчанию может быть сложным для анализа, поскольку обычно это одна непрерывная строка. Пример.

nve:~ # curl -k -u Administrator:'!Password1' https://localhost:9090/nwrestapi/v3/global
{"links":[{"href":"https://localhost:9090/nwrestapi/v3/global/alerts","title":"List of alert messages"},{"href":"https://localhost:9090/nwrestapi/v3/global/auditlogconfig","title":"Audit log configuration"},{"href":"https://localhost:9090/nwrestapi/v3/global/auditlogconfigs","title":"Audit log configurations"},{"href":"https://localhost:9090/nwrestapi/v3/global/backups","title":"List of backups"},{"href":"https://localhost:9090/nwrestapi/v3/global/clients","title":"List of clients"},{"href":"https://localhost:9090/nwrestapi/v3/global/cloudboostappliances","title":"List of cloudboost appliances"},{"href":"https://localhost:9090/nwrestapi/v3/global/datadomainsystems","title":"List of data domain systems"},{"href":"https://localhost:9090/nwrestapi/v3/global/dddevicereplication","title":"DD device replication"},{"href":"https://localhost:9090/nwrestapi/v3/global/devices","title":"List of storage devices"},{"href":"https://localhost:9090/nwrestapi/v3/global/directives","title":"List of backup directives"},{"href":"https://localhost:9090/nwrestapi/v3/global/inspect","title":"Inspect remote/local server"},{"href":"https://localhost:9090/nwrestapi/v3/global/jobgroups","title":"List of job groups"},{"href":"https://localhost:9090/nwrestapi/v3/global/jobindications","title":"List of job indications"},{"href":"https://localhost:9090/nwrestapi/v3/global/jobs","title":"List of jobs"},{"href":"https://localhost:9090/nwrestapi/v3/global/jukeboxes","title":"List of jukeboxes"},{"href":"https://localhost:9090/nwrestapi/v3/global/labels","title":"List of volume label templates"},{"href":"https://localhost:9090/nwrestapi/v3/global/licenseconfig","title":"Server license configuration"},{"href":"https://localhost:9090/nwrestapi/v3/global/licenses","title":"List of license templates"},{"href":"https://localhost:9090/nwrestapi/v3/global/lockbox","title":"Lockbox resource"},{"href":"https://localhost:9090/nwrestapi/v3/global/mediaconfig","title":"Server media configuration"},{"href":"https://localhost:9090/nwrestapi/v3/global/mobilestorageunits","title":"Mobile storage units"},{"href":"https://localhost:9090/nwrestapi/v3/global/nasdevices","title":"List of NAS devices"},{"href":"https://localhost:9090/nwrestapi/v3/global/notifications","title":"List of notification settings"},{"href":"https://localhost:9090/nwrestapi/v3/global/nsrcloneconfig","title":"NSR Clone Configuration"},{"href":"https://localhost:9090/nwrestapi/v3/global/pools","title":"List of pools"},{"href":"https://localhost:9090/nwrestapi/v3/global/probes","title":"List of probes"},{"href":"https://localhost:9090/nwrestapi/v3/global/protectiongroups","title":"List of protection groups"},{"href":"https://localhost:9090/nwrestapi/v3/global/protectionpolicies","title":"List of protection policies"},{"href":"https://localhost:9090/nwrestapi/v3/global/recoverapps","title":"List of recovery applications"},{"href":"https://localhost:9090/nwrestapi/v3/global/recovers","title":"List of recover resources"},{"href":"https://localhost:9090/nwrestapi/v3/global/rules","title":"List of rules"},{"href":"https://localhost:9090/nwrestapi/v3/global/schedules","title":"List of schedules"},{"href":"https://localhost:9090/nwrestapi/v3/global/securityconfig","title":"Server security configuration"},{"href":"https://localhost:9090/nwrestapi/v3/global/serverconfig","title":"Server configuration"},{"href":"https://localhost:9090/nwrestapi/v3/global/servermessages","title":"List of server messages"},{"href":"https://localhost:9090/nwrestapi/v3/global/serverstatistics","title":"Server statistics"},{"href":"https://localhost:9090/nwrestapi/v3/global/sessions","title":"List of save/recover sessions"},{"href":"https://localhost:9090/nwrestapi/v3/global/storagenodes","title":"List of storage nodes"},{"href":"https://localhost:9090/nwrestapi/v3/global/tenants","title":"Restricted data zone protection"},{"href":"https://localhost:9090/nwrestapi/v3/global/timepolicies","title":"List of Time Policies"},{"href":"https://localhost:9090/nwrestapi/v3/global/unconfiguredlibraries","title":"List of unconfigured libraries"},{"href":"https://localhost:9090/nwrestapi/v3/global/usergroups","title":"List of user groups"},{"href":"https://localhost:9090/nwrestapi/v3/global/vmware","title":"View of VMware objects"},{"href":"https://localhost:9090/nwrestapi/v3/global/volumes","title":"List of volumes"}]}

Выходные данные JSON не отформатированы, и их может быть трудно проанализировать; Тем не менее, вывод может быть отформатирован в более удобный для чтения формат «красивой печати».

Для систем NetWorker Virtual Edition (NVE) можно добавить python -m json.tool к curl . Пример.

nve:~ # curl -k -u Administrator:'!Password1' https://localhost:9090/nwrestapi/v3/global | python -m json.tool
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  4374    0  4374    0     0   9751      0 --:--:-- --:--:-- --:--:--  9763
{
    "links": [
        {
            "href": "https://localhost:9090/nwrestapi/v3/global/alerts",
            "title": "List of alert messages"
        },
        {
            "href": "https://localhost:9090/nwrestapi/v3/global/auditlogconfig",
            "title": "Audit log configuration"
        },
        {
            "href": "https://localhost:9090/nwrestapi/v3/global/auditlogconfigs",
            "title": "Audit log configurations"
        },
        {
            "href": "https://localhost:9090/nwrestapi/v3/global/backups",
            "title": "List of backups"
        },
        {
            "href": "https://localhost:9090/nwrestapi/v3/global/clients",
            "title": "List of clients"
        },
        ******* Removed for brevity *******
    ]
}

Для других систем Linux этого можно достичь, добавив jq к curl :

[root@nsr ~]# curl -k -u Administrator:'!Password1' https://localhost:9090/nwrestapi/v3/global | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  4258    0  4258    0     0   7253      0 --:--:-- --:--:-- --:--:--  7241
{
  "links": [
    {
      "href": "https://localhost:9090/nwrestapi/v3/global/alerts",
      "title": "List of alert messages"
    },
    {
      "href": "https://localhost:9090/nwrestapi/v3/global/auditlogconfig",
      "title": "Audit log configuration"
    },
    {
      "href": "https://localhost:9090/nwrestapi/v3/global/auditlogconfigs",
      "title": "Audit log configurations"
    },
    {
      "href": "https://localhost:9090/nwrestapi/v3/global/backups",
      "title": "List of backups"
    },
    {
      "href": "https://localhost:9090/nwrestapi/v3/global/clients",
      "title": "List of clients"
    },
    ******* Removed for brevity *******
  ]
}
ПРИМЕЧАНИЕ. jq не входит в состав NetWorker, это сторонняя утилита, которую можно установить в системе. Проконсультируйтесь с системным администратором по установке jq или другие утилиты форматирования JSON по желанию.

На хостах Windows для этого вряд ли будет использоваться командная строка. Обычно это делается с помощью PowerShell, для чего требуются дополнительные функции, часто включающие сценарии. Большинство систем на базе Windows используют пользовательский интерфейс, например Post-Man, для форматирования запросов GET API-интерфейса REST.

Informations supplémentaires

Produits concernés

NetWorker

Produits

NetWorker Family
Propriétés de l’article
Numéro d’article: 000356014
Type d’article: How To
Dernière modification: 12 Aug 2025
Version:  1
Trouvez des réponses à vos questions auprès d’autres utilisateurs Dell
Services de support
Vérifiez si votre appareil est couvert par les services de support.