はじめに

本ブログではNew Relic Platformに取り込まれるデータの量を分析する方法の最初の一歩について説明します。

全体量の把握

全体量に関しては、Data managemet UIで確認することができます。画面左下のユーザ名の箇所をクリックした後、「Manage Your Data」という項目をクリックしてください。

そうすると、以下のような画面で過去30日間の全体インジェスト量や各ソースごとのインジェスト量を確認できます。

デフォルトの状態であれば、画面下部にてソースごとの取り込み量を確認できます。各ソースの説明に関しては、こちらのドキュメントページで確認できます。

各ソースごとの詳細の確認

また、一部のソース(Infrastructure Integrations, Serverless, Custom events)を除き、各データの詳細を更に確認できます。例えば、画面下部のリストから「Logging」の行をクリックしてみてください。

すると、以下のようなページが表示されます。

この画面で主に、利用していただきたいのが以下の2点です

  • 画面上部に「Facet by」という項目があります。対象のデータをグルーピングすることができる主な属性を選択することができます。たとえば、APMのデータの場合「appName」が選択肢にあり、アプリごとの取り込み量がわかります。まずは、これを使って簡単にグループ分けして見ることができます。
  • 画面下部にクエリービルダーへのリンクがあります。こちらをクリックすると表示されているクエリーが反映された状態でクエリービルダーの画面が開かれます。デフォルトで用意された属性でFACETする場合やWHERE句の条件を追加するなど、任意の分析をしたい場合にご利用いただけます。

また、上記で確認したクエリーのFROM句にLogといったデータソースのイベント名があります。以下のようにkeyset()の関数を使うと、対象のイベントに付随する属性名のリストを表示できます。こちらで利用可能な属性名を調べて、お客様の調査したい軸となる属性名をFACET句に指定して分析してみてください。

SELECT keyset() FROM Log

また、keyset()を使った属性名リストの取得に関して、実際のデータから取得されます。SINCE句を指定しない場合、過去60分のデータが検査されます。直近の時間にデータがない場合、SINCE/UNTIL句で別の時間を指定することで、調べることもできます。

Infrastructure Integrations, Serverless, Custom eventsのデータの詳細の確認

これらのデータは、具体的にこのクエリーで調べられるというのが無いため、前述の方法ではサポートされていないと思われます。そのため、Data explorerを使って任意のMetricやEventデータを確認していただくのが良いかと思います。
データエクスプローラに関しては、こちらのページをご参照ください。

各データのサイズに関しては、こちらのページに記載のように「bytecountestimate()」関数を使って、対象のMetricやEventデータのデータサイズを分析してみてください。

データ取り込み量の最適化に関して

取り込み量の最適化を行う場合、適切に対応していただくことができなかった場合、可観測性が著しく低下するリスクもあります。担当の技術コンサルへご相談の上、ご対応いただくことをおすすめいたします。