Varnish Cache on-host integration は、Varnish Cache 環境のインベントリとメトリクスを収集し、New Relic に送信することで、その健全性を監視することができます。メトリクスは、インスタンス、ロック、メモリプール、ストレージ、バックエンドの各レベルで収集します。
統合をインストールし、収集するデータを確認するために読んでください。
互換性と要件
Varnish Cache 1.0以上に対応しています。
統合をインストールする前に、次の要件を満たしていることを確認してください。
- インフラストラクチャエージェントをインストールします。
- Linux ディストリビューションまたは Windows バージョン 当社のインフラストラクチャ・エージェントと互換性がある 。
クイックスタート
ガイド付きインストールで、Varnish Cache 環境をすばやくインスツルメンテーションし、テレメトリーデータを送信します。ガイド付きインストールでは、お客様の環境に合わせてカスタマイズされたCLIコマンドを作成し、New Relic CLIとインフラストラクチャ・エージェントをダウンロードしてインストールします。
始める準備はできましたか?これらのボタンのいずれかをクリックして試してください。
ガイド付きインストールでは、インフラストラクチャ・エージェントを使用して、Varnish Cacheの統合を設定します。それだけでなく、あなたの環境で稼働している他のアプリケーションやログソースを発見し、どのアプリケーションを導入すべきかを推奨してくれます。
このガイド付きインストールは、ほとんどのセットアップに対応しています。Varnish Cache環境の監視を開始するには、以下の方法がありますので、ご利用ください。
インストールしてアクティブ化する
Varnish Cacheインテグレーションをインストールするには、以下の手順に従います。
その他の注意事項:
- Advanced: tarball ファイルから統合をインストールすることもできます。 これにより、インストールと設定のプロセスを完全に制御できるようになります。
- On-host integrations do not automatically update. 最善の結果を得るため、インテグレーションパッケージの更新とInfrastructureエージェントの更新を定期的に実施してください。
このドキュメントはインストールの役に立ちましたか?
統合を構成する
統合のYAML形式の構成では、必要なログイン資格情報を配置し、データの収集方法を構成できます。どのオプションを変更するかは、セットアップと設定によって異なります。
構成ファイルには、 interval
、 timeout
、 inventory_source
などのすべての統合に適用できる共通の設定があります。これらの一般的な設定の詳細については、 構成フォーマットのドキュメントを参照してください。
重要
従来の設定/定義ファイルを使用している場合は、こちらの ドキュメント を参照してください。
Varnish に関連する特定の設定は、構成ファイルのenv
セクションを使用して定義されます。これらの設定は、Varnish インスタンスへの接続、およびその他のセキュリティ設定と機能を制御します。有効な設定のリストについては、次のセクションで説明します。
Varnish Cacheインスタンスの設定
Varnish Cache インテグレーションは、メトリクス ( M ) 情報とインベントリ ( I ) 情報の両方を収集します。 それぞれのコレクションに使用できる設定を確認するには、以下のApplies To列を確認してください。
''
設定 | 説明 | デフォルト | に適用されます |
---|---|---|---|
INSTANCE_NAME | New Relic でこのインスタンスのデータを識別するためのユーザー定義の名前。 Required 。 | 該当なし | M / I |
PARAMS_CONFIG_FILE |
| 該当なし | 私 |
VARNISH_NAME | カスタム | 該当なし | M |
METRICS | メトリックのみの収集を有効にするには、 |
| |
INVENTORY | インベントリのみの収集を有効にするには、 |
|
varnish-config.yml
コマンドは次の引数を受け入れます:
これらの設定の値は、いくつかの方法で定義できます。
- 設定ファイルに直接値を追加します。これが最も一般的な方法です。
{{}}
表記を使用して環境変数の値を置き換えます。これには、インフラストラクチャエージェントv1.14.0以降が必要です。詳細はこちらをご覧ください。- シークレット管理を使用します。これを使用して、構成ファイルにプレーンテキストで公開されるパスワードなどの機密情報を保護します。詳細については、シークレット管理を参照してください。
ラベル/カスタム属性
環境変数は、 などの構成設定を制御するために使用でき、その後、インフラストラクチャエージェントに渡されます。 この機能の使用方法については、 「インフラストラクチャエージェントの構成」を参照してください。 ラベルを使用してメトリクスをさらに装飾することができます。 ラベルを使用すると、メトリクスにキー値のペア属性を追加して、メトリクスのクエリ、フィルタリング、またはグループ化に使用できます。
デフォルトのサンプル設定ファイルにはラベルの例が含まれていますが、必須ではないため、必要に応じてラベルを削除、変更、または追加することができます。
labels: env: production role: varnish
構成例
varnish-config.yml
ファイル構成の例:
オンホスト統合構成の一般的な構造の詳細については、「 構成」を参照してください。
データを見つけて使用する
New Relicでインテグレーション データを検索するには、one.newrelic.com > All capabilities > Infrastructure > Third-party services に移動し、Varnish Cache インテグレーション リンクの 1 つを選択します。
New Relic では、Varnish Cache のデータは以下のイベントタイプに添付されます。
VarnishSample
VarnishLockSample
VarnishStorageSample
VarnishMempoolSample
VarnishBackendSample
データを検索して使用する方法の詳細については、統合データについてを参照してください。
メトリックデータ
Varnish Cache 統合は、次のメトリック データ属性を収集します。各メトリック名には、 bans.
やmain.
などのカテゴリ インジケータとピリオドがプレフィックスとして付けられます。
ヒント
いくつかのメトリクスは、メトリクス名から想像されるように、合計ではなくレート(1秒あたり)として計算されます。どのメトリクスがレートとして計算されるかの詳細については、 spec.csvファイルを参照してください。.
Varnishのサンプルメトリクス
これらの属性は、VarnishSampleのイベントタイプを照会することで見つけることができます。
メトリック | 説明 |
---|---|
| 最大接続数に達した回数。 |
| バックドへの接続に失敗した数。 |
| リサイクルされたバックエンドコネクションの数。 |
| 再試行されたバックエンド接続の数。 |
| バックエンド接続の再利用数 |
| バックエンドとの接続に成功した数。 |
| バックエンドの状態が「不健全」であったために試行されなかったバックエンド接続の数。 |
| 開始されたバックエンドのフェッチの合計数。 |
| バックエンドへの接続リクエストの総数。 |
| BANリストに追加されたBANのカウンター |
| 完了」と表示された禁止事項の数 |
| カットオフ(ルーラー)の禁止によって殺されたオブジェクトの数。 |
| BANリストから削除されたBANのカウンター |
| 後の同一バンに置き換えられたバンの数。 |
| 永続化された禁止リストが断片化されているため、余分なバイトが発生する。 |
| オブジェクトの検索中に禁止令によって殺されたオブジェクトの数。 |
| ルックアップ時にテストとオブジェクトが相互にテストされた数をカウントします。 |
| バンラーカーがルックアップを待たされた回数。 |
| バンラーカーに殺されたオブジェクトの数。 |
| BAN-LURKERがどれだけBANとオブジェクトをテストしたかのカウント。 |
| BAN-LURKERが実施したテストやオブジェクトの数をカウントします。 |
|
|
| 永続化された禁止リストが使用するバイト数。 |
|
|
| ハッシュ検索の際に、いくつの禁止事項とオブジェクトが互いにテストされたかのカウント。 |
| 猶予のあるキャッシュ ヒットの数。猶予のあるキャッシュ ヒットは、オブジェクトの有効期限が切れているキャッシュ ヒットです。これらのヒットは |
| バックエンドサーバーからオブジェクトを取得せずに、クライアントに配信した回数。 |
| クライアントに配信する前に、バックエンドからオブジェクトをフェッチした回数。 |
| ミス・レスポンスに対してヒット・オブジェクトが返された回数。 |
| パス・レスポンスでヒット・オブジェクトが返された回数。 |
| ESI(Edge Side Includes)の解析エラー(ロック解除)。 |
| Edge Side Includes(ESI)のパース警告(ロック解除)を行います。 |
|
|
|
|
| content-length の |
| EOF 付きの |
|
|
| リクエストが HEAD であるため、本文のない |
| 本体のない |
| 1XX 応答のため、本体のない |
| 204 応答のため、本文のない |
| 304 応答のため、本体のない |
|
|
| クリティカル・ビット・ツリー・ベースド・ハッシュ(HCB)の挿入数。 |
| ロック付きHCBルックアップの数 |
| ロックのないHCBルックアップの数 |
| より多くのストレージスペースが必要だったが、制限に達した回数。 |
| LRUリストで行われた移動操作の数。 |
| 新しいオブジェクトのためのスペースを確保するために、ストレージから強制的に退避させられたLRU(Lest Recently Used)オブジェクトの数。 |
| バックエンドの数 |
| 禁止事項の数 |
| ビジー状態のobjhdrでスリープ後にキルされたリクエストの数。 |
| 忙しいobjhdrのスリープに送られたリクエストの数。 |
| ビジー状態のobjhdrでスリープ後に起こされたリクエストの数。 |
| 期限切れのオブジェクトの数。 |
| 期限切れのスレッドにメールされたオブジェクトの数。 |
| expiryスレッドが受信したオブジェクトの数。 |
| gunzipの操作回数。 |
| テスト用 gunzip 操作の回数。 |
| gzip操作の回数。 |
| 作られたobjectcore構造体の数。 |
| オブジェクト化された構造体の作成数 |
| 作られたオブジェクト構造体の数 |
| 見られたパス・レッド・リクエストの総数 |
| 見られたパイプセッションの総数 |
| スレッドプールの数。 |
| パージされたオブジェクトの数。 |
| 実行されたパージ操作の数。 |
| ドロップしたリクエストの数 |
| 見たセッションの総数 |
| スレッドを待つセッションキューの長さ。 |
| スレッドごとの統計値がグローバルカウンタに合計された回数。 |
| 行われたシンセティックな回答の合計。 |
| スレッドの総数です。 |
| すべてのプールで作成されたスレッドの合計数。 |
| 全プールで破壊されたスレッドの合計数。 |
| スレッドの作成に失敗した回数。 |
| より多くのスレッドが必要だったが、スレッドプールの制限に達した回数。 |
| 復活していないオブジェクトの数 |
| 子プロセスの稼働時間をミリ秒単位で表します。 |
| 利用可能なVarnish Configuration Languages (VCL)の数。 |
| 廃棄されたVCLの数。 |
| VCLの故障数。 |
| ロードされたVCLの合計数 |
| ロードされたVarnishモジュールの数(VMOD)。 |
| 子プロセスがシグナルにより死亡した回数。 |
| 子プロセスがコア・ダンプを生成した回数。 |
| 子プロセスがクリーンに停止した回数。 |
| 管理プロセスが子供のパニックを捉えた回数。 |
| 子プロセスが開始された回数。 |
| 子プロセスがクリーンに停止した回数。 |
| 管理プロセスの稼働時間(単位:ミリ秒)。 |
| 受信したクライアントのリクエスト数(400エラーを含む)。 |
| 受信したクライアント・リクエストの数(417件のエラーを含む |
| HTTPヘッダーのオーバーフローの数。 |
| パイプセッションでクライアントから転送された総バイト数。 |
| パイプセッションでクライアントに転送された総バイト数。 |
| パイピングされたセッションで受信したリクエストの総バイト数 |
| 送信されたリクエスト・ボディの総量(単位:バイト)。 |
| 送信されたリクエストヘッダーの合計(バイト)。 |
| 受信したグッド・クライアント・リクエストの数 |
| 送信されたレスポンスボディの合計(単位:バイト)。 |
| 送信されたレスポンスヘッダーの合計(バイト)。 |
| エラー |
| エラー |
| エラー |
| エラー |
| エラー |
| 閉鎖されたセッションの総数 |
| エラーで終了したセッションの合計数 |
| スレッドでドロップされたセッションの数 |
| エラー |
| エラー |
|
|
| エラー |
| エラー |
| エラー |
| エラー |
| エラー |
| スレッドにキューイングされているセッションの数。 |
| Session Read Ahead。 |
| エラー |
| エラー |
| エラー |
| エラー |
| エラー |
| 受け付けに成功したセッションの数 |
| ワーカースレッドが不足しているために静かにドロップしたセッションの数。 |
| TCP接続の受け入れに失敗した回数。 |
| 共有メモリ(SHM)のMTXのコンテンションの数。 |
| バッファを通過したSHMサイクルの数 |
| オーバーフローによるSHMフラッシュの回数。 |
| SHMレコードの数 |
| SHMの書込み回数 |
|
|
|
|
| ワークスペースが不足しているため、配信に失敗しました。 |
|
|
|
|
Varnishロックのサンプルメトリクス
これらの属性は、 VarnishLockSample
イベントタイプを照会することで見つけることができます。
メトリック | 説明 |
---|---|
| 作成されたロックの数。 |
| 破壊されたロックの数 |
| ロック操作の回数。 |
Varnishストレージのサンプルメトリクス
これらの属性は、 VarnishStorageSample
イベントタイプを照会することで見つけることができます。
メトリック | 説明 |
---|---|
| ストレージがストレージセグメントの提供に失敗した回数。 |
| このストレージで割り当てられた総バイト数。 |
| ストレージ割り当ての未処理数。 |
| ストレージが、ストレージセグメントの提供を求められた回数。 |
| ストレージに残っているバイト数。 |
| このストレージに戻ってきた総バイト数 |
| ストレージから割り当てられたバイト数。 |
Varnish mempool サンプルメトリクス
これらの属性は、 VarnishMempoolSample
イベントタイプを照会することで見つけることができます。
メトリック | 説明 |
---|---|
| メモリプールの割り当てサイズ(単位:バイト)。 |
| メモリプールの割り当てを行います。 |
| メモリプールの空き数。 |
| 使用中のメモリプールの数。 |
| メモリプールのカウント |
| プールが干上がった。 |
| プールからの再利用 |
| メモリプールの要求サイズ(単位:バイト)。 |
| プールには多すぎます。 |
| プールからタイムアウト。 |
| リサイクルするには小さすぎる。 |
Varnishバックエンドのサンプルメトリクス
これらの属性は、 VarnishBackendSample
イベントタイプを照会することで見つけることができます。
メトリック | 説明 |
---|---|
| バックエンドがビジー状態のため、取り込みができませんでした。 |
| バックエンドへの同時接続数。 |
| 失敗したバックエンド接続の数 |
| 試されなかったバックエンド接続オープンの数。 |
| 幸せな健康診断 |
| バックエンドが健全でないため、取り込みが行われない |
| パイピングされたセッションで送信された総リクエストバイト数です。 |
| パイプセッションでバックエンドから転送された総バイト数。 |
| パイプセッションでバックエンドに転送された総バイト数。 |
| 送信されたバックエンドのリクエストボディの総バイト数。 |
| 送信されたバックエンドリクエストヘッダの総バイト数。 |
| 送信されたバックエンドリクエストの数。 |
| 受信したバックエンドのレスポンスボディの総バイト数。 |
| 受信したバックエンドのレスポンスヘッダの総バイト数。 |
在庫データ
Varnish Cache 統合は、構成パラメーターをキャプチャします。アクティブなすべてのパラメーターについてvarnish.params
構成ファイルを解析します。
データは、 config/varnishソースの下にあるインベントリ ページで入手できます。 インベントリデータの詳細については、 「インベントリデータを理解する」を参照してください。
ソースコードを確認してください
この統合はオープン ソース ソフトウェアです。つまり、ソース コードを参照して改善を送信したり、独自のフォークを作成してビルドしたりできます。