• /
  • ログイン
  • 無料アカウント

Redisモニターインテグレーション

当社のRedisインテグレーションは、ご利用の Redisサーバーから重要なパフォーマンスデータをNew Relic製品にレポートします。このメトリックデータインベントリデータに関するプレビルドダッシュボードを閲覧し、アラートポリシーを作成して、カスタムクエリおよびチャートを作成することができます。また、ご利用のアプリケーションにとって重要なキーを指定して、その長さに関する詳細を入手することもできます。

インテグレーションのインストールと、当社がどのようなデータを収集するかについてお読みください。

互換性および要件

当社のインテグレーションは、Redisバージョン3.0以上と互換性があります。

インテグレーションをインストールする前に、以下の要件を満たしていることを確認してください。

このインテグレーションは、Redisコマンドを実行することでデータを取得します。

  • INFOコマンド:INFOコマンドによるデータが、メトリックデータと一部のインベントリデータを入力します。

  • CONFIG GETコマンド:大半のインベントリデータは、このコマンドによって取得できます。

    • CONFIG コマンドの実行許可を持たないマネージドRedisインスタレーション(例:AWS ElastiCache)では、このコマンドの実行を config_inventory: false 設定オプションで無効にできます。
  • キーの長さの取得:キーの種類によっては、以下のコマンドを使用します

    • listタイプに対してLLEN
    • setタイプに対してSCARD
    • zsetタイプに対してZCOUNT
    • hashタイプに対してHLEN

キーの長さに関するデータ収集において、エージェントは パイプライニングを使用してRedisのパフォーマンスへの影響を最小限に抑えます。ただし、多数のキーの長さを収集している場合は、Redisのパフォーマンスにも影響が出る場合があります。こうした理由から、エージェントにはデフォルトのキー制限が含まれています(ただし、この制限は上書き可能)。

重要

上記のRedisコマンド名を修正した場合、インテグレーションがRedisデータを回収できなくなります。

クイックスタート

Redisサーバーを迅速に計装し、ガイド付きインストールでテレメトリデータを送信します。ガイド付きインストールは、New Relic CLIおよびインフラストラクチャエージェントをダウンロードおよびインストールする環境用にカスタマイズされたCLIコマンドを作成します。

ガイド付きインストールCLIのスクリーンショット。

始める準備はできていますか?ボタンの1つをクリックし、試行してください。

ガイド付きインストール

インストールと有効化

Redisインテグレーションをインストールするには、お使いの環境の指示に従います:

追加の注:

' '

お使いのRedisサーバーのNew Relicユーザーの作成

Redis 6+を使用しており、アクセスコントロールリスト(ACL)を使用してインスタンスへのアクセスを制御する場合は、インテグレーション用のnewrelicユーザーを作成することをお勧めします。このコマンドを使用して、必要な権限を作成してユーザーに付与します。

ACL SETUSER newrelic on >'YOUR_SELECTED_PASSWORD' ~* +INFO +CONFIG|GET +SELECT +TYPE +LLEN +SCARD +ZCOUNT +HLEN

インテグレーションの設定

インストールの方法により、インテグレーションの設定方法はいくつかあります。

YAML設定を使用して、必要なログイン認証情報を配置し、セットアップと設定に応じてデータの収集方法を設定します。

設定ファイルには、間隔タイムアウトinventory_sourceなど、すべてのインテグレーションに適用される共通設定があります。これらの共通設定の詳細については、YAML設定形式を参照してください。

重要

レガシーの設定/定義ファイルを引き続き使用する場合は、旧バージョンの標準設定形式を使用してください。

設定ファイルのenvセクションを使用して、Redisに関連する特定の設定を定義します。これらの設定は、Redisインスタンスへの接続、およびその他のセキュリティ設定と機能を制御します。

Redisインスタンス設定

Redisインテグレーションは、メトリクス(M)とインベントリ(I )の両方の情報を収集します。このテーブルでは、各収集に使用可能な設定にApplies To列を使用します。

' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '

設定

説明

デフォルト

適用先

HOSTNAME

Redisサーバーのホスト名。

localhost

M/I

ポート

Redisサーバーがリッスンするポート。

6379

M/I

ユーザー名

Redisサーバーに接続する際のユーザー名。ACLが有効な場合、Redis 6+でのみ使用します。

