Oracle® ZFS Storage Appliance RESTful API 指南,发行版 OS8.6.0

退出打印视图

更新时间: 2016 年 7 月
 
 

Analytics 数据集

表 27  数据集属性
名称
描述
name
底层统计信息的名称
grouping
此统计信息的所属组
explanation
底层统计信息的说明
incore
内核中的数据集数据的字节数
size
磁盘上的数据集数据的字节数
suspended
指示数据集当前是否处于挂起状态的布尔值
activity
待定数据集活动标志

所有属性都不可变,suspended 除外。

可用数据集:

  • 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

  • ndmp.diskkb

  • nfs2.ops

  • nfs2.ops[op]

  • nfs3.ops

  • nfs3.ops[op]

  • nfs4.ops

  • nfs4.ops[op]

  • nic.kilobytes

  • nic.kilobytes[device]

  • nic.kilobytes[direction]

  • sftp.kilobytes

  • smb.ops

  • smb.ops[op]

列出数据集

列出所有配置的 Analytic 数据集。

请求示例:

GET /api/analytics/v1/datasets HTTP/1.1
Authorization: Basic ab6rt4psMWE=
Host: example.zfssa.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 ab6rt4psMWE=
Host: example.zfssa.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: letmein
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
删改粒度(秒、分钟、小时)
endtime
删改给定 endtime 之前收集的数据

endtime 是 ISO 8601 时间/日期字符串(例如 20130531T01:13:58)

请求示例:

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

响应示例:

HTTP/1.1 204 No Content

获取数据集数据

从 Analytic 数据集获取数据。支持检索每秒的数据和细粒度数据。

表 28  查询参数
名称
描述
start
开始收集示例数据的时间
seconds
收集样例数据的秒数(默认值 = 1)
span
收集样例数据的持续时间(分钟、小时、天、月)
interval
在给定时间跨度 (span) 内,计算数据点平均值的时间间隔(分钟、小时、天、月)

如果未提供 start 参数,则开始时间设置为当前时间减去指定样例数据的秒数 (seconds)。start 时间不能是将来时间。如果收集数据所需的秒数会导致数据返回时间晚于当前时间,服务器将等待各个样例收集完毕,然后再返回数据。

要检索细粒度数据,请使用 spaninterval 参数组合,如下表所示。使用了这两个参数时,即使设置了 seconds 参数,也会忽略该参数。

表 29  spaninterval 组合
span
interval
分钟
小时
分钟
x
小时
x
x
x
x
x
x
x
x
x
x
x
x
x
x

如果任一参数输入错误,则会忽略此请求并改用 seconds 参数。如果请求不正确或不受支持,将显示错误消息 "Input span and granularity are not supported"。

下表显示了返回的数据集数据属性。

表 30  数据集数据属性
名称
描述
startTime
返回的第一个样例的时间
sample
返回的第一个样例的样例索引
data
样例数据组
min
在指定时间间隔内每秒的最小值
max
在指定时间间隔内每秒的最大值

startTime 属性可为以下格式之一:

  • ISO 8601 时间/日期字符串(例如,20130531T01:13:58)

  • 样例索引号

  • 文本字符串 now

请求示例(用于收集 3 秒内的实时数据):

GET /api/analytics/v1/datasets/nfs4.ops%5Bfile%5D/data?start=now&seconds=3
    HTTP/1.1
Authorization: Basic ab6rt4psMWE=
Host: example.zfssa.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: 239024557
    data:
        value:      5
    startTime:      20130912T21:42:38
    samples:        239024558

  - sample: 239024558
    data:
        value:      15
    startTime:      20130912T21:42:39
    samples:        239024559

  - sample: 239024559
    data:
        value:      25
    startTime:      20130912T21:42:40
    samples:        239024560

size:       3
---

请求示例(用于收集 1 周内每一天的实时数据):

GET /api/analytics/v1/datasets/nfs4.ops%5Bfile%5D/data?start=239024557&span=week&interval=day
    HTTP/1.1 
Authorization: Basic ab6rt4psMWE= 
Host: example.zfssa.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: 239024557     
    data:        
       value:      5     
    max:        79     
    min:        0
    startTime:      20130912T21:42:38     
    samples:        240074328
 
  - sample: 239110957     
    data:         
        value:      15
     max:        150     
     min:        1    
     startTime:      20130913T21:42:38     
     samples:        240074328

    ... 

   - sample: 239629357     
     data:         
         value:      25
     max:        120     
     min:        2    
     startTime:      20130914T21:42:38     
     samples:        240074328

size:       7