mirror of
https://github.com/zitadel/zitadel.git
synced 2024-12-15 04:18:01 +00:00
f680dd934d
* chore: rename package errors to zerrors * rename package errors to gerrors * fix error related linting issues * fix zitadel error assertion * fix gosimple linting issues * fix deprecated linting issues * resolve gci linting issues * fix import structure --------- Co-authored-by: Elio Bischof <elio@zitadel.com>
31 lines
621 B
Go
31 lines
621 B
Go
package config
|
|
|
|
import (
|
|
"github.com/zitadel/zitadel/internal/telemetry/metrics/otel"
|
|
"github.com/zitadel/zitadel/internal/zerrors"
|
|
)
|
|
|
|
type Config struct {
|
|
Type string
|
|
Config map[string]interface{} `mapstructure:",remain"`
|
|
}
|
|
|
|
var meter = map[string]func(map[string]interface{}) error{
|
|
"otel": otel.NewTracerFromConfig,
|
|
"none": NoMetrics,
|
|
"": NoMetrics,
|
|
}
|
|
|
|
func (c *Config) NewMeter() error {
|
|
t, ok := meter[c.Type]
|
|
if !ok {
|
|
return zerrors.ThrowInternalf(nil, "METER-Dfqsx", "config type %s not supported", c.Type)
|
|
}
|
|
|
|
return t(c.Config)
|
|
}
|
|
|
|
func NoMetrics(_ map[string]interface{}) error {
|
|
return nil
|
|
}
|