• English日本語한국어
  • ログイン今すぐ開始

この機械翻訳は参考用に提供されます。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、こちらのページをご覧ください。

問題を作成する

Redis のコレクター

OpenTelemetry コレクターを使用して、Redis インスタンスに関するメトリクスを収集できます。コレクターは、テレメトリ データを収集、処理し、New Relic (または任意の可観測性バックエンド) にエクスポートする OpenTelemetry のコンポーネントです。Redis レシーバーは、単一の Redis インスタンスから Redis INFO データを取得し、そのデータからメトリクスを構築し、構成可能な間隔で次のコンシューマーに送信するように設計されています。

インストール手順を完了した後、事前に構築されたダッシュボードでこのメトリクス データを表示し、アラート ポリシーを作成し、カスタム クエリとグラフを作成します。

前提条件

Redis メトリクスの収集を開始するには、無料の New Relic アカウントにサインアップする必要があります。

サインアップしたら、次の設定が完了していることを確認してください。

OpenTelemetry コレクターをインストールする

OpenTelemetry ディストリビューションをインストールする

OpenTelemetry Collector Contrib Distroをインストールする必要があります。別のディストリビューションを使用している場合は、選択したディストリビューションに次のコンポーネントが含まれていることを確認してください。

  • Redisレシーバー

  • OTLP/HTTP エクスポータ

  • 属性プロセッサ

  • リソースプロセッサ

  • リソース検出プロセッサ

    重要

    ディストリビューションにこれらのコンポーネントが含まれていない場合、次の手順の構成ファイルは適用されません

OpenTelemetry コレクターを構成する

config.yamlという名前の新しいファイルを更新または作成します。次のスニペットを新しいファイルに挿入します。

receivers:
redis:
endpoint: "<YOUR_REDIS_HOSTNAME>:<REDIS_PORT>"
metrics:
# Enable redis.maxmemory optional metric
redis.maxmemory:
enabled: true
processors:
# This is needed since redis receiver is not currently adding any means to understand to which redis server the metrics are referring to
attributes/redis_metrics:
include:
match_type: regexp
metric_names:
# Notice that if with single or without quotes just one backslash is needed 'redis\..*'
- "redis\\..*"
actions:
- action: upsert
key: server.address
value: "<YOUR_REDIS_HOSTNAME>"
- action: upsert
key: server.port
value: "<REDIS_PORT>"
# resource and resource-detection processors allow decorating the metrics with host attributes
resource:
attributes:
- key: host.id
from_attribute: host.name
action: insert
resourcedetection:
detectors: ["env", "system"]
resourcedetection/cloud:
detectors: ["gcp", "ec2", "azure"]
timeout: 2s
override: false
exporters:
otlphttp:
endpoint: https://otlp.nr-data.net
headers:
api-key: <NEW_RELIC_LICENSE_KEY>
service:
telemetry:
logs:
pipelines:
metrics:
receivers: [redis]
processors:
- resourcedetection
- resourcedetection/cloud
- resource
- attributes/redis_metrics
exporters: [otlphttp]
  • ファイル内の NEW_RELIC_LICENSE_KEY を独自の値に置き換えます。詳細については、 「New Relic ライセンス キー」を参照してください。
  • OTel レシーバーによって Redis メトリクスに識別子が付加されないため、メトリクスをserver.addressおよびserver.portメタデータで修飾するには属性プロセッサが必要です。属性server.addressserver.port 、Redis サーバー間で区別するデータのクエリとファセットを実行したり、New Relic エンティティを作成したりできるようにするために必要です。
  • さらに、複数の Redis サーバーが単一の otel コレクターから監視され、各インスタンスを対応するメタデータで修飾する場合には、 resource/redis_metricsの異なるインスタンスを持つ個別のパイプラインが必要になります。

他の構成オプションについては、次を参照してください。

コレクターを実行する

OpenTelemetry コレクターを実行します (実行方法は、選択したインストール方法によって異なる場合があります)。例:

/usr/bin/otelcol-contrib --config ./config.yaml

データを調べる

OpenTelemetry Redis レシーバーから発信されるテレメトリ データは、適切に装飾されている場合、redis エンティティを生成します。エンティティとは、New Relic にデータを報告するものであり、一意のエンティティ ID によって識別されます。

監視対象のエンティティは、Entity Explorer、Workloads、Lookout などの機能のドライバーです。これらのエクスペリエンスからメリットを得る方法の詳細については、この ドキュメントを 確認してください。

メトリクス エクスプローラーを使用してデータをクエリする

メトリクス エクスプローラーを使用して、取り込まれているメトリクスを確認できます。Redis レシーバーによって報告されるすべてのメトリクスは、 "redis."プレフィックスで始まります。

次の NRQL クエリは、受信したメトリクスをクエリするのに役立つ例を示しています。

  • 取り込まれたメトリック更新の数をメトリック名ごとにリストします。

    SELECT count(*) FROM Metric WHERE metricName LIKE 'redis.%' and instrumentation.provider='opentelemetry' facet metricName LIMIT max
  • ホストごとにファセット化された特定のメトリクスをクエリします。

    SELECT average(redis.commands.processed) FROM Metric WHERE instrumentation.provider='opentelemetry' FACET host.name TIMESERIES
  • 特定のメトリクスで利用可能なディメンションをリストします。

    SELECT keyset() FROM Metric WHERE metricName = 'redis.commands.processed'

    サポートされているすべてのメトリクスのリストについては、 「Redis レシーバー メトリクス リファレンス」を参照してください。

次は何ですか?

New Relic にレポートする Redis データを使用して、 Redis Open Telemetryダッシュボードをインストールできます。これにより、事前に作成されたダッシュボード エクスペリエンスが提供され、Redis インフラストラクチャを追跡および監視できます。

他のコレクターのユースケースに関するヘルプを探している場合は、 newrelic-opentelemetry-examplesリポジトリを参照してください。

Copyright © 2024 New Relic Inc.

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