Docs » Splunk RUM で URL グループ化のカスタムルールを作成する

Splunk RUM で URL グループ化のカスタムルールを作成する 🔗

Splunk RUM は、ページのロード時間やルート変更時間、JavaScript エラー、バックエンドエラー、ウェブバイタルなどのエラーやメトリクスを取得するデフォルトルールに基づいて URL を自動的にグループ化します。

Splunk RUM のカスタムルールとは何ですか? 🔗

カスタムルールを作成し、仕様に基づいて共通のコンポーネントを持つ URL をグループ化します。ルールをカスタマイズすることで、Splunk RUM でのデータ整理を自分や組織にとって最も理にかなった方法で効率化できます。URL はパスとドメインの両方でグループ化できます。

Splunk RUM でページレベルのメトリクス ( rum.node.* ) を生成するには、カスタム URL グループ化ルールも必要です。

カスタムルールを記述する 🔗

以下のステップに従って、カスタムルールを作成します:

  1. URLについて学びます。コンポーネントとトークンを特定します。

  2. どのような結果を見たいのかを把握します。

  3. パターンの構文と例を確認し、データに合ったルールの作り方を理解しましょう。

  4. デフォルトのルールを参照し、あなたのルールが機能するためにどれかを無効にする必要があるかどうかを確認します。

URLの構成要素を特定する方法 🔗

Splunk RUM の範囲では、URL には以下のコンポーネントがあります:

  • スキーム

  • ドメイン

  • パス

  • フラグメント

🔗

次のURLを考えてみましょう: https://example.com/path/page#title.

以下は、このURLを構成要素に分解する方法です:

コンポーネント

スキーム

https

ドメイン

example.com

パス

/path/page

フラグメント

#title

トークンの識別方法 🔗

Splunk RUM でルールを記述する場合、URL はドメインとパスの2つの部分で構成されます。トークンは、パスの場合は 「/」 で、ドメインの場合は 「.」 で区切られた単語です。以下の定義と例では、ユースケースに最良のルールを記述できるように、URL のトークンを識別する方法を説明します。

ドメイン 🔗

ドメインはトップレベルドメインと、その前に付加されたサブドメインで構成されます。ホストトークンは . の記号で区切られます。例えば、subdomain.domain.com は以下のトークンに分割されます: subdomaindomaincom.

パス 🔗

パスの構成要素は / シンボルで区切られます。例えば、https://example.com/documentation/section/topic は以下のトークンに分割されます: documentationsectiontopic.

URLにおける#のサポート 🔗

シングルページアプリケーションは、URLパスの最後に # トークンを使用してフラグメントを追加します。次のURLは、シングルページアプリケーションからのブログ投稿が#シンボルの後にどのようにリストされるかを示しています: https://example.com/#/blogpost.デフォルトでは、# の後のフラグメントは、ルールに含めるように指定しない限り、Splunk RUM では無視されます。たとえば、この例では #title というフラグメントはパスから除外されます: https://example.com/path/page.html#title.

パターン構文 🔗

次の表に、パターン、このパターンに一致するURLの例、パターンに一致しないURLの例を示します。

ルールとは何ですか? 🔗

ルールでは、共通の特徴に基づいてURLをグループ化する方法を定義します。まず、ドメインルールを追加し、次にパスルールを追加します。

パターンとは何ですか? 🔗

パターンは、ルールの最も重要な構成要素です。パターンは、ルールに一致するすべてのURLで共有されるパスまたはドメインの共通部分を定義します。パターンはURLのドメインやパスのようなトークンからも構成されます。パターン内のワイルドカードは、URLのパスまたはドメイン内の実際のトークンと一致します。パターンにワイルドカードを適用して、1つまたは複数のトークンに一致させることができます。

シングルトークンの <?> ワイルドカード 🔗

この例では、<?> シンボルを使用して、単一のトークンワイルドカードを適用し、URL をパスでグループ化する方法を示します。

パターン

一致するパスの例

