ヘルプ データレイク監視 カスタムソース監視

データレイク カスタムソース監視

当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。
正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

データレイク監視のカスタムソース機能で、APIやSDKを使用してアプリケーションからデータをプッシュできます。これにより様々な環境に合わせたメトリック収集を実現できます。

目次

設定方法

カスタムソースを使用してデータをプッシュする方法は次の通りです。

  1. カスタムソース項目にある[今すぐ連携]をクリックします。
  2. データレイク監視の追加ページで、次の情報を入力します。
    • データレイク名:監視の表示名を入力します。
    • 監視グループと関連付け:ドロップダウンから監視グループを選択し、その監視グループに作成する監視を関連付けます。
      監視グループの作成方法の詳細はこちらのページをご確認ください。
    • 含めるタグ:SDK/API経由でプッシュするデータをフィルターします。
      • すべてのタグ:すべてのデータをプッシュします。
      • で始まる:指定した文字で始まるデータをプッシュします。
      • 含む:指定したキーワードを含むデータをプッシュします。
      • で終わる:指定した文字で終わるデータをプッシュします。
  3. [保存]をクリックします。

作成した監視にデータをインポート

SDKまたはAPI経由でデータをプッシュできます。

SDK経由でのデータプッシュ

このオプションを使用して生データ(未集約データ)を送信する場合に使用します。データの集計処理はSite24x7で集約を行います。

Java SDKを経由する場合

手順1:アプリケーションへのSDKの追加と設定

ロギングのため、アプリケーション内に「SLF4J」jarファイルが必要です。追加されていない場合は、追加してください。

  1. Maven Central Repositoryに移動します。
  2. ビルドフレームワークに基づいてアプリケーションにコンパイル依存関係(Compile Dependencies)を追加します。
    SDK jarファイルをダウンロードし、アプリケーションに追加します。

手順2:SDK MetricProviderのオブジェクト作成

「MetricProviderBuilder」クラスを使用してSite24x7エクスポーターをもつ「MetricProvider」を作成します。このオブジェクトを使用してメトリックデータをプッシュします。

シングルアプリケーションの場合、単一のライセンスキーが適用されます。同一アプリケーション内で新規オブジェクトが作成されても、最初のライセンスキーが使用され続けます。

// Create Metric provider using the following code snippet
MetricProvider provider = new MetricProvider("");
DataLakeProvider dataLake = provider.createDataLake(""); // The app key associated with the Data-lake monitor.
DataLakeResource resource = dataLake.createResource(new HashMap(){{
put("host", "192.168.10.254");
}});// Set of tags to associate with a list of metrics created using the appkey resource

// Push data using different methods like Count, Rate, Gauge, Histogram.
resource.gauge(
"ResponseTime", // The metric name (field name)
180, // The numerical value of the metric
"ms",// Unit of the metric (Default unit will be Count)
new HashMap(){{
	put("host", "192.168.10.254");
}}); // Set of tags to be associated with the metric


手順3:生データをSDKに送信

メソッドを指定し、設定した項目の値を集約します。

Count

metricProvider.count(
    "<app key>", // The app key associated with the Data-lake monitor
    "db_write", // The metric name (field name)
    2.0, // Numerical value of the metric
    Collections.singletonMap("host", "192.168.10.254") // Set of tags to associate with the metric
);

Rate

metricProvider.rate(
 "<app key>", 
 "disk_free",
  16868264.0,
  Collections.singletonMap("host", "192.168.10.254")
);

Gauge

metricProvider.gauge(
 "<app key>", 
 "disk_free",
  16868264.0,
  Collections.singletonMap("host", "192.168.10.254")
);

Histogram

metricProvider.histogram(
 "<app key>", 
 "disk_free",
  16868264.0,
  Collections.singletonMap("host", "192.168.10.254")
);

補足事項は次の通りです。

  • <app_key>Post URL表示オプションから取得できます。
  • disk_free は数値項目です。
  • Collections.singletonMap ("host", "192.168.10.254") は文字列の任意項目です。
  • デフォルトの値の単位は次の通りです。
    • Time:ミリ秒
    • Size:バイト
    • Count:数

Node.js SDKを経由する場合

Node.js SDKを経由し、監視および分析を目的としたカスタムメトリクスをSite24x7データレイクに送信します。

前提条件

  • Node.jsバージョン16以上
  • Node Package Manager(NPM)
  • 有効なアプリケーションキーを持つSite24x7アカウント

手順1:SDKのインストール

