|
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