• EnglishEspañol日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

問題を作成する

OpenTelemetry を使用して Micrometer データを New Relic に転送する

New Relic Micrometer データをサポートしているため、すべての可用性メトリックを 1 つのプラットフォームで表示できます。 OpenTelemetry SDK を使用してOpenTelemetry Micrometer ブリッジを設定し、OpenTelemetry プロトコル (OTLP) を使用して Micrometer データを New Relic に転送します。

one.newrelic.com > All Capabilities > APM & Servicesに移動し、 Services - OpenTelemetryセクションを見つけます。OpenTelemetry を介してブリッジされたときに、New Relic で Micrometer データを表示します。

互換性と要件

これらの手順を実行する前に、次の操作を行う必要があります。

Micrometer データを New Relic に転送する

これらは、Micrometer メトリクス転送を設定するための一般的な手順です。 特定の環境に合わせて、必要に応じてコード スニペットを更新することもできます。

OpenTelemetry Micrometer インストゥルメンテーションを追加

build.gradle ファイルのアルファ モジュール セクションにOpenTelemetry Micrometer インストゥルメンテーションを追加します。

//Alpha modules
implementation 'io.opentelemetry.instrumentation:opentelemetry-micrometer-1.5'

OpenTelemetry依存関係を追加

dependenciesセクションで、OpenTelemetry SDK と OTLP エクスポーターを追加します。

dependencies {
implementation 'io.opentelemetry:opentelemetry-sdk'
implementation 'io.opentelemetry:opentelemetry-exporters-otlp'
}

アルファ モジュールと依存関係が追加されたサンプル ファイルは次のようになります。

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'
}

正しいバージョンでスニペットを更新する必要があることに注意してください。

Micrometer を設定してデータを New Relic に転送する

以下は、Micrometer に OpenTelemetry Micrometer ブリッジを使用するように指示するコード スニペットの例です。

このスニペットはコードを更新し、OpenTelemetry が Micrometer データを検出し、そのデータを 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")
.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();
}

New Relicでデータを探す

数分待ってから、いくつかのテスト データをトリガーし、 one.newrelic.com > All Capabilities > APM & Servicesに移動し、 Services - OpenTelemetryを見つけて、Micrometer でインストゥルメントされたサービスを選択します。

次は何ですか?

Micrometer データで New Relic を使用する方法の詳細については、次のドキュメントを参照してください。

Copyright © 2024 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.