一致しないパスの例

/app/<?>

  • /app/v1

  • /app/v2

  • /app/dashboard

  • /app

  • /app/v1/dashboard

  • /applications/v1

1つ以上の末尾トークンの <??> ワイルドカード 🔗

この例では、<??> ワイルドカードを使用して、1つ以上のトークンで URL をグループ化する方法を示します。<??> ワイルドカードは、現時点ではパターンの最後のワイルドカードとしてのみサポートされています。

パターン

一致するパスの例

一致しないトークンの例

/app/<??>

  • /app/v1

  • /app/v2

  • /app/dashboard

  • /app/v1/dashboard

  • /app/v2/dashboard/123

  • /app/v2/dashboard/123/edit

  • /app

  • /applications/v1

組み合わせパターン 🔗

この例では、ワイルドカードを組み合わせて、複数のトークンのパターンでURLをグループ化する方法を示しています。

パターン

一致するパスの例

一致しないパスの例

/<?>/v2/<??>

  • /api/v2/users

  • /api/v2/profiles/edit

  • /app/v2/dashboard/123

  • /api/v3/users

  • /app/dashboard/v2/charts

  • /app/v2

無効な構文 🔗

以下の構文は無効です:

無効な構文

説明

  • .A.B.C

  • A.B.C.

「.」 文字でパターンを開始または終了します。

A.<??>.C

<??> ワイルドカードは常にパターンの最後になければなりません。

<?>A.B.C

<?> ワイルドカードをパターン内の他の文字と混ぜないでください。ワイルドカードは、. 区切り文字の間のドメインコンポーネント全体を置き換えます。

/lor<?>/ipsum

ワイルドカードはURLのパスの2つの / 記号の間にある必要があるため、このパターンは無効です。有効なパターンは /<?>/ipsum です。

lorem.ips<??>

<??> ワイルドカードが「. 」文字で区切られていないため、このパターンは無効です。有効なパターンは lorem.ipsum.<??> です。

A/B/C

パスのパターンは / で始まらなければなりません。

/A/<??>/C

<??> ワイルドカードは、パターンの最後のトークンでなければなりません。

/A/B<?>/C

<?>ワイルドカードは、/ 区切り文字で区切らなければなりません。

デフォルトルール 🔗

注釈

You need at least one matching domain and path rule.

RUM にはいくつかのデフォルトルールがあり、RUM URL grouping タブの Data Management にあります。デフォルトルールと競合するルールを作成したい場合は、デフォルトルールをグローバルまたはアプリケーションごとに無効にすることができます。

🔗

この * ワイルドカードは、/app/ で始まるあらゆるパスと一致します。

パターン

一致するパスの例

一致しないパスの例

/app/<*>

  • /app/v1

  • /app/v2

  • /app/dashboard

  • /app/v1/

  • /applications/v1

🔗

ワイルドカード W* は、その中に数字が含まれていないトークンに適用されます。このパターンは、/app/ で始まり、その後に数字を含まないトークンが続くパスに一致します。

パターン

一致するパスの例

一致しないパスの例

/app/<w*>

  • /app/chart

  • /app/dashboard

  • /app/v1

  • /app/v2

ユースケース 🔗

以下の例では、解決したいユースケースに応じてURLをグループ化するルールを適用する方法を概説します。

製品IDでURLをグループ化するために <?> ワイルドカードを使用する 🔗

あなたがオンライン小売業者で、製品IDごとにURLをまとめたいとします。この例では、製品IDはURLのパスの /merchandise/ 以降の文字と数字の組み合わせです。

URLの例

パターン

結果

  • example.com/merchandise/i139sd

  • example.com/merchandise/71239

  • example.com/merchandise/8fsd72

/merchandise/<?>

その結果、同じプロダクトIDを持つすべてのURLがグループ化されます: https://example.com/merchandise/<?>

この例では、まず次のようなドメインルールを作成する必要があります:

これは、<??> ワイルドカードを使用してドメインのルールを作成する方法を示しています。

