NetWorker:REST APIのトラブルシューティングとトリアージ ガイド

概要: このKBでは、RESTAPI関連の問題の基本的なトラブルシューティングの概要について説明します。

この記事は次に適用されます: この記事は次には適用されません: この記事は、特定の製品に関連付けられていません。 すべての製品パージョンがこの記事に記載されているわけではありません。

手順

「NetWorker REST APIトリアージ ガイド」

YouTubeで視聴する

その他の情報

はじめに

Representational State Transfer (REST)アプリケーション プログラミング インターフェイス(API)は、NetWorkerデータ保護サービスへのプログラムによるアクセスを提供します。NetWorkerユーザーはREST APIを使用して、NetWorker操作を自動化するクライアント アプリケーションを構築できます。NetWorker REST APIは、NetWorkerサーバーのインストールの一環として、NetWorker認証サービスと同じApache tomcatコンテナにインストールされます。認証は、NetWorker Management Consoleで使用されているものと同じ認証情報を使用して行われます。  

REST APIを使用すると、Uniform Resource Identifier(URI)アドレスで識別されるリソースとのやり取りが可能になります。HTTP 動詞 (HEAD、GET、PUT、POST、DELETE) を使用して、ステートレスな方法で Uniform Resource Identifier (URI) と対話します。サーバーにはクライアント状態が含まれておらず、各メッセージは自己記述的です

このドキュメントでは、ユーザー作成のREST API呼び出しを使用したNetWorkerリソースとのやり取りについて説明します。バックエンドNetWorker操作で使用されるREST API呼び出しと混同しないでください。
 

NetWorkerへの接続:

コマンドを実行してNetWorkerに接続するために使用できるREST APIクライアント テクノロジーはいくつかあります。含む curl commands (Linux)、PowerShell curl.exe (Windows)、REST APIクライアント ブラウザー拡張機能。 

メモ: NetWorkerサポートでは、サード パーティー製APIユーティリティーまたはAPIスクリプト作成/自動化のサポートは提供されません。また、NetWorkerサポートでは、REST APIソリューションも提供されません。REST APIの使用方法に関するガイダンスについては、『 NetWorker REST API開発者ガイド』を参照してください。サポートは、REST APIに関する一般的な質問に答えたり、NetWorker REST APIのエンドポイントまたは機能で特定の問題が特定された場合にサポートしたりするために利用できます。すべての評価とテストは、OSレベルのコマンドを使用した直接接続から行われます。

接続には次の3つのヘッダーが必要です。   

  • Content-Type: application/json
  • 受け入れる: application/json
  • 認証:Basic (Base 64 エンコードのユーザー名とパスワード付き)

単一のNetWorker AUTHCサーバーを介して複数のNetWorkerデータゾーンが認証されている環境では、追加のヘッダーが必要です。

  • X-NW-AUTHC-BASE-URL:AUTHC_HOSTNAME_OR_IP:AUTHC_PORT
デフォルトのAUTHCポートはポート9090です。このヘッダーの使用方法の詳細については、以下を参照してください。RESTAPI:RESTAPIリクエストを処理するときにリモートAUTHCサーバーを使用するにはどうすればよいですか?

NetWorker REST APIは、次のベースURIで公開されます。

https://[nw-server-hostname]:9090/nwrestapi/v3

APIにはさまざまなバージョンがあります。REST APIが最初に実装されてから、機能拡張がロールアウトされています。これらのエンドポイントに対する変更の詳細については、https://developer.dell.com/apis/2378/versions/v3/docs/GettingStarted.md を参照してください。

完全なjsonスキーマは、次の場所にあります。

https://[nw-server-hostname]:9090/nwrestapi/v3/schemas/swagger.json

REST API応答コード:
 
成功応答コード
成功コード HTTP メソッドに適用 応答本文の内容 説明
200 取得 リソースの表現 [OK]をクリックします。このHTTP状態になる操作は、ペイロード内のリソース表現を伝送します。
201 POST 空の応答 作成。このステータスは、新しいリソースまたは目的のジョブが作成され、関連する URL が応答のロケーション ヘッダーからアクセスできることを示します。
202 POST 回答の詳細 受け入れ られる。これは、APIリクエストが受け入れられたことを示します。ペイロードは、追跡リソース インスタンスへの URL が応答の location ヘッダーからアクセスできることを示します。
204 PUTまたはDELETE 空の応答 コンテンツがありません。状態は、実行された操作が成功したことを示します。ただし、追加の詳細は提供されません。

 

