New Relic suporta dados do Micrometer para que você possa visualizar todas as suas métricas de observabilidade em uma plataforma. Você configurará a ponte OpenTelemetry Micrometer com o OpenTelemetry SDK e, em seguida, usará o OpenTelemetry Protocol (OTLP) para encaminhar os dados do Micrometer para o New Relic.
Vá para one.newrelic.com > All Capabilities > APM & Services e encontre a seção Services - OpenTelemetry : Visualize seus dados do Micrometer no New Relic quando interligados por OpenTelemetry
Compatibilidade e requisitos
Antes de executar esses procedimentos, você deve:
- Configure o OpenTelemetry métrica SDK para exportar dados para New Relic via OTLP
- Instale a ponte do OpenTelemetry Micrometer
Encaminhar dados do Micrometer para New Relic
Estas são etapas generalizadas para configurar o encaminhamento métrico do Micrometer. Você pode querer atualizar o trecho de código conforme necessário para se adequar ao seu ambiente específico.
Adicionar instrumentação OpenTelemetry Micrometer
Adicione a instrumentação do OpenTelemetry Micrometer à seção de módulos alfa do arquivo build.gradle
:
//Alpha modulesimplementation 'io.opentelemetry.instrumentation:opentelemetry-micrometer-1.5'
Adicionar dependência OpenTelemetry
Na seção dependencies
, adicione o OpenTelemetry SDK e o exportador OTLP:
dependencies { implementation 'io.opentelemetry:opentelemetry-sdk' implementation 'io.opentelemetry:opentelemetry-exporters-otlp'}
Um arquivo de exemplo com módulos alfa e dependência adicionados pode ser parecido com isto:
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'}
Lembre-se de que você precisará atualizar o trecho com o versionamento correto.
Configure o Micrometer para encaminhar dados para o New Relic
Abaixo está um exemplo de trecho de código que orienta o Micrometer a usar a ponte OpenTelemetry Micrometer.
Este trecho atualiza seu código para que OpenTelemetry possa detectar dados do Micrometer e encaminhá-los para o 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();}
Encontre seus dados no New Relic
Aguarde alguns minutos, acione alguns dados de teste, vá para one.newrelic.com > All Capabilities > APM & Services e encontre Services - OpenTelemetry para escolher o serviço instrumentado com Micrometer.
Qual é o próximo?
Para saber mais sobre como usar dados do New Relic com Micrometer, recomendamos estes documentos:
- Aprenda a criar visualizações personalizadas com painel
- Configure alguns alertas para acompanhar o desempenho do sistema
- Consulte seus dados com NRQL