- Add NixOS modules for Alloy and Tempo with default configs - Update Grafana datasource config for Prometheus, Loki, Tempo - Add Prometheus remote_write for Alloy - Implement OTEL metrics/tracing/logging in arrtrix (Go) - Enable Alloy and Tempo in ulmo system config
22 lines
522 B
Go
22 lines
522 B
Go
package observability
|
|
|
|
import "strings"
|
|
|
|
type Config struct {
|
|
OTLPGRPCEndpoint string `yaml:"otlp_grpc_endpoint"`
|
|
ServiceName string `yaml:"service_name"`
|
|
ResourceAttributes map[string]string `yaml:"resource_attributes"`
|
|
}
|
|
|
|
func (c *Config) ApplyDefaults() {
|
|
if c.ServiceName == "" {
|
|
c.ServiceName = "arrtrix"
|
|
}
|
|
if c.ResourceAttributes == nil {
|
|
c.ResourceAttributes = map[string]string{}
|
|
}
|
|
}
|
|
|
|
func (c Config) Enabled() bool {
|
|
return strings.TrimSpace(c.OTLPGRPCEndpoint) != ""
|
|
}
|