Go to main content

Oracle® ZFS Storage Appliance RESTful API ガイド、Release OS8.8.x

印刷ビューの終了

更新: 2021 年 8 月
 
 

Analytics のデータセット

Analytics のデータセットでは、次のプロパティーを使用します。suspended を除くすべてのプロパティーは変更できません。

プロパティー
説明
name
このデータセットの基になる統計の名前
grouping
この統計が属するグループ
explanation
基になる統計の説明
incore
コア中のデータセットデータのバイト数
size
ディスク上のデータセットデータのバイト数
suspended
データセットが現在一時停止中かどうかを示すブール値
activity
保留中のデータセットアクティビティーフラグ

使用可能なデータセット:

  • ad.avglatency

  • ad.avglatency[op]

  • ad.avglatency[result]

  • ad.binds

  • ad.binds[hostname]

  • ad.binds[result]

  • ad.ops

  • ad.ops[op]

  • ad.ops[result]

  • arc.accesses[hit/miss]

  • arc.l2_accesses[hit/miss]

  • arc.l2_size

  • arc.size

  • arc.size[component]

  • cpu.utilization

  • cpu.utilization[mode]

  • dnlc.accesses[hit/miss]

  • fc.bytes

  • fc.ops

  • ftp.kilobytes

  • http.reqs

  • io.bytes

  • io.bytes[op]

  • io.disks[utilization=95][disk]

  • io.ops

  • io.ops[disk]

  • io.ops[op]

  • iscsi.bytes

  • iscsi.ops

  • metacap.bytesused

  • metacap.percentused

  • ndmp.diskkb

  • nfs2.ops

  • nfs2.ops[op]

  • nfs3.ops

  • nfs3.ops[op]

  • nfs4.ops

  • nfs4.ops[op]

  • nfs4-1.ops

  • nfs4-1.bytes

  • nic.kilobytes

  • nic.kilobytes[device]

  • nic.kilobytes[direction]

  • sftp.kilobytes

  • smb.ops

  • smb.ops[op]

データセットの一覧表示

構成済みのすべての分析データセットを一覧表示します。

リクエストの例:

GET /api/analytics/v1/datasets HTTP/1.1
Authorization: Basic Tm8gcGVla2luZyE=
Host: zfs-storage.example.com:215
Accept: application/json

結果例:

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 237
X-Zfssa-Analytics-Api: 1.0

{
    "datasets": [{
        "dataset": "dataset-000",
        "href": "/api/analytics/v1/datasets/arc.accesses[hit/miss]",
        "name": "arc.accesses[hit/miss]"
    }, {
        "dataset": "dataset-001",
        "href": "/api/analytics/v1/datasets/arc.l2_accesses[hit/miss]",
        "name": "arc.l2_accesses[hit/miss]",
    }, {
        "dataset": "dataset-002",
        "href": "/api/analytics/v1/datasets/arc.l2_size",
        "name": "arc.l2_size",
    }, {
        "dataset": "dataset-003",
        "href": "/api/analytics/v1/datasets/arc.size",
        "name": "arc.size",
    }, {
        "dataset": "dataset-004",
        "href": "/api/analytics/v1/datasets/arc.size[component]",
        "name": "arc.size[component]",
    }, {
        ...
    }]
}

データセットの取得

指定されたデータセットからプロパティーを取得します。

リクエストの例:

GET /api/analytics/v1/datasets/nfs4.ops HTTP/1.1
Authorization: Basic Tm8gcGVla2luZyE=
Host: zfs-storage.example.com:215
Accept: application/json

結果例:

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 237
X-Zfssa-Analytics-Api: 1.0

{
    "dataset": {
        "activity": "none",
        "dataset": "dataset-030",
        "explanation": "NFSv4 operations per second",
        "grouping": "Protocol",
        "href": "/api/analytics/v1/datasets/nfs4.ops",
        "incore": 296128,
        "name": "nfs4.ops",
        "size": 53211540,
        "suspended": false
    }
}

データセットの作成

新しいデータセットを作成します。

リクエストの例:

POST /api/analytics/v1/datasets HTTP/1.1
X-Auth-User: root
X-Auth-Key: password
Content-Type: application/json
Content-Length: 26

{"statistic": "test.sine"}

結果例:

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 200
Location: /api/analytics/v1/datasets/test.sine

{
    "dataset":{
        "href": "/api/analytics/v1/datasets",
        "name": "test.sine",
        "grouping": "Test",
        "explanation": "sine per second",
        "incore": 34752,
        "size": 31912,
        "suspended": false,
        "activity": "none"
    }
}

データセットの変更

データセットの変更コマンドは、単一データセットのデータ収集を一時停止または再開するために使用します。

一時停止リクエストの例:

POST /api/analytics/v1/datasets/nfs4.ops

{"suspended":true}

再開リクエストの例:

POST /api/analytics/v1/datasets/nfs4.ops
        {"suspended":false}

結果例:

HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Length: 228
X-Zfssa-Analytics-Api: 1.0

{
    "dataset" {
        ...
        "suspended": false
    }
}

データセットの破棄

データセットを破棄します。

リクエストの例:

DELETE /api/analytics/v1/datasets/test.sine HTTP/1.1

結果例:

HTTP/1.1 204 No Content
X-Zfssa-Analytics-Api: 1.0

データセットの保存

データセットを保存します。

リクエストの例:

PUT /api/analytics/v1/datasets/nfs4.ops/data

結果例:

HTTP/1.1 202 Accepted

データセットデータの除去

次の表に、データセットの除去で使用される問合せプロパティーを示します。

パラメータ
説明
granularity
除去の粒度。secondminute、または hour という粒度値で、データセット内のデータを除去できます。
endtime
指定された endtime の前に収集されたデータを除去します。この時間値の形式については、問合せパラメータ: start を参照してください。