該当なし

M/I

パスワード

Redisサーバーに接続する際のパスワード。REQUIREPASSまたはACLが有効な場合、Redisサーバーでのみ使用します。

該当なし

M/I

UNIX_SOCKET_PATH

RedisサーバーがリッスンしているUnixソケットファイルへのパス。ホスト名/ポートの代わりにこれを使用。

該当なし

M/I

USE_UNIX_SOCKET

trueに設定すると、Unixソケットを使用するときに監視されるエンティティが一意に識別されます。

false

M/I

USE_TLS

Redisサーバーとの通信時にTLSを使用します。

false

M/I

TLS_INSECURE_SKIP_VERIFY

TLS経由で接続する場合、サーバー名の検証を無効にします。

false

M/I

キー

長さを読みだすキーの一覧。

該当なし

M

KEYS_LIMIT

長さを読みだすキーの最大数。

30

M

CONFIG_INVENTORY

Redis CONFIGコマンドが許可されていない環境では「false」に設定します(AWSやElastiCacheなど)。

true

I

RENAMED_COMMANDS

デフォルトのRedisコマンドを名前変更されたフォームにマッピングします。

該当なし

M/I

REMOTE_MONITORING

マルチテナンシー監視を有効にします。

true

M/I

メトリクス

trueに設定すると、メトリクスのみの収集が有効になります。

false

インベントリ

trueに設定すると、インベントリのみの収集が有効になります。

false

これらの設定値は、いくつかの方法で定義できます。

  • 設定ファイルに直接値を追加します。これは最も一般的な方法です。
  • {{}}表記を使用して、環境変数の値を置き換えます。これには、インフラストラクチャエージェント1.14.0以降が必要です。詳細については、インフラストラクチャエージェントのパススルー環境変数を参照してください。
  • 設定ファイルのプレーンテキストで公開されないように、シークレット管理を使用して、パスワードなどの賢明な情報を保護してください。詳細については、シークレット管理を参照してください。

ラベルとカスタム属性

また、メトリクスをラベルで装飾することもできます。ラベルを使用すると、キー/値のペア属性をメトリクスに追加して、メトリクスをクエリ、フィルター、グループ化できます。

デフォルトのサンプル設定ファイルにはラベルの例が含まれていますが、これらはオプションです。削除、変更、または新しいものを追加することができます。

labels:
env: production
role: load_balancer

設定の例

データの検索と使用

このサービスからのデータは、インテグレーションダッシュボードにレポートされます。

メトリクスはRedisSampleおよびRedisKeyspaceSampleイベントタイプに関連付けられます。トラブルシューティング目的で、またはカスタムのチャートとダッシュボードを作成するために、このデータのクエリを行えます。

データの検索・使用方法の詳細については、 インテグレーションデータを理解するを参照してください。

メトリックデータ

Redisインテグレーションは、以下のメトリックデータ属性を収集します。

Redisサンプルメトリックス

これらの属性は、RedisSampleイベントタイプに関連付けられます:

名前

説明

cluster.connectedSlaves

接続したスレーブの数。

db.aofLastRewriteTimeInMilliseconds

最後に行ったAOFの修正操作の時間(ミリ秒)。

db.aofLastBgrewriteStatus

最後に行ったAOFのバックグラウンド修正のステータスを示すブール表現。

db.aofLastWriteStatus

最後に行ったAOF書込み操作のステータスを示すブール表現。

db.evictedKeysPerSecond

1秒あたりのmaxmemory制限によって却下されたキーの数。

db.expiredKeysPerSecond

1秒あたりのキーの無効化イベントの数。

db.keyspaceHitsPerSecond

1秒あたりにメインディクショナリでキー検索が成功した回数。

db.keyspaceMissesPerSecond

1秒あたりにメインディクショナリでキー検索が失敗した回数。

db.latestForkUsecMilliseconds

最後に行ったフォーク操作の時間(ミリ秒)。

db.rdbBgsaveInProgress

ブール値。RDBによる保存が進行中であることを示すフラグ。

db.rdbChangesSinceLastSave

最後のダンプが行われてからの変更数。

db.rdbLastBgsaveStatus

最後に行ったRDBの保存操作のステータスを示すブール表現。

