Documentation
¶
Overview ¶
Package config generates Grafana Agent configuration based on Kubernetes resources.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func SanitizeLabelName ¶
SanitizeLabelName sanitizes a label name for Prometheus.
Types ¶
type AssetReference ¶
type AssetReference struct {
Namespace string
Reference prom.SecretOrConfigMap
}
AssetReference is a namespaced Secret or ConfigMap selector.
func AssetReferences ¶ added in v0.22.9
func AssetReferences(v interface{}) []AssetReference
AssetReferences returns all secret or configmap selectors used throughout v.
type Deployment ¶
type Deployment struct {
// Agent is the root resource that the deployment represents.
Agent *grafana.GrafanaAgent
// Metrics is the set of metrics instances discovered from the root Agent resource.
Metrics []MetricsInstance
// Logs is the set of logging instances discovered from the root Agent
// resource.
Logs []LogInstance
// Secrets that can be referenced in the deployment.
Secrets assets.SecretStore
}
Deployment is a set of resources used for one deployment of the Agent.
func (*Deployment) AssetReferences ¶
func (d *Deployment) AssetReferences() []AssetReference
AssetReferences returns all secret or configmap selectors used throughout the deployment. Every used secret and configmap should then be loaded into an assets.SecretStore.
func (*Deployment) BuildConfig ¶
func (d *Deployment) BuildConfig(secrets assets.SecretStore, ty Type) (string, error)
BuildConfig builds an Agent configuration file.
func (*Deployment) DeepCopy ¶
func (d *Deployment) DeepCopy() *Deployment
DeepCopy creates a deep copy of d.
type FSImporter ¶
type FSImporter struct {
// contains filtered or unexported fields
}
FSImporter implements jsonnet.Importer for a fs.FS.
func NewFSImporter ¶
func NewFSImporter(f fs.FS, paths []string) *FSImporter
NewFSImporter creates a new jsonnet VM Importer that uses the given fs.
type LogInstance ¶ added in v0.19.0
type LogInstance struct {
Instance *grafana.LogsInstance
PodLogs []*grafana.PodLogs
}
LogInstance is an instance with a set of associated PodLogs.
type MetricsInstance ¶ added in v0.19.0
type MetricsInstance struct {
Instance *grafana.MetricsInstance
ServiceMonitors []*prom.ServiceMonitor
PodMonitors []*prom.PodMonitor
Probes []*prom.Probe
}
MetricsInstance is an instance with a set of associated service monitors, pod monitors, and probes, which compose the final configuration of the generated Metrics instance.