New Relic admite datos de Micrometer para que puedas ver toda tu observabilidad métrica en una sola plataforma. Configurará el puente OpenTelemetry Micrometer con el SDK de OpenTelemetry y luego utilizará el protocolo OpenTelemetry (OTLP) para reenviar los datos de su Micrometer a New Relic.
Vaya a one.newrelic.com > All Capabilities > APM & Services, luego busque la sección Services - OpenTelemetry : vea los datos de su Micrometer en New Relic cuando esté conectado a través de OpenTelemetry
Compatibilidad y requisitos
Antes de seguir estos procedimientos, debe:
- Configurar el SDK OpenTelemetry métrica para exportar datos a New Relic vía OTLP
- Instale el puente OpenTelemetry Micrometer
Reenviar datos del Micrometer a New Relic
Estos son pasos generalizados para configurar el reenvío Micrometer métrica. Es posible que desee actualizar el fragmento de código según sea necesario para adaptarlo a su entorno específico.
Agregar instrumentación de OpenTelemetry Micrometer
Agregue la instrumentación de OpenTelemetry Micrometer a la sección de módulos alfa de su archivo build.gradle
:
//Alpha modulesimplementation 'io.opentelemetry.instrumentation:opentelemetry-micrometer-1.5'
Agregar dependencia OpenTelemetry
En la sección dependencies
, agregue el SDK de OpenTelemetry y el exportador OTLP:
dependencies { implementation 'io.opentelemetry:opentelemetry-sdk' implementation 'io.opentelemetry:opentelemetry-exporters-otlp'}
Un archivo de ejemplo con módulos alfa y dependencias agregadas podría verse así:
plugins { id 'java-library' id 'org.springframework.boot'}
bootRun { mainClass.set 'io.opentelemetry.example.micrometer.Application'}
dependencies { implementation platform("io.opentelemetry:opentelemetry-bom-alpha:JAVA_OTEL_VERSION") implementation 'io.opentelemetry:opentelemetry-sdk' implementation 'io.opentelemetry:opentelemetry-exporters-otlp'
implementation platform("io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom-alpha:OTEL_JAVA_INSTRUMENTATION_VERSION") implementation 'io.opentelemetry.instrumentation:opentelemetry-micrometer-1.5'}
Tenga en cuenta que deberá actualizar el fragmento con la versión correcta.
Configurar Micrometer para reenviar datos a New Relic
A continuación se muestra un fragmento de código de ejemplo que indica a Micrometer que utilice el puente OpenTelemetry Micrometer.
Este fragmento actualiza su código para que OpenTelemetry pueda detectar datos de Micrometer y luego reenviar esos datos a New Relic:
public OpenTelemetry openTelemetry() { return OpenTelemetrySdk.builder() .setMeterProvider( SdkMeterProvider.builder() .setResource( Resource.getDefault() .toBuilder() .put("service.name", "micrometer-shim") // Include instrumentation.provider=micrometer to enable // micrometer metrics experience in New Relic .put("instrumentation.provider", "micrometer") .build()) .registerMetricReader( PeriodicMetricReader.builder( OtlpHttpMetricExporter.builder() .setEndpoint("https://otlp.nr-data.net/v1/metrics") .addHeader("api-key", Optional .ofNullable(System.getenv("NEW_RELIC_LICENSE_KEY")) .filter(str -> !str.isEmpty() && !str.isBlank()) .orElseThrow()) // IMPORTANT: New Relic exports data using delta // temporality rather than cumulative temporality .setAggregationTemporalitySelector( AggregationTemporalitySelector .deltaPreferred()) // Use exponential histogram aggregation for // histogram instruments to produce better data // and compression .setDefaultAggregationSelector( DefaultAggregationSelector.getDefault().with( InstrumentType.HISTOGRAM, Aggregation.base2ExponentialBucketHistogram())) .build()) // Match default micrometer collection interval of 60 // seconds .setInterval(Duration.ofSeconds(60)) .build()) .build()) .build();}
Encuentra tus datos en New Relic
Espere unos minutos, active algunos datos de prueba, luego vaya a one.newrelic.com > All Capabilities > APM & Services, luego busque Services - OpenTelemetry para elegir el servicio instrumentado con Micrometer.
¿Que sigue?
Para obtener más información sobre el uso de New Relic con datos de Micrometer, recomendamos estos documentos:
- Aprenda a crear visualizaciones personalizadas con el panel
- Configure algunas alertas para realizar un seguimiento del rendimiento del sistema
- Consulta tus datos con NRQL