チャートの分析によってインサイトを取得する
チャートの分析によってインサイトを取得する
Splunk Infrastructure Monitoring の分析を使用すると、未加工のメトリクスデータを表示するチャートをパターンや傾向をより深く把握するための強力なツールに変えることができ、インフラストラクチャ、アプリケーション、またはサービスの正常性をより効果的に監視できます。このセクションでは、以下を行う方法について説明します。
-
group‑by を使って、集計レベルでサービス別の使用率を比較する
-
同じチャートに表示して複数のメトリクスを相互に関連づける
-
時間、日、週、その他の履歴パターンと現在値を比較する
-
時系列式を使ってパーセンテージまたは比率を見る
-
単純な外れ値やランキングを確認するために、Top N と Bottom N のリストを表示する
-
ヒストグラムを使用して分布の変化を確認する
-
一時的な山や谷に注目するのではなく、一般的なパターンを見るためにデータを 平滑化する
このセクションでは、あなたが以下のトピックに精通していることを前提としています。
サービスやその他のメタデータ別で集計を比較する
ホスト、仮想マシン、コンテナなど、それなりの規模のインフラストラクチャメトリクスを見る場合、ほとんどのケースにおいて、個々のインスタンスを見るよりも集計レベルで見て集計を比較した方が有益です。多くの分析関数ではメタデータ別で出力をグループ化することができ、このような目的に最適です。
-
集計レベル(サービス全体など)で比較したいメトリクスを選択し、プロットAの「シグナル」フィールドにその名前を入力します。この例では、
demo.trans.latencyをプロットしています。 -
[Analytics] フィールドで、[
mean:aggregation] などの適用する関数を選択します。選択すると、各時間間隔のすべての時系列にわたる集計の平均値を表示する単一のプロット線が、チャートに表示されます。 -
プロットに対して選択した関数をクリックします。[Group‑By] ドロップダウンをクリックします。「service」(「service」という名前のディメンションで送信している場合)や、「aws_availability_zone」(AWS を使用している場合)、またはその他のメタデータなど、グループ化したいメタデータを選択します。この例では、[
demo_datacenter] を選択しました。 -
これで、各サブグループの全リソース(hosts/vm/container)にわたって集計されたメトリクスを見ることができます。データテーブルに示されているように、各プロット線は 2 つの [
demo_datacenters] のいずれかを表します。
より長い時間範囲で山と谷を保持する
デフォルトでは、Splunk Infrastructure Monitoring が、選択した時間範囲とチャート解像度に適したロールアップを選択します。たとえば、10 秒ごとにメトリクスを Infrastructure Monitoring に送信していて、そのメトリクスタイプがゲージであるとします。1 ヵ月分のメトリクスをチャートで確認する場合、表示するデータポイントが多すぎます(6 データポイント/分 x 60 分/時 x 24 時間/日 x 30 日/月 = 259,200 データポイント)。
この場合、Infrastructure Monitoring はゲージメトリクスに対してデフォルトの Average 視覚エフェクトロールアップを適用します。このロールアップにはデータが平均化される効果があり、より高い解像度で表示される山や谷が分かりにくくなります。
山や谷を保持するには、ロールアップを [max] または [min] に変更して、メトリクスとの関連性が高い方に設定します。Y 軸の値の範囲は、元の視覚エフェクトの範囲からは変更される場合があります。この図では、プロット A を複製し、プロット B のロールアップを [max] に変更します(さらに、違いが見やすくなるようにプロット B の色を変更します)。プロット線を複製するには、プロット線の右端にあるプロットのアクションメニュー(⋯)を開き、[Clone] を選択します。プロットの色の変更については、「プロット設定パネルでオプションを設定する」を参照してください。
山と谷をさらに目立つようにするには、 チャートの表示解像度を増やします。ここでは、デフォルトから [Very High] に変更します。違いがより見やすくなります。
より短いタイムフレームを選択すると、可視性も向上します。ここでは、時間範囲を過去 20 日間から過去 1 週間に変更します。
ロールアップ、チャート解像度、および分析の相互作用の詳細については、「チャートのデータ解像度とロールアップ」を参照してください。
複数のメトリクスを関連付ける
より簡単に動作を関連付けるために、同じチャートで複数のメトリクスを視覚化すると便利なことがよくあります。たとえば、トランザクションの遅延とともに、1 秒あたりに発生するトランザクションの数を確認できます。Splunk Infrastructure Monitoring を使用すると、1 つのチャートに必要な数のメトリクスを表示できます。また、メトリクスの値の範囲が大幅に異なる場合は、2 つの Y 軸を利用できます。
-
比較したいメトリクスを選択し、プロットAの「シグナル」フィールドにその名前を入力します。この例では、
demo.trans.latencyを使用しています。 -
2 番目のメトリクスを選択し、プロット B で使用します。ここでは
demo.trans.countを選択しました。
-
プロット B で、[Y-Axis] をクリックし、[right] を選択します。詳細については、「左右の Y 軸」を参照してください。
-
各プロット線に視覚エフェクトタイプオプションを使用し、A には [Line]、B には [Column] などのように A と B に異なるタイプを選択します。詳細については、「資格エフェクトのタイプ」を参照してください。この例では、プロット設定オプションを使用してプロット線 B の色を変更し、見やすくしました。詳細については、「プロットの色」を参照してください。
週単位、日単位、時間単位での比較を表示する
アプリやインフラストラクチャが正常な範囲内で動作しているかどうかを把握するために時刻や週が重要になる場合、またはビジネスで周期的または定期的な需要が発生する場合(平日と週末が大きく異なる場合など)には、1 週間、1 日、1 時間単位での変化を強調するチャートを作成できます。(Splunk Infrastructure Monitoring では、これらの時間間隔だけでなく、任意の時間枠を使用して比較を行うことができます。)
-
最初のプロット(プロット A)を使って対象のメトリクスを表示してから、プロット A を複製してプロット B を作成します。(プロット線を複製するには、プロット線の右端にあるプロットのアクションメニュー(⋯)を開き、[Clone] を選択します。)この例では、シグナルとして
memory.usage.totalを使用しています。 -
プロット B に Timeshift 関数を追加し、変化が重要となる時間範囲を入力します。たとえば、5 分間なら「
5m」、2 日間なら「2d」、1 週間なら「1w」を使用します。 -
プロット C で、[Enter Formula] をクリックして、「
A-B」と入力し、現在と 1 週間前の差を見ます。 -
プロット設定パネルを使用して、プロット C に面グラフの視覚エフェクトを指定します。詳細は、「プロット設定パネル」を参照してください。
Timeshift関数を使って傾向を把握する
インフラストラクチャやアプリケーションの監視においては、メトリクスの絶対値そのものよりも、メトリクスの傾向(メトリクスが変化している割合)の方が注目される場合があります。たとえば、CPU の使用率が 70% であることを知ることはあまり重要ではないかもしれませんが、使用率が過去 10 分間に一貫して 2 倍になっていることを知ることは重要かもしれません。これはシステムが障害に向かっていることを示しているかも知れないためです。
-
最初のプロット(プロット A)を使って対象のメトリクスを表示し(ここでは
cpu.utilizationの平均を使用)、次にプロット A を複製してプロット B を作成します。(プロット線を複製するには、プロット線の右端にあるプロットのアクションメニュー(⋯)を開き、[Clone] を選択します。) -
プロット B に Timeshift 関数を追加し、変化が重要となる時間範囲を入力します。たとえば、5 分間なら「
5m」です。 -
プロットCで、
(A/B-1)という式を入力し、scale:100の関数を追加して、変化率をパーセンテージで表します。 -
プロットCの横にある目のアイコンをAltクリックまたはoptionクリックすると、そのプロットのみが表示され、5分前からのディスク使用率の変化率が表示されます。
-
プロットCのプロット名を編集し、チャートの上にカーソルを置いたり、データテーブルを表示したときに、有用な情報が表示されるようにします。
パーセンテージまたは比率を使用する
そのままのメトリクスではなく、パーセンテージまたは比率の表示が必要となる場合があります。たとえば、失敗を示すリターンコードと成功を示すリターンコードの比率や、総キャッシュアクセス数(ヒット数+ミス数)に占めるキャッシュヒット数の比率などです。
-
最初のプロット(プロットA)を使って、気になるメトリクスの1つを表示します。例えば、
zipper.missCountです。 -
2つ目のプロット(プロットB)を使って、必要な他のメトリクスを表示します。例えば、
zipper.hitCountです。 -
プロットCで、
A/(A+B)という式を入力し、scale:100の関数を追加して、比率をパーセンテージで表します。 -
プロット C の横にある目のアイコンを Alt キーか Option キーを押しながらクリックして、他のプロットを非表示にします。ミスカウントの時系列でのパーセンテージを示すチャートが残ります。
-
プロットCのプロット名を編集し、チャートにカーソルを置いたとき(前後は下の図に表示)、またはデータテーブルを表示したときに、有用な情報が表示されるようにします。
パーセンタイルを使用して母集団の概要を見る
母集団の概要を簡単に取得したい場合は、分布パーセンタイルチャートが適しています。このようなチャートを作成するには、非積み上げ面グラフを使用します。[Chart Options] タブで [Show on-chart legend] を選択(「チャート上に凡例を表示」を参照)して、次のようにプロットを表示します。
-
P10。最初のプロット(プロット A)で、必要なメトリクスとフィルタを入力し、Percentile 関数を使用して値に「
10」を入力します。 -
中央値。プロット A を複製し、値に「
50」を使用します。 -
P90。プロット B を複製し、値に「
90」を使用します。
下のイラストは、このチャートがどのような外観になるかを示しています:
特定の値を見るには、チャート上のさまざまなポイントにカーソルを合わせるか、データテーブルを表示します。
Top NまたはBottom Nのリストを表示する
Top N や Bottom N は、単純な外れ値、ランキング、最もパフォーマンスが低いものを表示するのに適しています。
-
プロットAのメトリクスを入力します。ここでは
cpu.utilizationを選択しています。 -
チャートタイプに [List] を選択します。
-
Top または Bottom の分析関数を適用し、リストに表示したい値の数または表示したいパーセンテージの範囲を選択します。この例では、[
Top 5] を選択し、[Count] を指定しました。 -
チャート上の冗長なメタデータを減らすには、[Chart Options] タブの [Display Fields] オプションで [
custom] を選択し、プロット名を非表示にします。 -
値に [
Descending] を指定して Top N チャートをソート([Sort])します。または、値に [Ascending] を指定して Bottom N チャートをソートします。 -
チャートをさらに読みやすくするには、[Display Fields] オプションを使用してその他のフィールドを非表示にします。[Visualization Options] にある [Entries with missing data] を非表示にすることもできます。
分布の変化を見る
ヒストグラムは、単一時点での母集団の分布を調べるのに適した方法です。Splunk Infrastructure Monitoring ではヒストグラムが提供されており、時間の経過に伴う分布の変化を確認できます。これは、クラスターによって提供されるリクエストの遅延など、予期しない変化を把握するのに役立ちます。
-
比較的多くのソースから送信されているメトリクスを選択します。ここでは
demo.trans.latencyを選択しました。 -
ヒストグラムのチャートタイプを選択します。
山と谷を平滑化する
ある期間から次の期間までの一般的なパターンを確認するために、データの山と谷を平滑化したいことがあると思います。値が全般的に安定しているか、上昇しているか、下降しているかが一目でわからない場合、ある期間から次の期間までを移動平均形式で正規化したデータを表示する必要があります。これを行うには、集計オプションの代わりに変換オプションを使用します。変換オプションでは、 [平均]、 [最大値 / 最小値]、 [パーセンタイル]、合計、分散の各分析機能を使用できます。平均、最小値、最大値、合計では、移動ウィンドウ(過去の時間(分、時)など)、またはカレンダーウィンドウ(過去の日、週、月など)のいずれかを指定できます。
-
移動平均を適用するのに適切な間隔を決定します。
-
Mean分析関数を使用し、Mean:Transformationオプションを選択して、適切な時間窓オプションを選択します。 -
間隔を入力します(例:5m)。
下の図では、「cpu.utilization」の値と移動平均が以下のように表示されています:
-
プロットA:実際の値
-
プロットB:30分間の移動平均
-
プロットC:1時間の移動平均
プロット線を非表示にしてチャートを見やすくすることもできます:
埋め込みログの検索
チャート、ダッシュボード、Kubernetes Navigator、および APM のサービス中心のビューに埋め込まれたログ内の特定のキーワードを検索できます。検索は Log Chart Summary に影響せず、データの完全性が確保されます。
チャートまたはダッシュボードで埋め込みログを検索するには、次の手順を実行します。
-
Splunk Observability Cloud で、[Dashboards] に移動し、選択したダッシュボードまたはチャートに移動します。
-
[K8S NODE LOGS] タブで、テーブルまで下にスクロールします。最初のテーブルの [System logs] ヘッダーまたは 2 番目のテーブルの [Authentication logs] ヘッダーの隣の検索バーに、埋め込みログで検索するキーワードを入力します。
-
キーボードの Enter キーを押します。[Search] ボタンはありません。
注: 検索では、Log Observer Connect の動作に沿って、大文字と小文字が区別されず、入力したキーワードが 1 つの文字列として扱われます。[Log Observer Connect] でログを表示すると、コンテキストを維持するために検索が続行されます。
次のステップ
使用可能なすべての分析関数の詳細については、「Splunk Observability Cloud の関数のリファレンス」を参照してください。
システムをあらかじめ監視できるチャートを作成したら、次のステップとして、値が特定の基準に達したときにアラートを表示したり受信したりしたくなると思います。この方法については、「Splunk Observability Cloud のアラートとディテクタの概要」を参照してください。