...
Code Block | ||||
---|---|---|---|---|
| ||||
{ "$schema": "http://json-schema.org/draft-04/schema#", "title": "collectd Base Schema", "description": "A schema that defines the collectd meters and events", "definitions": { "collectd_field": { "description": "collectd_fields", "type": "object", "properties": { "anyOf" : { "Interval" : { "description": "interval at which to expect a new value", "type": "number" }, "host" : { "description": "used to identify the host", "type": "string" }, "message" : { "description": "The notification message", "type": "stringnumber" }, "metadata" : { "description": "an opaque data structure that enables the passing of additional information about a value list", "type": "string" }, "plugin" : { }, "host" : { "description": "used to identify the pluginhost", "type": "string" }, "plugin instance" : { "description": "used to group a set of values together", "type": "string" }, "severity" : { "description": "can be one of OKAY, WARNING, and FAILURE", "type": "string" }, "time" : { }, "message" : { "description": "TimeThe stampnotification atmessage", which the value was collected", "type": "number" }, "type" : { "description": "unit used to measure a value", "type": "string" }, "type instance " : { "description": "used to distinguish between values that have an identical type", "type": "string" }, "values" : { "type": "object", "anyOf" : { "absolute" : { "type" : "number" } , "counter" : { "type" : "number" }, "derive" : { "type" : "number" }, "gauge" : { "type" : "number" } } }, "value length" : { "description": "The number of values in the data set", "type": "number" } } } }, "mappings": { "description": "mapping pair", "type": "object", "properties": { "oneOf": { "$ref": "#/definitions/collectd_field", "collectd_string": { "type": "string" } }, "new_string": { "type": "string" } } }, "timestamps": { }, "metadata" : { "description": "an opaque data structure that enables the passing of additional information about a value list", "type": "string" }, "plugin" : { "description": "Mappings from collectd timestampsused to otheridentify frameworkthe timestampsplugin", "type": "object", "propertiestype": { "mappingsstring": { "description": "array of mappings from collectd to other frameworks", "type": "array", "items": { "$ref": "#/definitions/mapping", "conversion": "string" } } }, "required": [ "mappings" ] }, "plugin instance" : { "description": "used to group a set of values together", "type": "string" }, "severity" : { "description": "can be one of OKAY, WARNING, and FAILURE", "type": "string" }, "time" : { "description": "Time stamp at which the value was collected", "type": "number" }, "type" : { "description": "unit used to measure a value", "type": "string" }, "type instance " : { "description": "used to distinguish between values that have an identical type", "type": "string" }, "values" : { "type": "object", "anyOf" : { "absolute" : { "type" : "number" } , "counter" : { "type" : "number" }, "derive" : { "type" : "number" }, "gauge" : { "type" : "number" } } }, "value length" : { "description": "The number of values in the data set", "type": "number" } } } }, "mappings": { "description": "mapping pair", "type": "object", "properties": { "oneOf": { "$ref": "#/definitions/collectd_field", "collectd_string": { "type": "string" } }, "new_string": { "type": "string" } } }, "mappings_with_conversion": { "description": "Mappings from collectd timestamps to other framework timestamps", "type": "object", "properties": { "mappings": { "description": "array of mappings from collectd to other frameworks", "type": "array", "items": { "$ref": "#/definitions/mapping", }, "units": { "descriptionconversion": "string"Mappings from collectd units to other framework units", } "type": "object", "properties": { "mappings": { "description": "array of mappings from collectd to other frameworks", "type": "array", "items": { "$ref": "#/definitions/mapping", "unit_conversion": "string" } } }, } }, "required": [ "mappings" ] } }, "field_mappings": { "description": "array of field_mappings", "type": "array", "items": { "items": { "anyOf":{ "$ref": "#/definitions/mappings", "$ref1": "#/definitions/timestamps", "$ref2": "#/definitions/units" } mappings_with_conversion" } } } } |
Taking the following ceilometer meter as an example:
...