Skip to content

Commit 2e03201

Browse files
feat: improve internal_telemetry agent configuration
1 parent e1c6d40 commit 2e03201

File tree

7 files changed

+54
-24
lines changed

7 files changed

+54
-24
lines changed

internal/commands/status/statusretriever.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,12 +109,12 @@ func getMetricsSum(metrics []*io_prometheus_client.Metric) float64 {
109109
}
110110

111111
func GetAgentMetrics(conf *config.AgentConfig) (*AgentMetrics, error) {
112-
host := util.ReplaceEnvString(conf.InternalTelemetry.Host)
112+
host := util.ReplaceEnvString(conf.InternalTelemetry.Metrics.Host)
113113
if !strings.Contains(host, "://") {
114114
host = "http://" + host
115115
}
116116
host = strings.TrimRight(host, ":/")
117-
port := conf.InternalTelemetry.Port
117+
port := conf.InternalTelemetry.Metrics.Port
118118
baseURL := fmt.Sprintf("%s:%d", host, port)
119119
return GetAgentMetricsFromEndpoint(baseURL)
120120
}

internal/config/configschema.go

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,22 @@ type ForwardingConfig struct {
5050
Enabled bool `yaml:"enabled" mapstructure:"enabled" default:"true"`
5151
}
5252

53-
type InternalTelemetryConfig struct {
53+
type InternalTelemetryMetricsConfig struct {
5454
Enabled bool `yaml:"enabled" mapstructure:"enabled" default:"true"`
5555
Host string `yaml:"host" mapstructure:"host" default:"localhost"`
5656
Port int `yaml:"port" mapstructure:"port" default:"8888"`
57+
Level string `yaml:"level" mapstructure:"level" default:"detailed"`
58+
}
59+
60+
type InternalTelemetryLogsConfig struct {
61+
Enabled bool `yaml:"enabled" mapstructure:"enabled" default:"true"`
62+
Level string `yaml:"level" mapstructure:"level" default:"${env:OTEL_LOG_LEVEL}"`
63+
}
64+
65+
type InternalTelemetryConfig struct {
66+
Enabled bool `yaml:"enabled" mapstructure:"enabled" default:"true"`
67+
Metrics InternalTelemetryMetricsConfig `yaml:"metrics" mapstructure:"metrics"`
68+
Logs InternalTelemetryLogsConfig `yaml:"logs" mapstructure:"logs"`
5769
}
5870

5971
type AgentConfig struct {
@@ -63,7 +75,7 @@ type AgentConfig struct {
6375
Debug bool `yaml:"debug,omitempty" mapstructure:"debug"`
6476
HealthCheck HealthCheckConfig `yaml:"health_check" mapstructure:"health_check"`
6577
Forwarding ForwardingConfig `yaml:"forwarding" mapstructure:"forwarding"`
66-
InternalTelemetry InternalTelemetryConfig `yaml:"internal_telemetry,omitempty" mapstructure:"internal_telemetry"`
78+
InternalTelemetry InternalTelemetryConfig `yaml:"internal_telemetry" mapstructure:"internal_telemetry"`
6779
SelfMonitoring SelfMonitoringConfig `yaml:"self_monitoring,omitempty" mapstructure:"self_monitoring"`
6880
HostMonitoring HostMonitoringConfig `yaml:"host_monitoring,omitempty" mapstructure:"host_monitoring"`
6981
OtelConfigOverrides map[string]any `yaml:"otel_config_overrides,omitempty" mapstructure:"otel_config_overrides"`

internal/connections/confighandler.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -77,10 +77,12 @@ func SetEnvVars() error {
7777
os.Setenv("OBSERVE_AUTHORIZATION_HEADER", "Bearer "+token)
7878
os.Setenv("FILESTORAGE_PATH", GetDefaultFilestoragePath())
7979

80-
if debug {
81-
os.Setenv("OTEL_LOG_LEVEL", "DEBUG")
82-
} else {
83-
os.Setenv("OTEL_LOG_LEVEL", "INFO")
80+
if os.Getenv("OTEL_LOG_LEVEL") == "" {
81+
if debug {
82+
os.Setenv("OTEL_LOG_LEVEL", "DEBUG")
83+
} else {
84+
os.Setenv("OTEL_LOG_LEVEL", "INFO")
85+
}
8486
}
8587
return nil
8688
}
Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
service:
22
telemetry:
3+
{{- if .InternalTelemetry.Metrics.Enabled }}
34
metrics:
4-
level: detailed
5+
level: {{ .InternalTelemetry.Metrics.Level }}
56
readers:
67
- pull:
78
exporter:
89
prometheus:
9-
host: {{ .InternalTelemetry.Host }}
10-
port: {{ .InternalTelemetry.Port }}
10+
host: {{ .InternalTelemetry.Metrics.Host }}
11+
port: {{ .InternalTelemetry.Metrics.Port }}
12+
{{- end }}
13+
{{- if .InternalTelemetry.Logs.Enabled }}
1114
logs:
12-
level: ${env:OTEL_LOG_LEVEL}
15+
level: {{ .InternalTelemetry.Logs.Level }}
16+
{{- end }}
Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
service:
22
telemetry:
3+
{{- if .InternalTelemetry.Metrics.Enabled }}
34
metrics:
4-
level: detailed
5+
level: {{ .InternalTelemetry.Metrics.Level }}
56
readers:
67
- pull:
78
exporter:
89
prometheus:
9-
host: {{ .InternalTelemetry.Host }}
10-
port: {{ .InternalTelemetry.Port }}
10+
host: {{ .InternalTelemetry.Metrics.Host }}
11+
port: {{ .InternalTelemetry.Metrics.Port }}
12+
{{- end }}
13+
{{- if .InternalTelemetry.Logs.Enabled }}
1114
logs:
12-
level: ${env:OTEL_LOG_LEVEL}
15+
level: {{ .InternalTelemetry.Logs.Level }}
16+
{{- end }}
Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
service:
22
telemetry:
3+
{{- if .InternalTelemetry.Metrics.Enabled }}
34
metrics:
4-
level: detailed
5+
level: {{ .InternalTelemetry.Metrics.Level }}
56
readers:
67
- pull:
78
exporter:
89
prometheus:
9-
host: {{ .InternalTelemetry.Host }}
10-
port: {{ .InternalTelemetry.Port }}
10+
host: {{ .InternalTelemetry.Metrics.Host }}
11+
port: {{ .InternalTelemetry.Metrics.Port }}
12+
{{- end }}
13+
{{- if .InternalTelemetry.Logs.Enabled }}
1114
logs:
12-
level: ${env:OTEL_LOG_LEVEL}
15+
level: {{ .InternalTelemetry.Logs.Level }}
16+
{{- end }}
Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
service:
22
telemetry:
3+
{{- if .InternalTelemetry.Metrics.Enabled }}
34
metrics:
4-
level: detailed
5+
level: {{ .InternalTelemetry.Metrics.Level }}
56
readers:
67
- pull:
78
exporter:
89
prometheus:
9-
host: {{ .InternalTelemetry.Host }}
10-
port: {{ .InternalTelemetry.Port }}
10+
host: {{ .InternalTelemetry.Metrics.Host }}
11+
port: {{ .InternalTelemetry.Metrics.Port }}
12+
{{- end }}
13+
{{- if .InternalTelemetry.Logs.Enabled }}
1114
logs:
12-
level: ${env:OTEL_LOG_LEVEL}
15+
level: {{ .InternalTelemetry.Logs.Level }}
16+
{{- end }}

0 commit comments

Comments
 (0)