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

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

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this 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.

Additional Information

Affected Products

NetWorker

Products

NetWorker Family
Article Properties
Article Number: 000356014
Article Type: How To
Last Modified: 12 Aug 2025
Version:  1
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.