This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
storperf:api [2015/11/30 21:13] Mark Beierl [Common Options] |
storperf:api [2015/12/02 18:22] (current) Mark Beierl [Common Options] |
||
---|---|---|---|
Line 3: | Line 3: | ||
===== ReST API ===== | ===== ReST API ===== | ||
- | Start Job: http://hostname/api/v1.0/start&workload=[]&target=[] | + | Start Job: ''http://hostname/api/v1.0/start&workload=[workload]&target=[target]'' |
* See Common Options below for a full list | * See Common Options below for a full list | ||
+ | |||
Returns a JSON string as follows: | Returns a JSON string as follows: | ||
{ | { | ||
Line 11: | Line 13: | ||
} | } | ||
| | ||
- | Query Job Results: http://hostname/api/v1.0/results/[job_id] | + | Query Job Results: ''http://hostname/api/v1.0/report/[job_id]&workload=[workload pattern match]'' |
- | Returns a JSON string with the job status (''running'' or ''completed''). If still running: | + | * See Common Responses below for the response format for queries |
- | { | + | |
- | "version": 1.0 | + | |
- | "status": running | + | |
- | "start": 1448905682 | + | |
- | } | + | |
- | + | ||
- | If completed: | + | |
- | + | ||
- | { | + | |
- | "version": 1.0, | + | |
- | "status": completed, | + | |
- | "start": 1448905682, | + | |
- | "end": 1448905914, | + | |
- | "stats": { | + | |
- | "read": { | + | |
- | "iops": 12191, | + | |
- | "throughput": 48764, | + | |
- | "bytes": 146148, | + | |
- | "latency": { | + | |
- | "min": 23, | + | |
- | "mean": 413.87, | + | |
- | "max": 1638 | + | |
- | }, | + | |
- | "write": { | + | |
- | "iops": 5234, | + | |
- | "throughput": ,20936 | + | |
- | "bytes": 62748, | + | |
- | "latency": { | + | |
- | "min": 51, | + | |
- | "mean": 39.98, | + | |
- | "max": 434 | + | |
- | } | + | |
- | } | + | |
- | } | + | |
- | + | ||
- | | + | |
===== CLI ===== | ===== CLI ===== | ||
Line 75: | Line 41: | ||
* ''nossd'' //optional// Do not perform SSD style preconditioning. | * ''nossd'' //optional// Do not perform SSD style preconditioning. | ||
* ''nowarm'' //optional// Do not perform a warmup prior to measurements. | * ''nowarm'' //optional// Do not perform a warmup prior to measurements. | ||
- | | + | * ''report='' [job_id] //optional// Query the status of the supplied job_id and report on metrics. If a workload is supplied, will report on only that subset. |
+ | |||
+ | ====== Common Responses ====== | ||
+ | |||
+ | === Report Responses === | ||
+ | |||
+ | The report command returns a JSON string with the job status (''running'' or ''completed''). If still running: | ||
+ | |||
+ | { | ||
+ | "version": 1.0 | ||
+ | "status": running | ||
+ | "start": 1448905682 | ||
+ | } | ||
+ | |||
+ | If completed: | ||
+ | |||
+ | { | ||
+ | "version": 1.0, | ||
+ | "status": completed, | ||
+ | "start": 1448905682, | ||
+ | "end": 1448905914, | ||
+ | "workload": [ | ||
+ | { | ||
+ | "name": "rw", | ||
+ | "stats": { | ||
+ | "queue-depth": { | ||
+ | "1": { | ||
+ | "block-size": { | ||
+ | "4096": { | ||
+ | "read": { | ||
+ | "iops": 12191, | ||
+ | "latency": { | ||
+ | "min": 23, | ||
+ | "mean": 413.87, | ||
+ | "max": 1638 | ||
+ | } | ||
+ | }, | ||
+ | "write": { | ||
+ | "iops": 5234, | ||
+ | "latency": { | ||
+ | "min": 51, | ||
+ | "mean": 39.98, | ||
+ | "max": 434 | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | ] | ||
+ | } | ||