エラー応答コード
エラー コード 説明
400 不正なリクエスト
401 無効な資格情報
403 権限不足
404 リソースが見つかりません
405 メソッドは許可されていません
406 無効なロケールが指定されています。
500 内部サーバー エラー


REST API関数

サポートされている HTTP メソッド
HTTP メソッド 動作 説明
取得 読み取り リソース表現を取得します。
POST 作成 新しいリソースを作成します。
置く 更新 既存のリソースを更新します。
DELETE 削除 既存のリソースを削除します。


いくつかの例:

GET:

すべてのクライアントを一覧表示します。                                            

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients

クライアントは1つのみで、3つのフィールド(ホスト名、saveSets、protectionGroups)のみを表示      

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients?fl=hostname,saveSets,protectionGroups&q=hostname:nwserver121

1つのクライアントが含まれる保護グループを一覧表示します。     

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients?fl=protectionGroups&q=hostname:nwserver121

現在のアラートを表示します。                                     

https://[nw-server-hostname]:9090/nwrestapi/v3/global/alerts

最近失敗したジョブを表示します。                               

https://[nw-server-hostname]:9090/nwrestapi/v3/global/jobs?q=completionStatus:"Failed"&fl=clientHostname,startTime,name,message

1つのポリシー(この例では WinFS )のワークフローを一覧表示します。                   

https://[nw-server-hostname]:9090/nwrestapi/v3/global/protectionpolicies/WinFS/workflows

1個のセーブセット インスタンスのみのプロパティを一覧表示します(クライアント ホスト名とセーブセットで定義)。      

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients?q=hostname:vm-lego-231 and saveSets:"/etc"

投稿:

ワークフロー アクションを開始します。                                 

https://[nw-server-hostname]:9090/nwrestapi/v3/global/protectionpolicies/Angela/workflows/WinFS/op/backup
                                                      JSON Body: 
                                                      {
                                                       }

