2025-05-12 14:32:13 +05:30
|
|
|
package analytics
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"github.com/SigNoz/signoz/pkg/factory"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
// This will be set via ldflags at build time.
|
|
|
|
|
var (
|
|
|
|
|
key string = "<unset>"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
type Config struct {
|
2025-06-09 16:43:29 +05:30
|
|
|
Enabled bool `mapstructure:"enabled"`
|
|
|
|
|
Segment Segment `mapstructure:"segment"`
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
type Segment struct {
|
|
|
|
|
Key string `mapstructure:"key"`
|
2025-05-12 14:32:13 +05:30
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func NewConfigFactory() factory.ConfigFactory {
|
|
|
|
|
return factory.NewConfigFactory(factory.MustNewName("analytics"), newConfig)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func newConfig() factory.Config {
|
|
|
|
|
return Config{
|
|
|
|
|
Enabled: false,
|
2025-06-09 16:43:29 +05:30
|
|
|
Segment: Segment{
|
|
|
|
|
Key: key,
|
|
|
|
|
},
|
2025-05-12 14:32:13 +05:30
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (c Config) Validate() error {
|
2025-06-09 16:43:29 +05:30
|
|
|
return nil
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (c Config) Provider() string {
|
|
|
|
|
if c.Enabled {
|
|
|
|
|
return "segment"
|
2025-05-12 14:32:13 +05:30
|
|
|
}
|
|
|
|
|
|
2025-06-09 16:43:29 +05:30
|
|
|
return "noop"
|
2025-05-12 14:32:13 +05:30
|
|
|
}
|