Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions pkg/loop/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ const (
envTelemetryEmitterExportInterval = "CL_TELEMETRY_EMITTER_EXPORT_INTERVAL"
envTelemetryEmitterExportMaxBatchSize = "CL_TELEMETRY_EMITTER_EXPORT_MAX_BATCH_SIZE"
envTelemetryEmitterMaxQueueSize = "CL_TELEMETRY_EMITTER_MAX_QUEUE_SIZE"
envTelemetryLogStreamingEnabled = "CL_TELEMETRY_LOG_STREAMING_ENABLED"

envChipIngressEndpoint = "CL_CHIP_INGRESS_ENDPOINT"
)
Expand Down Expand Up @@ -115,6 +116,7 @@ type EnvConfig struct {
TelemetryEmitterExportInterval time.Duration
TelemetryEmitterExportMaxBatchSize int
TelemetryEmitterMaxQueueSize int
TelemetryLogStreamingEnabled bool

ChipIngressEndpoint string
}
Expand Down Expand Up @@ -182,6 +184,7 @@ func (e *EnvConfig) AsCmdEnv() (env []string) {
add(envTelemetryEmitterExportInterval, e.TelemetryEmitterExportInterval.String())
add(envTelemetryEmitterExportMaxBatchSize, strconv.Itoa(e.TelemetryEmitterExportMaxBatchSize))
add(envTelemetryEmitterMaxQueueSize, strconv.Itoa(e.TelemetryEmitterMaxQueueSize))
add(envTelemetryLogStreamingEnabled, strconv.FormatBool(e.TelemetryLogStreamingEnabled))

add(envChipIngressEndpoint, e.ChipIngressEndpoint)

Expand Down Expand Up @@ -341,6 +344,10 @@ func (e *EnvConfig) parse() error {
if err != nil {
return fmt.Errorf("failed to parse %s: %w", envTelemetryEmitterMaxQueueSize, err)
}
e.TelemetryLogStreamingEnabled, err = getBool(envTelemetryLogStreamingEnabled)
if err != nil {
return fmt.Errorf("failed to parse %s: %w", envTelemetryLogStreamingEnabled, err)
}
// Optional
e.ChipIngressEndpoint = os.Getenv(envChipIngressEndpoint)
}
Expand Down
3 changes: 3 additions & 0 deletions pkg/loop/config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ func TestEnvConfig_parse(t *testing.T) {
envTelemetryEmitterExportInterval: "2s",
envTelemetryEmitterExportMaxBatchSize: "100",
envTelemetryEmitterMaxQueueSize: "1000",
envTelemetryLogStreamingEnabled: "false",

envChipIngressEndpoint: "http://chip-ingress.example.com",
},
Expand Down Expand Up @@ -171,6 +172,7 @@ var envCfgFull = EnvConfig{
TelemetryEmitterExportInterval: 2 * time.Second,
TelemetryEmitterExportMaxBatchSize: 100,
TelemetryEmitterMaxQueueSize: 1000,
TelemetryLogStreamingEnabled: false,

ChipIngressEndpoint: "http://chip-ingress.example.com",
}
Expand Down Expand Up @@ -219,6 +221,7 @@ func TestEnvConfig_AsCmdEnv(t *testing.T) {
assert.Equal(t, "2s", got[envTelemetryEmitterExportInterval])
assert.Equal(t, "100", got[envTelemetryEmitterExportMaxBatchSize])
assert.Equal(t, "1000", got[envTelemetryEmitterMaxQueueSize])
assert.Equal(t, "false", got[envTelemetryLogStreamingEnabled])

// Assert ChipIngress environment variables
assert.Equal(t, "http://chip-ingress.example.com", got[envChipIngressEndpoint])
Expand Down
3 changes: 2 additions & 1 deletion pkg/loop/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,7 @@ func (s *Server) start() error {
EmitterExportInterval: s.EnvConfig.TelemetryEmitterExportInterval,
EmitterExportMaxBatchSize: s.EnvConfig.TelemetryEmitterExportMaxBatchSize,
EmitterMaxQueueSize: s.EnvConfig.TelemetryEmitterMaxQueueSize,
LogStreamingEnabled: s.EnvConfig.TelemetryLogStreamingEnabled,
ChipIngressEmitterEnabled: s.EnvConfig.ChipIngressEndpoint != "",
ChipIngressEmitterGRPCEndpoint: s.EnvConfig.ChipIngressEndpoint,
ChipIngressInsecureConnection: s.EnvConfig.TelemetryInsecureConnection,
Expand Down Expand Up @@ -166,7 +167,7 @@ func (s *Server) start() error {
LockTimeout: s.EnvConfig.DatabaseLockTimeout,
MaxOpenConns: s.EnvConfig.DatabaseMaxOpenConns,
MaxIdleConns: s.EnvConfig.DatabaseMaxIdleConns,
EnableTracing: s.EnvConfig.DatabaseTracingEnabled,
EnableTracing: s.EnvConfig.DatabaseTracingEnabled,
}.New(ctx, dbURL, pg.DriverPostgres)
if err != nil {
return fmt.Errorf("error connecting to DataBase: %w", err)
Expand Down
Loading