次に、パスルールを作成します:

これは、<??>ワイルドカードを使ったパスのルールを作成する方法を示しています。

サブドメインでグループ化するために <?> ワイルドカードを使用する 🔗

この例では、<?> ワイルドカードを使用して、同じサブドメインを持つURLをグループ化する方法を示しています。

URLの例

パターン

結果

  • sub3nds9.example.com

  • subfd89fs.example.com

  • sub6f8sd.example.com

<?>.example.com

その結果、同じサブドメインを持つURLはすべてグループ化されます: https://<?>.example.com/

例えば、このルールの作り方は以下の通りです:

これは、<?>ワイルドカードを使用してドメインのルールを作成する方法を示しています。

文字列でグループ化するために <??> ワイルドカードを使用する 🔗

任意の関数について、v1とv2のAPIを横断してパフォーマンスを測定したいとします。このルールでは、<??> を使用してパスの残りの部分をワイルドカード化します。

URLの例

ルール

結果

  • /api/v1/downloadimage/api/v2/downloadimage/api/?>

  • api/v2/downloadimage

/api/<??>

API機能ごとにURLをグループ化します。

例えば、このルールの作り方は以下の通りです:

これは、<??>ワイルドカードを使ったパスのルールを作成する方法を示しています。

URLグループ化ルールを管理する 🔗

ホストルールとパスルールが組み合わされて、UI の URL 名が作成されます。スパンは Splunk RUM で8日間保持されます。詳しくは Splunk Observability Cloudのデータ保持 を参照してください。ルールの変更は受信データにのみ適用されます。

注釈

You need to create a domain rule first, then you can add a path rule. If you edit, deactivate, or delete a rule your changes apply only to future data and not data that was already ingested by Splunk RUM.

新しいルールを作成する 🔗

新しいルールを作成するには、以下のステップに従ってください:

  1. Splunk RUM URL ルールマネージャーにアクセスするには、4 つの方法があります:
    1. 左のナビゲーションパネルから、アプリケーションサマリーダッシュボードの RUM > RUM Configuration > RUM URL Grouping Rules を選択します。

    2. 左のナビゲーションパネルから、[データ設定]の下にある「 Settings 」 > 「 RUM URL grouping Rules 」を選択します。

    3. RUM の概要ダッシュボードから、RUM Configuration > RUM URL Grouping Rules を選択します。

    4. RUM Tag Spotlightビューから、3つのドットの設定ボタンを選択し、RUM URL Grouping Rules を選択します。

  2. New Rule を選択します。

  3. ルールを書きたいURLトークンを選択します。

  4. 監視するアプリケーションを選択します。アプリケーションを選択しない場合、ルールはすべてのアプリケーションに適用されます。

  5. URLをグループ化するパターンを記述します。

  6. Create を選択します。

既存のルールを編集する 🔗

既存のルールを編集するには、以下のステップに従います:

  1. RUM URLルールマネージャーに移動します。

  2. 3つのドットの記号を選択し、Edit を選択します。

  3. 変更を加え、Update を選択します。

ルールを無効化または再有効化する 🔗

既存のルールを無効化または再有効化するには、以下のステップに従ってください。ルールを無効化すると、Splunk RUM はこのルールに従って受信データの処理を停止します。ルールを非アクティブにし、将来再びアクティブにすることを選択した場合、そのルールは Splunk RUM によって既に取り込まれたデータには適用されません。

  1. RUM URLルールマネージャーに移動します。

  2. 3つのドットの記号を選択し、Edit を選択します。
    1. ルールを有効にするには、Activate をクリックします。

    2. ルールを無効にするには、Yes, deactivate this rule をクリックします。

削除 🔗

ルールを削除するには、以下のステップに従います:

  1. RUM URLルールマネージャーに移動します。

  2. 3つのドットの記号を選択し、Edit > Delete > Yes, delete this rule の順に選択します。

This page was last updated on 2024年08月22日.