Skip to content

Commit 9948a1d

Browse files
committed
Add mode metric
Signed-off-by: Ruben Vargas <[email protected]>
1 parent 2300bac commit 9948a1d

File tree

1 file changed

+26
-3
lines changed

1 file changed

+26
-3
lines changed

apis/v1beta1/metrics.go

+26-3
Original file line numberDiff line numberDiff line change
@@ -95,14 +95,37 @@ func getComponentsFromConfigV1Beta1(yamlContent Config) *components {
9595
}
9696

9797
func IncCounters(ctx context.Context, collector *OpenTelemetryCollector) error {
98-
return updateCounter(ctx, collector, true)
98+
if err := updateComponentCounters(ctx, collector, true); err != nil {
99+
return err
100+
}
101+
return updateGeneralCRMetricsComponents(ctx, collector, true)
99102
}
100103

101104
func DecCounters(ctx context.Context, collector *OpenTelemetryCollector) error {
102-
return updateCounter(ctx, collector, false)
105+
if err := updateComponentCounters(ctx, collector, false); err != nil {
106+
return err
107+
}
108+
return updateGeneralCRMetricsComponents(ctx, collector, false)
103109
}
104110

105-
func updateCounter(ctx context.Context, collector *OpenTelemetryCollector, up bool) error {
111+
func updateGeneralCRMetricsComponents(ctx context.Context, collector *OpenTelemetryCollector, up bool) error {
112+
meter := otel.Meter(meterName)
113+
modeCounter, err := meter.Int64UpDownCounter(mode)
114+
if err != nil {
115+
return err
116+
}
117+
inc := 1
118+
if !up {
119+
inc = -1
120+
}
121+
modeCounter.Add(ctx, int64(inc), metric.WithAttributes(
122+
attribute.Key("collector_name").String(collector.Name),
123+
attribute.Key("namespace").String(collector.Namespace),
124+
attribute.Key("type").String(string(collector.Spec.Mode)),
125+
))
126+
return nil
127+
}
128+
func updateComponentCounters(ctx context.Context, collector *OpenTelemetryCollector, up bool) error {
106129
meter := otel.Meter(meterName)
107130
receiversCounter, err := meter.Int64UpDownCounter(receivers)
108131
if err != nil {

0 commit comments

Comments
 (0)