リクエストの例:

次の例では、nfs4.ops データセット内のすべての秒単位、分単位、および時間単位のデータを削除します。毎日、毎週、毎月、または毎年収集されたデータは、データセットに残ります。

DELETE /api/analytics/v1/datasets/nfs4.ops/data?granularity=hour

結果例:

HTTP/1.1 204 No Content

リクエストの例:

次の例では、指定された endtime より前に収集された nfs4.ops データセット内のすべての秒単位、分単位、および時間単位のデータを削除します。

DELETE /api/analytics/v1/datasets/nfs4.ops/data?granularity=hour&endtime=20130910T00:00:00

データセットデータの取得

アクティブな分析データセットからデータを返します。秒単位と粗粒度の両方のデータ取得がサポートされています。

次の表に、データセットデータを取得するための時間ベースの問合せパラメータを示します。

パラメータ
説明
start
サンプルデータの収集を開始する時間、またはデータの収集を開始するサンプル索引。start 時間値は、特定の時間にすることも、キーワード now にすることもできます。特定の時間値の形式については、問合せパラメータ: start を参照してください。デフォルトの start の時刻は、現在の時刻から seconds の値を引いたものです。
seconds
サンプルデータを収集する秒数。デフォルト値は 1 です。span および granularity パラメータが指定された場合、seconds パラメータは無視されます。
span
サンプルデータを収集する期間 (minutehourdayweekmonth、または year)。
granularity
指定された期間内での粒度 (minutehourdayweekmonth、または year)。その粒度からデータポイントの平均が示されます。

開始時間は未来にすることができません。データを収集する秒数が現在の時間を過ぎてしまう場合、サーバーはデータを返す前に各サンプルを待機します。

粒度データを取得するには、パラメータ spaninterval の組み合わせを使用します。spangranularity が使用された場合、seconds パラメータは無視されます。span または granularity が正しく入力されない場合、そのリクエストは無視され、代わりに seconds パラメータが使用されます。不適切な、つまりサポートされないリクエストを入力した場合、「Input span and granularity are not supported.」というエラーメッセージが表示されます。

span および granularity パラメータは、次の方法で組み合わせることができます。

  • spanminute の場合、granularity には minute のみを指定できます。

  • spanhour の場合、granularity には minute または hour を指定できます。

  • spanday の場合、granularity には minutehour、または day を指定できます。

  • spanweek の場合、granularity には hourday、または week を指定できます。

  • spanmonth の場合、granularity には dayweek、または month を指定できます。

  • spanyear の場合、granularity には weekmonth、または year を指定できます。

次の表に、返されるデータセットデータのプロパティーを示します。

プロパティー
説明
data
サンプルデータの配列
sample
サンプルデータの索引番号
startTime
sample が返された時間
min
指定された粒度内での 1 秒あたりの最小値
max
指定された粒度内での 1 秒あたりの最大値

2 秒分のライブデータを収集するリクエストの例:

GET /api/analytics/v1/datasets/io.ops[op]/data?start=now&seconds=2 HTTP/1.1
Authorization: Basic Tm8gcGVla2luZyE=
Host: zfs-storage.example.com:215
Accept: text/x-yaml

結果例:

HTTP/1.1 200 OK
Content-Type: text/x-yaml
X-Zfssa-Analytics-Api: 1.0
Transfer-Encoding: chunked

{
  "data": [
    {
      "sample": 457642682,
      "data": {
        "data": [
          {
            "key": "write",
            "value": 199
          }
        ],
        "value": 199
      },
      "startTime": "20200818T18:43:47",
      "samples": 457642683
    },
    {
      "sample": 457642683,
      "data": {
        "data": [
          {
            "key": "write",
            "value": 289
          }
        ],
        "value": 289
      },
      "startTime": "20200818T18:43:48",
      "samples": 457642684
    }
  ]
}

1 週間の期間内に 7 日分のデータを収集するリクエストの例:

GET /api/analytics/v1/datasets/io.ops[op]/data?start=20200811T15:00:00&granularity=day&span=week
    HTTP/1.1 
Authorization: Basic Tm8gcGVla2luZyE=
Host: zfs-storage.example.com:215
Accept: text/x-yaml

次のリクエストでは、io.ops[op] データセットが「操作のタイプごとに分類された 1 秒あたりの I/O 操作」 (読み取りまたは書き込み) であることが報告されています。

GET /api/analytics/v1/datasets/io.ops[op]

結果の例。簡潔にするために、7 つの出力サンプルのうち 5 つは省略しています。

HTTP/1.1 200 OK
Content-Type: text/x-yaml
X-Zfssa-Analytics-Api: 1.0
Transfer-Encoding: chunked

{
  "data": [
    {
      "sample": 457197423,
      "data": {
        "max": 3156,
        "data": [
          {
            "max": 588,
            "key": "read",
            "value": 6,
            "min": 0
          },
          {
            "max": 3156,
            "key": "write",
            "value": 45,
            "min": 0
          }
        ],
        "value": 52,
        "min": 0
      },
      "startTime": "20200811T15:00:00",
      "samples": 457644011
    },
    {
      "sample": 457283823,
      "data": {
        "max": 3675,
        "data": [
          {
            "max": 588,
            "key": "read",
            "value": 6,
            "min": 0
          },
          {
            "max": 3675,
            "key": "write",
            "value": 45,
            "min": 0
          }
        ],
        "value": 52,
        "min": 0
      },
      "startTime": "20200812T15:00:23",
      "samples": 457644011
    }
  ]
}

sample の値を start の値として使用することもできます。次のリクエストの結果は、指定された 1 秒のサンプルからのデータです。

GET /api/analytics/v1/datasets/io.ops[op]/data?start=457642682 HTTP/1.1