chore: Added instance identifiers to observation registry filter (#37209)

This commit is contained in:
Nidhi 2024-11-04 23:53:53 +05:30 committed by GitHub
parent c42be908ef
commit 7ccb2ea697
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1,8 +1,10 @@
package com.appsmith.server.configurations;
import com.appsmith.server.annotations.ConditionalOnMicrometerMetricsEnabled;
import io.micrometer.common.KeyValue;
import io.micrometer.core.aop.TimedAspect;
import io.micrometer.core.instrument.MeterRegistry;
import io.micrometer.observation.ObservationFilter;
import io.micrometer.observation.ObservationRegistry;
import io.micrometer.observation.aop.ObservedAspect;
import io.opentelemetry.api.OpenTelemetry;
@ -18,6 +20,7 @@ import io.opentelemetry.sdk.metrics.export.PeriodicMetricReader;
import io.opentelemetry.sdk.resources.Resource;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.actuate.autoconfigure.observation.ObservationRegistryCustomizer;
import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@ -102,4 +105,18 @@ public class MetricsConfig {
ObservedAspect observedAspect(ObservationRegistry observationRegistry) {
return new ObservedAspect(observationRegistry);
}
@Bean
public ObservationRegistryCustomizer<ObservationRegistry> observationRegistryCustomizer() {
return registry -> registry.observationConfig().observationFilter(addGlobalTags());
}
private ObservationFilter addGlobalTags() {
return (observation) -> {
observation.addLowCardinalityKeyValue(KeyValue.of(DEPLOYMENT_NAME_KEY, deploymentName));
observation.addLowCardinalityKeyValue(KeyValue.of(SERVICE_NAME_KEY, SERVICE_NAME));
observation.addLowCardinalityKeyValue(KeyValue.of(SERVICE_INSTANCE_ID_KEY, serviceInstanceId));
return observation;
};
}
}