in cmd/collector/config/config.go [290:334]
func (w *OtelMetric) Validate() error {
if w.Database == "" {
return errors.New("otel-metric.database must be set")
}
if w.Path == "" && w.GrpcPort == 0 {
return errors.New("otel-metric.path or otel-metric.grpc-port must be set")
}
if w.GrpcPort != 0 {
if w.GrpcPort < 1 || w.GrpcPort > 65535 {
return errors.New("otel-metric.grpc-port must be between 1 and 65535")
}
}
for k, v := range w.AddLabels {
if k == "" {
return errors.New("otel-metric.add-labels key must be set")
}
if v == "" {
return errors.New("otel-metric.add-labels value must be set")
}
}
for k, v := range w.DropLabels {
if k == "" {
return errors.New("otel-metric.drop-labels key must be set")
}
if v == "" {
return errors.New("otel-metric.drop-labels value must be set")
}
}
for _, v := range w.KeepMetricsWithLabelValue {
if v.LabelRegex == "" {
return errors.New("otel-metric.keep-metrics-with-label-value label-regex must be set")
}
if v.ValueRegex == "" {
return errors.New("otel-metric.keep-metrics-with-label-value value-regex must be set")
}
}
return nil
}