プロジェクトのルートフォルダーで以下のコマンドを実行し、SDKをインストールします。

npm install site24x7_datalake_sdk


手順2:設定

.envファイルを作成または更新します。

Site24x7LicenseKey="your-license-key-here"
APP_PORT=3015


手順3:SDKのインポートとデータレイクの作成

アプリケーション内でSDKを読み込みます。

const metrics = require('site24x7_datalake_sdk');


appKeyを、データレイク監視から取得したアプリケーションキーに置き換えます。

const appKey = 'your-actual-app-key-here';


次のようにデータレイクを作成します。

const dataLake = metrics.createDataLake(appKey);


手順4:リソースタグの作成

このapp Keyを使用して送信されるすべてのメトリクスに紐付けるため、タグを設定したリソースを作成します。

const dataLakeResource = dataLake.createResource({
  resourcetag1: 'resourcetag1',
  resourcetag2: 'resourcetag2',
});
これらのタグは、アプリケーションの要件に合わせて自由にカスタマイズできます。


手順5:生メトリックデータの送信

適切な集計処理が行われるよう、データの特性に応じた正しいメトリックタイプを指定してください。

Count

イベントの発生回数を記録するために使用されます。

dataLakeResource.count({
  name: "event_occurrences",
  value: 10,
  unit: "events",
  tags: {
    source: "api",
    type: "user_action"
  }
});

Gauge

時間の経過とともに変化し、常にその時点での最新の状態(現在値)を表します。

dataLakeResource.gauge({
  name: "memory_usage",
  value: 75,
  unit: "MB",
  tags: {
    server: "web-server-1",
    environment: "production"
  }
});

Rate

時間の経過とともに測定された値を記録するために使用されます。

dataLakeResource.rate({
  name: "requests_per_second",
  value: 250,
  unit: "requests",
  tags: {
    source: "load_balancer",
    region: "us-east"
  }
});

Histogram

統計的な分布を記録するために使用されます。

dataLakeResource.histogram({
  name: "response_times",
  value: 120,
  unit: "ms",
  tags: {
    endpoint: "/api/users",
    method: "GET"
  }
});


パラメーター

パラメーター 必須/任意 デフォルト値 説明
name 文字列型 必須 - メトリックの名前
value 数値型 必須 - 記録する値
unit 文字列型 任意 なし 測定単位
tags オブジェクト型 任意 {} メトリックに付与する追加のタグ


確認手順

  • 全ての依存関係がインストールされているか確認するため、npm installを実行してください。
  • Site24x7から取得したライセンスキーとアプリケーションキーが正しいか確認してください。
  • SDKのログを確認するには、アプリケーションのルートディレクトリにある「site24x7dataフォルダー」を確認してください。

API経由でのデータプッシュ

このオプションを使用して、集約データをプッシュします。

  1. データレイク監視に移動します。
  2. 表示名横のハンバーガーアイコン(≡)にマウスオーバーします。
  3. [Post URL表示]を選択します。
  4. その後の画面で次の手順を実施します。
    サンプルペイロード
    [
       {
          "metrics":[
             {
                "unit":"ms",
                "datavalues":[
                   {
                      "p0":0,
                      "p99":16,
                      "p100":17,
                      "time_stamp":"1739341985265",
                      "count":10,
                      "p50":12,
                      "value":100,
                      "p95":15,
                      "tags":{
                         "metric_tag_2":"metricTag2Data",
                         "metric_tag_1":"metricTag1Data"
                      }
                   }
                ],
                "name":"MetricName",
                "type":"rate",
                "description ":"Sample Description"
             }
          ],
          "tags":{
             "group_tag_1":"groupTag1data",
             "group_tag_2":"groupTag2data"
          }
       }
    ]

    補足事項は次の通りです。

    • :処理するメトリック値です。
    • :値の計算に使用された間隔ごとのメトリック数です。指定されていない場合、デフォルトの1が指定されます。

サポートしている単位

タイプ サポートしている単位 基本単位
サイズ バイト、KB、MB、GB、TB バイト
時間 マイクロ秒、ミリ秒、秒、分、時間、日 ミリ秒
一、千、十万、百万、十億、兆 -
  • 異なる単位(例:GB、分、兆)で値を送信しても、それらは自動的に基本単位に変換されます。
  • 上記以外の対応していない単位を送信した場合、それらは自動的に数として認識され表示されます。

関連ガイド

データレイク監視の追加

REST APIメトリック監視の追加

データレイクのパフォーマンスメトリック

データレイクダッシュボード

カスタム属性監視の追加