新しいクライアント インスタンスを作成します(リストされている4つのプロパティを除くすべてのプロパティにデフォルト値を使用)。           

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients  
                                                     JSON Body 
                                                     {    
            "hostname": "vm-lego-231",
            "backupType": "Filesystem",
            "saveSets": [ "/etc" ],
            "protectionGroups" : [ "LinuxFS" ]
                                                          
メモ: サポートされているすべてのREST APIエンドポイントと使用例は、次の場所で提供されています。NetWorker REST APIリファレンス ガイド

コマンド ラインの例:

Linuxの場合

搭載されているシステムの場合 python の場合:

curl -k -u Administrator:'ADMINISTRATOR_PASSWORD' https://NETWORKER_SERVER_ADDRESS:9090/nwrestapi/v3/global/ENDPOINT | python -m json.tool
搭載されているシステムの場合 jq の場合:
curl -k -u Administrator:'ADMINISTRATOR_PASSWORD' https://NETWORKER_SERVER_ADDRESS:9090/nwrestapi/v3/global/ENDPOINT | jq
Example:
[root@nsr ~]# curl -k -u Administrator https://nsr.amer.lan:9090/nwrestapi/v3/global/devices/ddve01.amer.lan_VMBackupDevice01 | jq
Enter host password for user 'Administrator':
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2820    0  2820    0     0  72307      0 --:--:-- --:--:-- --:--:-- 72307
{
  "accessWeight": 1,
  "accesses": "66",
  "activeSessions": [],
  "autoMediaManagement": false,
  "autoRecoverDtf": "None",
  "cdi": "NotUsed",
  "cleaningRequired": false,
  "consecutiveErrors": "0",
  "currentNSRMMDCount": "1",
  "dataDomainFibreChannel": false,
  "dataDomainRetentionLockMode": "None",
  "deviceAccessInfo": "ddve01.amer.lan:/nsr/VMBackupDevice01",
  "deviceBlockSize": "HandlerDefault",
  "dltWormCapable": false,
  "idleDeviceTimeout": 0,
  "jukeboxDevice": "No",
  "links": [
    {
      "href": "https://nsr.amer.lan:9090/nwrestapi/v3/global/devices/ddve01.amer.lan_VMBackupDevice01/opstatus",
      "title": "Volume operation status"
    },
    {
      "href": "https://nsr.amer.lan:9090/nwrestapi/v3/global/devices/ddve01.amer.lan_VMBackupDevice01/op/label",
      "title": "Label volume"
    },
    {
      "href": "https://nsr.amer.lan:9090/nwrestapi/v3/global/devices/ddve01.amer.lan_VMBackupDevice01/op/mount",
      "title": "Mount volume"
    },
    {
      "href": "https://nsr.amer.lan:9090/nwrestapi/v3/global/devices/ddve01.amer.lan_VMBackupDevice01/op/unmount",
      "title": "Unmount volume"
    },
    {
      "href": "https://nsr.amer.lan:9090/nwrestapi/v3/global/devices/ddve01.amer.lan_VMBackupDevice01/op/verifylabel",
      "title": "Verify volume label"
    },
    {
      "href": "https://nsr.amer.lan:9090/nwrestapi/v3/global/devices/ddve01.amer.lan_VMBackupDevice01/op/erase",
      "title": "Erase the device"
    },
    {
      "href": "https://nsr.amer.lan:9090/nwrestapi/v3/global/volumes/4267924096",
      "title": "Volume"
    }
  ],
  "longVolumeId": "703cdc60-00000005-fe635a80-66635a80-00045000-592bbe56",
  "maxConsecutiveErrors": 20,
  "maxNsrmmdCount": 4,
  "maxSession": 60,
  "mediaFamily": "Disk",
  "mediaType": "Data Domain",
  "message": "mounted Data Domain disk VMBackupPool.001",
  "mountedVolume": "VMBackupPool.001",
  "name": "ddve01.amer.lan_VMBackupDevice01",
  "ndmp": false,
  "operationParameters": [],
  "password": "*******",
  "pathId": "53f9269d-00000010-e2f994bd-66635a7e-00035000-592bbe56",
  "readOnly": false,
  "remoteUser": "ddboost",
  "reserveRelease": "None",
  "resourceId": {
    "id": "178.0.90.20.0.0.0.0.196.80.99.102.192.168.9.150",
    "sequence": 256
  },
  "saveLockout": 0,
  "saveMountTimeout": 30,
  "secureMultiTenancy": false,
  "sharedDevices": "Done",
  "statistics": [
    "elapsed = 17310",
    "errors = 0",
    "last rate = 0",
    "max clients = 0",
    "file marks = 0",
    "rewinds = 0",
    "files skipped = 0",
    "records skipped = 0",
    "current file = 0",
    "current record = 0",
    "seek files = 0",
    "seek records = 0",
    "estimated kb = 0",
    "amount kb = 0",
    "file amount kb = 0",
    "sessions = 0"
  ],
  "status": "Enabled",
  "suspectedDevice": false,
  "tapeAlertsCritical": [],
  "tapeAlertsInformation": [],
  "tapeAlertsWarning": [],
  "targetSession": 20,
  "unlabeledVolumeLoaded": false,
  "verifyLabelOnEject": false,
  "volumeBlockSize": "256 KB",
  "volumeCurrentCapacity": "0 KB",
  "volumeErrorNumber": "0",
  "volumeExpiration": "Sun Jun  7 15:07:44 2026",
  "volumeId": "4267924096",
  "volumeLabel": "VMBackupPool.001",
  "volumePool": "VMBackupPool",
  "warnOnSuspectVolumesInPercent": 80,
  "wormCapable": false,
  "wormCartridgePresent": false,
  "writeEnabled": true
}
[root@nsr ~]#

Windows (PowerShell)の場合:

curl.exe -k -u Administrator:'ADMISTRATOR_PASSWORD' "https://NETWORKER_SERVER_ADDRESS:9090/nwrestapi/v3/global/ENDPOINT" | ConvertFrom-Json | ConvertTo-Json -Depth 50

Example:

PS C:\Users\Administrator.NETWORKER> curl.exe -k -u Administrator:'!Password1' "https://win-srvr02.networker.lan:9090/nwrestapi/v3/global/devices/dd3300-ff28_Backup" | ConvertFrom-Json | ConvertTo-Json -Depth 50
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2824    0  2824    0     0  20311      0 --:--:-- --:--:-- --:--:-- 21074
{
    "accessWeight":  1,
    "accesses":  "45",
    "activeSessions":  [

                       ],
    "autoMediaManagement":  false,
    "autoRecoverDtf":  "None",
    "cdi":  "NotUsed",
    "cleaningRequired":  false,
    "consecutiveErrors":  "0",
    "currentNSRMMDCount":  "1",
    "dataDomainFibreChannel":  false,
    "dataDomainRetentionLockMode":  "None",
    "deviceAccessInfo":  "dd3300-ff28:/win-srvr02/Backup",
    "deviceBlockSize":  "HandlerDefault",
    "dltWormCapable":  false,
    "idleDeviceTimeout":  0,
    "jukeboxDevice":  "No",
    "links":  [
                  {
                      "href":  "https://win-srvr02.networker.lan:9090/nwrestapi/v3/global/devices/dd3300-ff28_Backup/opstatus",
                      "title":  "Volume operation status"
                  },
                  {
                      "href":  "https://win-srvr02.networker.lan:9090/nwrestapi/v3/global/devices/dd3300-ff28_Backup/op/label",
                      "title":  "Label volume"
                  },
                  {
                      "href":  "https://win-srvr02.networker.lan:9090/nwrestapi/v3/global/devices/dd3300-ff28_Backup/op/mount",
                      "title":  "Mount volume"
                  },
                  {
                      "href":  "https://win-srvr02.networker.lan:9090/nwrestapi/v3/global/devices/dd3300-ff28_Backup/op/unmount",
                      "title":  "Unmount volume"
                  },
                  {
                      "href":  "https://win-srvr02.networker.lan:9090/nwrestapi/v3/global/devices/dd3300-ff28_Backup/op/verifylabel",
                      "title":  "Verify volume label"
                  },
                  {
                      "href":  "https://win-srvr02.networker.lan:9090/nwrestapi/v3/global/devices/dd3300-ff28_Backup/op/erase",
                      "title":  "Erase the device"
                  },
                  {
                      "href":  "https://win-srvr02.networker.lan:9090/nwrestapi/v3/global/volumes/3963713",
                      "title":  "Volume"
                  }
              ],
    "longVolumeId":  "0aea479c-00000005-003c7b41-693c7b41-00025000-e6b5bb56",
    "maxConsecutiveErrors":  20,
    "maxNsrmmdCount":  4,
    "maxSession":  60,
    "mediaFamily":  "Disk",
    "mediaType":  "Data Domain",
    "message":  "writing, done",
    "mountedVolume":  "win_srvr02.networker.lan.dddefault.001",
    "name":  "dd3300-ff28_Backup",
    "ndmp":  false,
    "operationParameters":  [

                            ],
    "password":  "*******",
    "pathId":  "a30a7858-00000010-5ded760e-693c7b41-00015000-e6b5bb56",
    "readOnly":  false,
    "remoteUser":  "loudekboost",
    "reserveRelease":  "None",
    "resourceId":  {
                       "id":  "176.0.164.7.0.0.0.0.69.121.60.105.192.168.0.22",
                       "sequence":  100
                   },
    "saveLockout":  0,
    "saveMountTimeout":  30,
    "secureMultiTenancy":  false,
    "sharedDevices":  "Done",
    "statistics":  [
                       "elapsed = 228514",
                       "errors = 0",
                       "last rate = 0",
                       "max clients = 0",
                       "file marks = 0",
                       "rewinds = 0",
                       "files skipped = 0",
                       "records skipped = 0",
                       "current file = 0",
                       "current record = 0",
                       "seek files = 0",
                       "seek records = 0",
                       "estimated kb = 0",
                       "amount kb = 0",
                       "file amount kb = 52206",
                       "sessions = 0"
                   ],
    "status":  "Enabled",
    "suspectedDevice":  false,
    "tapeAlertsCritical":  [

                           ],
    "tapeAlertsInformation":  [

                              ],
    "tapeAlertsWarning":  [

                          ],
    "targetSession":  20,
    "unlabeledVolumeLoaded":  false,
    "verifyLabelOnEject":  false,
    "volumeBlockSize":  "256 KB",
    "volumeCurrentCapacity":  "0 KB",
    "volumeErrorNumber":  "0",
    "volumeExpiration":  "Sun Dec 12 15:29:53 2027",
    "volumeId":  "3963713",
    "volumeLabel":  "win_srvr02.networker.lan.dddefault.001",
    "volumePool":  "Data Domain Default",
    "warnOnSuspectVolumesInPercent":  80,
    "wormCapable":  false,
    "wormCartridgePresent":  false,
    "writeEnabled":  true
}

サポートに必要な情報


環境:

  • NetWorkerサーバ名
  • NetWorkerのバージョンとビルド番号
  • NetWorkerサーバー ホストのオペレーティング システムのタイプとバージョン
Linuxの場合
hostname
strings /usr/sbin/nsrd | grep -i "(#)"
cat /etc/*release
uname -a

Windowsの場合:

nsrwatch
nsrwatchからのNetWorkerサーバーの詳細

問題の詳細:

  • 実行されているREST API操作(GET、POST、PUT、DELETE)、使用されているURI、JSON本文の内容(該当する場合)を説明します。 
  • REST API応答コードとエラー メッセージが表示される。
  • REST APIクライアントとNetWorker間の最初の接続と許可は成功しましたか?

ログ収集:

  • NetWorkerサーバーからレンダリングされたdaemon.rawログ ファイル:
  • NetWorkerサーバーからのREST APIログ:  /nsr/logs/restapi (Linux)または EMC NetWorker\nsr\logs\restapi (Windowsの場合)
  • 認証の問題については、標準のNetWorker認証ログインを参照してください /nsr/authc/logs (Linux)または ..\EMC NetWorker\nsr\authc-server\tomcat\logs (Windowsの場合)

デバッグ:

より複雑な問題では、REST APIデバッグが必要になる場合があります。デバッグは、次のように有効にすることができます。NetWorker:REST APIデバッグを有効にする方法」を参照してください。


パフォーマンス:

REST APIのパフォーマンス関連の問題を評価する前に、すべてのREST API機能または特定の機能で問題が発生しているかどうかを判断することが重要です。たとえば、クライアント、ジョブ、ボリュームなどのグローバル エンドポイントに対するGETリクエストは、大量のデータを取得する可能性があります。このようなタイプの要求は、システム リソースの使用率が高くなり、タイムアウトになる可能性があります。
見る:NetWorker REST API: HTTP GETリクエストが断続的にタイムアウトする

大規模なグローバルエンドポイントでパフォーマンスの問題が発生した場合は、「クエリリストフィルタ」(q)または「フィールドリストフィルター」(fl)を使用して、返されるデータを必要な特定の情報に減らします。上記のKBでは、これらの設定の詳細と追加情報については、『REST API Developer Guide』を参照してください。デル・テクノロジーズ開発者 

問題がREST APIのパフォーマンスに関連している場合は、次のオプションを使用して、APIコールで使用されるnsrtomc+プロセスのリソース消費量を追跡できます。

Linux:  

top -b | awk '/nsrtomc+/ {print strftime("%Y-%m-%d-%H:%M:%S", systime()), $0}'

この出力は標準の上位出力を示していますが、タイムスタンプは人間が判読できます。これを使用して、プロセスによるCPUとメモリーの消費量と、REST呼び出しが行われたときに特定の状態に保持された時間を確認できます。これをrestapi.logログやAUTHCログと比較して、どの呼び出しがどのくらいの頻度で行われたかを確認できます。
 

Windowsの場合: 

Windows Serverの場合は、「Performance Monitor:

  1. 管理者としてパフォーマンス モニターを開きます。
  2. 左側のペインで、監視ツールを展開し、パフォーマンス モニターを選択します。
  3. 右側のペイン内を右クリックし、[すべてのカウンターを削除] を選択します。
  4. 右側のペイン内を右クリックし、[カウンターの追加] を選択します。
  5. [Available Counters]で[Memory]を展開し、[% Commit Bytes]を選択して[Add]をクリックします。
  6. [Memory]で Available Bytesを選択し、Addをクリックします。
  7. [Available Counters]で[Process]を展開し、[% Processor Time]を選択して、[Instances of Selected object]で最初のJavaエントリーを選択し、[Add]をクリックします。
  8. [Available Counters]で[Processor Information]を展開し、[% Processor Utility]を選択して[Add]をクリックします。
  9. 右側のペインに追加されたカウンターには、次のように表示されます。

[Procmon counters]ウィンドウ

  1. [OK]をクリックします。[パフォーマンス モニター] を右クリックし、[新規作成] - [Data Collector セット>] をクリックします。
  2. 名前を入力します(例: RESTAPI_MONの詳細を確認してください。
  3. [場所]画面で、[次へ]をクリックします 代替出力場所を指定する場合は除きます。
  4. 保存して閉じるを選択し 完了をクリックします。
  5. 左側のペインのデータ コレクター セット->ユーザー定義の下で、 RESTAPI_MON propertiesを選択し、ログ形式にComma Separateを選択しOkをクリックします。

Procmon データ コレクター

  1. 左側のペインの [データ コレクター セット - >ユーザー定義]で、RESTAPI_MONデータ コレクター セットを選択し、[スタート]([再生]ボタン)をクリックします
  2. デフォルトの出力場所が使用されていた場合は、.csvファイルが C:\PerfLogs\Admin\RESTAPI_MONの詳細を確認してください。
  3. 問題が発生し、出力ファイルに記録されたら、[データ コレクター セット - ユーザー定義]の下にある[停止]をクリックして、監視を停止できます。

対象製品

NetWorker Series

製品

NetWorker Series
文書のプロパティ
文書番号: 000014298
文書の種類: How To
最終更新: 22 1月 2026
バージョン:  7
質問に対する他のDellユーザーからの回答を見つける
サポート サービス
お使いのデバイスがサポート サービスの対象かどうかを確認してください。