package models
- Alphabetic
- Public
- Protected
Type Members
- sealed trait Aggregator extends AnyRef
- sealed trait DataPoint extends AnyRef
- case class DataPointWithMultipleValues(metricName: MetricName, values: Seq[(Instant, KairosCompatibleType)], tags: Seq[Tag] = Seq.empty, ttl: Option[TimeRange] = None) extends DataPoint with Product with Serializable
A data point has with metric name, a single value, a timestamp, and a list of one or more tags
A data point has with metric name, a single value, a timestamp, and a list of one or more tags
- ttl
Sets the Cassandra ttl for the data points. None or Some(0.seconds) will not set a TTL
- case class DataPointWithSingleValue(metricName: MetricName, value: KairosCompatibleType, timestamp: Instant, tags: Seq[Tag], ttl: Option[TimeRange] = None) extends DataPoint with Product with Serializable
A data point has with metric name, a single value, a timestamp, and a list of one or more tags
A data point has with metric name, a single value, a timestamp, and a list of one or more tags
- ttl
Sets the Cassandra ttl for the data points. None or Some(0.seconds) will not set a TTL
- sealed trait GroupBy extends AnyRef
- sealed trait HealthCheckResult extends AnyRef
- case class HealthStatusResults(results: Seq[String]) extends Product with Serializable
KairosDB provides REST APIs that show the health of the system.
KairosDB provides REST APIs that show the health of the system.
There are currently two health checks executed for each API.
- The JVM thread deadlock check verifies that no deadlocks exist in the KairosDB JVM.
- The Datastore query check performs a query on the data store to ensure that the data store is responding.
Example value: HealthStatusResults(Seq("JVM-Thread-Deadlock: OK", "Datastore-Query: OK"))
- sealed trait KairosCompatibleType extends AnyRef
KairosDB only supports numbers and strings.
KairosDB only supports numbers and strings. Custom types can be defined
- case class KairosDBConfig(url: Url) extends Product with Serializable
Kairos base URL
- final case class MetricName(name: String) extends AnyVal with Product with Serializable
Metric names are case sensitive and can only contain the following characters: alphanumeric characters, period ”.”, slash “/”, dash “-”, and underscore “_” (not enforced)
- case class Query(metricName: MetricName, tags: Seq[QueryTag] = Seq.empty, groupBys: Seq[GroupBy] = Seq.empty, aggregators: Seq[Aggregator] = Seq.empty, limit: Option[Int] = None, order: Order = Order.defaultOrder, excludeTags: Boolean = false, plugins: Seq[QueryPlugin] = Seq.empty) extends Product with Serializable
- tags
Tags narrow down the search. Only metrics that include the tag and matches one of the values are returned. Tags are optional.
- groupBys
The resulting data points can be grouped by one or more tags, a time range, or by value, or by a combination of the three.
- aggregators
An ordered array of aggregators. They are processed in the order specified. The output of an aggregator is passed to the input of the next until all have been processed.
- limit
Limits the number of data points returned from the data store. The limit is applied before any aggregator is executed.
- order
Orders the returned data points. This sorting is done before any aggregators are executed.
- excludeTags
By default, the result of the query includes tags and tag values associated with the data points. If
excludeTags
is set to true, the tags will be excluded from the response.- plugins
optional plugin references to customize the behavior of the query on this metric
- case class QueryMetrics(metrics: Seq[Query], timeSpan: TimeSpan, timeZone: Option[String] = None, cacheTime: Option[Int] = None, plugins: Seq[QueryPlugin] = Seq.empty) extends Product with Serializable
- timeZone
The time zone for the time range of the query. If not specified, UTC is used. tz format, e.g. "Europe/Brussels"
- cacheTime
The amount of time in seconds to re use the cache from a previous query. When a query is made, Kairos looks for the cache file for the query. If a cache file is found and the timestamp of the cache file is within cache_time seconds from the current query, the cache is used. Sending a query with a cacheTime set to 0 will always refresh the cache with new data from Cassandra.
- plugins
optional plugin references to custom the behavior of this query
- case class QueryPlugin(name: String, properties: Map[String, Any] = Map.empty) extends Product with Serializable
Reference to a plugin which can customize the behavior of a query.
Reference to a plugin which can customize the behavior of a query.
- name
published name of the plugin
- properties
properties for the plugin within the query invocation
- trait RangeAggregator extends Aggregator
Many of the aggregators inherit from the range aggregator
- case class Tag(name: String, value: String) extends Product with Serializable
Tags are named properties that identify the data, such as its type and where it comes from
Tags are named properties that identify the data, such as its type and where it comes from
Tag names and values are case sensitive and can only contain the following characters: alphanumeric characters, period ”.”, slash “/”, dash “-”, and underscore “_” (not enforced)
- case class TimeRange(amount: Long, unit: KairosTimeUnit) extends Product with Serializable
- case class TimeSpan(startTime: StartTime, endTime: Option[EndTime] = None) extends Product with Serializable
- endTime
If end time is None, the current date and time is assumed
Value Members
- object Aggregator
- object DataPoint
- object GroupBy
- object HealthCheckResult
- object KairosCompatibleType
- object KairosDBConfig extends Serializable
- object KairosQuery
- object QueryMetricTagsResponse
- object QueryResponse
- object RangeAggregator
- object TimeRange extends Serializable
- object TimeSpan extends Serializable