|
Todas las propiedades son inmutables, excepto las suspendidas.
Conjunto de datos disponibles:
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]
nfs4-1.ops
nfs4-1.bytes
nic.kilobytes
nic.kilobytes[device]
nic.kilobytes[direction]
sftp.kilobytes
smb.ops
smb.ops[op]
Muestra todos los conjuntos de datos analíticos configurados.
Ejemplo de solicitud:
GET /api/analytics/v1/datasets HTTP/1.1 Authorization: Basic ab6rt4psMWE= Host: example.zfssa.com:215 Accept: application/json
Ejemplo de resultados:
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]",
}, {
...
}]
}
Obtiene propiedades del conjunto de datos especificado.
Ejemplo de solicitud:
GET /api/analytics/v1/datasets/nfs4.ops HTTP/1.1 Authorization: Basic ab6rt4psMWE= Host: example.zfssa.com:215 Accept: application/json
Ejemplo de resultados:
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
}
}
Crea un conjunto de datos nuevo.
Ejemplo de solicitud:
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"}
Ejemplo de resultados:
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"
}
}
El comando de modificación de conjunto de datos se utiliza para suspender o reanudar la recopilación de datos de un solo conjunto de datos.
Ejemplo de solicitud de suspensión:
POST /api/analytics/v1/datasets/nfs4.ops
{"suspended":true}
Ejemplo de solicitud de reanudación:
POST /api/analytics/v1/datasets/nfs4.ops
{"suspended":false}
Ejemplo de respuesta:
HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Length: 228
X-Zfssa-Analytics-Api: 1.0
{
"dataset" {
...
"suspended": false
}
}
Destruye un conjunto de datos.
Ejemplo de solicitud:
DELETE /api/analytics/v1/datasets/test.sine HTTP/1.1
Ejemplo de respuesta:
HTTP/1.1 204 No Content X-Zfssa-Analytics-Api: 1.0
Guarda un juego de datos.
Ejemplo de solicitud:
PUT /api/analytics/v1/datasets/nfs4.ops/data
Ejemplo de respuesta:
HTTP/1.1 202 Accepted
Los datos dentro de un conjunto de datos se pueden quitar con un valor de granularidad de segundo, minuto u hora.
|
El tiempo determinado es una cadena de hora/fecha ISO 8601 (p. ej.: 20130531T01:13:58)
Ejemplo de solicitud:
DELETE /api/analytics/v1/datasets/nfs4.ops/data?granularity=hour
Ejemplo de respuesta:
HTTP/1.1 204 No Content
Obtiene los datos de un conjunto de datos de análisis. Se admite la recuperación de datos tanto por segundo como granular.
|
Si no se proporciona el parámetro start, la hora de inicio se establece en la hora actual menos el número especificado para seconds para los datos de muestra. La hora de inicio no puede ser del futuro. Si la cantidad de segundos para recopilar datos va más allá de la hora actual, el servidor espera a que se tome cada muestra antes de devolver los datos.
Para recuperar datos granulares, use una combinación de parámetros span e interval, como se muestra en la siguiente tabla. Cuando se usan estos parámetros, se ignora el parámetro seconds, aunque se lo configure.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||
Si uno de los parámetros se introduce incorrectamente, la solicitud se ignora y se usa el parámetro seconds en su lugar. Si la solicitud es incorrecta o no está admitida, aparece el mensaje de error "Input span and granularity are not supported." (El período y la granularidad introducidos no están admitidos).
En la siguiente tabla, se muestran las propiedades de los datos del juego de datos que se devuelven.
|
La propiedad startTime puede aparecer en uno de los siguientes formatos:
Una cadena de hora/fecha ISO 8601 (por ejemplo, 20130531T01:13:58)
Un número de índice de muestra
La cadena literal now
Solicitud de ejemplo (para recopilar tres segundos de datos en vivo):
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
Ejemplo de resultados:
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
---
Solicitud de ejemplo (para recopilar siete días de datos en vivo dentro de un período de una semana):
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
Ejemplo de resultados:
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