Files
scylladb/_static/api/api-doc/collectd.json
GitHub Action c2d4a898b4 Publish docs
2026-03-11 12:37:53 +00:00

203 lines
6.6 KiB
JSON

{
"apiVersion":"0.0.1",
"swaggerVersion":"1.2",
"basePath":"{{Protocol}}://{{Host}}",
"resourcePath":"/collectd",
"produces":[
"application/json"
],
"apis":[
{
"path":"/collectd/{pluginid}",
"operations":[
{
"method":"GET",
"summary":"Get a collectd value",
"type":"array",
"items":{
"type":"collectd_value"
},
"nickname":"get_collectd",
"produces":[
"application/json"
],
"parameters":[
{
"name":"pluginid",
"description":"The plugin ID",
"required":true,
"allowMultiple":false,
"type":"string",
"paramType":"path"
},
{
"name":"instance",
"description":"The plugin instance",
"required":false,
"allowMultiple":false,
"type":"string",
"paramType":"query"
},
{
"name":"type",
"description":"The plugin type",
"required":true,
"allowMultiple":false,
"type":"string",
"paramType":"query"
},
{
"name":"type_instance",
"description":"The plugin type instance",
"required":false,
"allowMultiple":false,
"type":"string",
"paramType":"query"
}
]
},
{
"method":"POST",
"summary":"Start reporting on one or more collectd metric",
"type":"void",
"nickname":"enable_collectd",
"produces":[
"application/json"
],
"parameters":[
{
"name":"pluginid",
"description":"The plugin ID, describe the component the metric belongs to. Examples are cache and alternator, etc'. Regex are supported.",
"required":true,
"allowMultiple":false,
"type":"string",
"paramType":"path"
},
{
"name":"instance",
"description":"The plugin instance typically #CPU indicating per CPU metric. Regex are supported. Omit for all",
"required":false,
"allowMultiple":false,
"type":"string",
"paramType":"query"
},
{
"name":"type",
"description":"The plugin type, the type of the information. Examples are total_operations, bytes, total_operations, etc'. Regex are supported. Omit for all",
"required":false,
"allowMultiple":false,
"type":"string",
"paramType":"query"
},
{
"name":"type_instance",
"description":"The plugin type instance, the specific metric. Exampls are total_writes, total_size, zones, etc'. Regex are supported, Omit for all",
"required":false,
"allowMultiple":false,
"type":"string",
"paramType":"query"
},
{
"name":"enable",
"description":"set to true to enable all, anything else or omit to disable",
"required":false,
"allowMultiple":false,
"type":"boolean",
"paramType":"query"
}
]
}
]
},
{
"path":"/collectd/",
"operations":[
{
"method":"GET",
"summary":"Get a list of all collectd metrics and their status",
"type":"array",
"items":{
"type":"collectd_metric_status"
},
"nickname":"get_collectd_items",
"produces":[
"application/json"
],
"parameters":[
]
},
{
"method":"POST",
"summary":"Enable or disable all collectd metrics",
"type":"void",
"nickname":"enable_all_collectd",
"produces":[
"application/json"
],
"parameters":[
{
"name":"enable",
"description":"set to true to enable all, anything else or omit to disable",
"required":false,
"allowMultiple":false,
"type":"boolean",
"paramType":"query"
}
]
}
]
}
],
"models":{
"type_instance_id":{
"id":"type_instance_id",
"description":"A type instance ID",
"properties":{
"plugin":{
"type":"string",
"description":"The plugin ID"
},
"plugin_instance":{
"type":"string",
"description":"The plugin instance"
},
"type":{
"type":"string",
"description":"The plugin type"
},
"type_instance":{
"type":"string",
"description":"The plugin type instance"
}
}
},
"collectd_value":{
"id":"collectd_value",
"description":"Holds a collectd value",
"properties":{
"values":{
"description":"An array of values",
"type":"array",
"items":{
"type":"double"
}
}
}
},
"collectd_metric_status":{
"id":"collectd_metric_status",
"description":"Holds a collectd id and an enable flag",
"properties":{
"id":{
"description":"The metric ID",
"type":"type_instance_id"
},
"enable":{
"description":"Is the metric enabled",
"type":"boolean"
}
}
}
}
}