korrel8r

module
v0.6.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 15, 2024 License: Apache-2.0

README

Signal correlation for Kubernetes

Build Go Reference

Overview

There are many tools that collect observability signals from a Kubernetes clusters. Each tool may use different labelling conventions, data stores, and query languages for the data it collects.

Korrel8r calls each distinct set of tools and conventions a domain, for example.

  • Container logs stored in Loki.
  • Metrics and alerts stored in Prometheus.
  • Kubernetes resources stored in thea API server.

Korrel8r uses rules to define relationships between data in different domains. Rules form a graph. Walking the graph can correlate data via indirect relationships that span multiple domains.

Documentation

⚠️ NOTE: Early development, no compatibility guarantees ⚠️

Directories

Path Synopsis
cmd
internal
pkg/adoc
package adoc renders go/doc comemnts as asciidoc
package adoc renders go/doc comemnts as asciidoc
pkg/browser
package browser implements an HTML UI for web browsers.
package browser implements an HTML UI for web browsers.
pkg/decoder
package decoder encapsulates the choice of YAML/JSON decoder.
package decoder encapsulates the choice of YAML/JSON decoder.
pkg/logging
package logging initializes the root logger and provides some helpers.
package logging initializes the root logger and provides some helpers.
pkg/loki
package loki is a limited client for the Loki HTTP API: https://grafana.com/docs/loki/latest/reference/api Should be replaced with an official Loki client package if/when one is available.
package loki is a limited client for the Loki HTTP API: https://grafana.com/docs/loki/latest/reference/api Should be replaced with an official Loki client package if/when one is available.
pkg/must
package must contains functions to handle errors via panic
package must contains functions to handle errors via panic
pkg/test
package test contains helpers for writing tests
package test contains helpers for writing tests
pkg/test/mock
package mock is a mock implementation of a korrel8r domain for testing.
package mock is a mock implementation of a korrel8r domain for testing.
operator module
pkg
config
Package config contains configuration types for Korrel8r.
Package config contains configuration types for Korrel8r.
domains/alert
Package alert provides Prometheus alerts, queries and access to Thanos and AlertManager stores.
Package alert provides Prometheus alerts, queries and access to Thanos and AlertManager stores.
domains/k8s
package k8s implements Kubernetes resources stored in a Kube API server.
package k8s implements Kubernetes resources stored in a Kube API server.
domains/log
Package log is a domain for openshift-logging ViaQ logs stored in Loki or LokiStack.
Package log is a domain for openshift-logging ViaQ logs stored in Loki or LokiStack.
domains/metric
package metric represents Prometheus metric samples as objects.
package metric represents Prometheus metric samples as objects.
domains/netflow
Package netflow is a domain for network observability flow events stored in Loki or LokiStack.
Package netflow is a domain for network observability flow events stored in Loki or LokiStack.
engine
package engine implements generic correlation logic to correlate across domains.
package engine implements generic correlation logic to correlate across domains.
graph
Package graph provides a directed multi-graph with class nodes and rule edges.
Package graph provides a directed multi-graph with class nodes and rule edges.
korrel8r
package korrel8r contains interfaces and algorithms to correlate objects between different domains.
package korrel8r contains interfaces and algorithms to correlate objects between different domains.
korrel8r/impl
package impl provides helper types and functions for implementing a korrel8r domain.
package impl provides helper types and functions for implementing a korrel8r domain.
openshift
package openshift provides tools for interacting with OpenShift clusters.
package openshift provides tools for interacting with OpenShift clusters.
rest
Package rest implements a REST API for korrel8r.
Package rest implements a REST API for korrel8r.
rest/zz_docs
Package zz_docs Code generated by swaggo/swag.
Package zz_docs Code generated by swaggo/swag.
rules
Package rules uses templates to generate goal queries from start objects.
Package rules uses templates to generate goal queries from start objects.
unique
package unique provides functions and types to remove duplicate values.
package unique provides functions and types to remove duplicate values.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL