Observation
Observation instance to be associated with the workload for providing extensive observability. By default, the Observation is periodic. The json
tags are used by the Kubernetes API machinery to generate the CRD and the yaml
tags are used by Athena to generate the configuration file for the Manager. No validation is performed before passing the values to the Manager, hence the Manager might panic if the values are not proper.
Name field of tag name
The Name of the observation.
Kind field of tag kind
The Kind of the observation which determines also the representation of the observation.
Plugin field of tag plugin
The Plugin to be used to derive the observation, either from the defaults or defined in the Composition Model. The Plugin must be of the observer kind. Currently, a limited set of plugins are shipped with the Manager. Support for defining custom plugins would be included in the future releases.
Source field of tag source
Source to be observed in URI format of RFC 3986. Currently, Athena supports four schema: 1. File (file:///path/to/it.ext#content, or #bytes, or #lines, or #exists) 2. HTTP(S) (http://host:port/path/to/it.ext#status-code, or #output) 3. Telnet (telnet://host:port/path/to/it.ext#output) 4. Command (cmd:///path/to/run#exit-code, or #output)
Target field of tag target
Target to output the observation to in URI format of RFC 3986. Currently, Athena supports five schema: 1. Prometheus (omi://metric1?type=gauge) 2. Kubernetes (obj://field-name) 3. Event Stream (kes://event-name?type=warning) 4. Probes (cpi://condition-name) 5. File (file:///path/to/it.ext)
(^(omi|obj|kes|cpi|file)(:\/\/)([^\#\s]*)$)
Period field of tag period
The Period of performing the observation. Support Kubernetes period formats. Integer values are considered by default in seconds. Minimum supported period is 10ms and the maximum is 10d.
(^[0-9]*(ms|s|m|h|d?)$)