db.rdbLastBgsaveTimeMilliseconds

最後に行ったRDBの保存操作の時間(ミリ秒)。

db.rdbLastSaveTime

最後に成功したRDB保存のエポックに基づくタイムスタンプ(秒)。

db.syncFull

スレーブがこのマスターと完全に同期した回数。

db.syncPartialErr

部分同期の完了が失敗に終わった回数。

db.syncPartialOk

部分同期が完了した回数。

net.blockedClients

ブロッキングコールで保留中のクライアント数(BLPOPBRPOPBRPOPLPUSH)。

net.clientBiggestInputBufBytes

現在のクライアント接続の中で最大の入力バッファ。

net.clientLongestOutputList

現在のクライアント接続の中で最大の出力リスト。

net.commandsProcessedPerSecond

1秒あたりにサーバーが処理するコマンドの数。

net.connectedClients

クライアント接続の数(スレーブ接続を除く)。

net.connectionsReceivedPerSecond

1秒あたりにサーバーによって受け入れられた接続の数。

net.inputBytesPerSecond

1秒あたりの入力バイトの合計数。

net.outputBytesPerSecond

1秒あたりの出力バイトの合計数。

net.pubsubChannels

クライアントサブスクリプションを持つpub/subチャネルのグローバルな数。

net.pubsubPatterns

クライアントサブスクリプションを持つpub/subパターンのグローバルな数。

net.rejectedConnectionsPerSecond

maxclientsによる制限を理由に却下された1秒あたりの接続数。

software.uptimeMilliseconds

Redisサーバーを起動してから経過時間(ミリ秒)。

system.memFragmentationRatio

used_memory_rssused_memoryの比率。

system.totalSystemMemoryBytes

Redisが稼働中のインスタンスで利用可能なメモリ量(バイト数)。

system.usedCpuSysMilliseconds

Redisサーバーで使用されるシステムのCPU(ミリ秒)。

system.usedCpuSysChildrenMilliseconds

バックグラウンド処理で使用されるシステムのCPU(ミリ秒)。

system.usedCpuUserMilliseconds

Redisサーバーが使用するユーザーのCPU(ミリ秒)。

system.usedCpuUserChildrenMilliseconds

バックグラウンド処理で使用されるユーザーのCPU(ミリ秒)。

system.usedMemoryBytes

Redisがそのアロケーター(標準libcjemalloc、またはtcmallocなどの代替アロケーター)を使用して割り当てた合計バイト数。

system.usedMemoryLuaBytes

Luaエンジンが使用したバイト数。

system.usedMemoryPeakBytes

Redisによるピークメモリ使用量(バイト数)。

system.usedMemoryRssBytes

オペレーティングシステムから分かる、Redisが割り当てたバイト数(別名RSS=resident set size)。これは、top(1)ps(1)などのツールによってレポートされる数値です。

キースペースのメトリックス

Redisインテグレーションは、以下のキースペースのメタデータおよびメトリクスを収集します。これらの属性は、RedisKeyspaceSampleイベントタイプに関連付けられます:

名前

説明

db.avgTtl

レポートされるデータベース内で有効期限を設定されたキーの平均有効期間(TTL)(ミリ秒)。

db.keys

レポートされるデータベース内のキーの数。

db.keyspace

Redisデータベースの整数のインデックスです(通常、015の間の数値)。フォーマット:dbの後にデータベースのインデックスが続きます。例:db0db1db2など

db.expires

レポートされるデータベース内の有効期間のあるキーの数。

インベントリデータ

インベントリデータには、Redisサーバーにパスワードを保管するrequirepassを除いた、Redis CONFIG GETコマンドによって報告されたデータのすべてが含まれます。インベントリデータの詳細に関しては、 インベントリデータを理解するを参照してください。

その他のシステムデータ

Redisインテグレーションは、Redisサービスに関する以下の追加 属性 を収集します。

名前

説明

software.version

Redisサーバーのバージョン。例:3.2.3

cluster.role

監視されているRedisノードの役割に応じて、masterまたはslave

ソースコードのチェック

このインテグレーションはオープンソースソフトウェアです。つまり、ソースコードを参照して改善を送信したり、独自のフォークを作成して構築したりできます。

問題を作成する
Copyright © 2022 New Relic Inc.