---
title: イベントの健全性について
description: この記事では、イベントの健全性とその構成要素について説明し、データ品質の監視と改善に役立てる方法を解説します。
url: https://docs.tealium.com/ja/server-side/event-health/about/
---
## 動作原理

イベントの健全性は、リアルタイムで受信イベントの品質を監視する機能群です。イベントが以下の条件を満たしているかをチェックします：

* 一貫した構造（定義されたスキーマなど）に従っている。
* 必須とされている属性を含んでいる。
* ウェブサイト、アプリ、その他のデータソース全体で同じ実装を使用している。

イベントの健全性には以下のコンポーネントが含まれます：

* **[イベント仕様]()**：イベント仕様は、イベントタイプに必要な属性を定義し、インストールのためのコード例を提供します。イベント仕様を作成した後、リアルタイムでイベントのデータ品質をライブイベントチャートを使用して検証します。
* **[イベントフィード]()**：イベントフィードは、属性に基づいて特定の条件に一致するイベントをグループ化します。イベント仕様が自動的に生成するものに加えて、カスタムイベントフィードを作成します。フィードをコネクターやデータ保存ソリューション（例：EventDBやEventStore）に送信します。
* **[ライブイベント]()**：ライブイベントチャートは、すべてのデータソースとすべてのイベントフィードからのデータをリアルタイムで表示します。イベント仕様がアクティブであれば、チャートは有効および無効なイベントの受信データの品質を反映します。

これらのコンポーネントが連携して、データレイヤーの健全性を示します。

### 利点

健全でよく構造化されたデータレイヤーは、正確でリアルタイムのデータ収集と品質に不可欠です。データを最も価値のある資産として扱うことで、ビジネスの決定が信頼できる、実行可能な洞察に基づいて行われることを保証します。イベントの健全性は、以下を提供することでこれを実現します：

* **データの信頼性**：検証されたイベントは、分析と顧客データが信頼できることを保証します。
* **迅速なトラブルシューティング**：明確なエラーシグナルは、問題の特定と修正にかかる時間を短縮します。
* **一貫したデータ品質**：下流システム（コネクターやデータストアなど）は、均一で高品質のデータを受け取ります。
* **自信を持った意思決定**：信頼できるデータは、ビジネスの決定と顧客体験の改善をサポートします。
* **継続的な改善**：検証結果を使用して、トラッキングコードとイベント仕様を洗練させ、有効なイベントの割合を増やし、実際のイベントトラッキングに仕様を合わせます。

### イベントの例

イベントの健全性がどのように機能するかを理解するために、有効なイベント、無効なイベント、未知のイベントの例を見てみましょう。次の例は、`video_complete`イベントのイベント仕様に基づいています：

![](https://docs.tealium.com/images/server-side/whiteui-eventspecifications-videocomplete.png)

仕様はその`tealium_event`値（`video_complete`）をリストし、四つの必須属性：`video_id`、`video_length`、`video_name`、`video_platform`を定義しています。各属性には定義されたデータタイプ（例：文字列、数値）があり、受信イベントはこれに一致する必要があります。

#### 有効なイベントの例

有効なイベントは以下の条件を満たすものです：

* `tealium_event`値がイベント仕様のいずれかと一致している。
* 必要なすべての属性を正しいデータタイプで含んでいる。
* すべてのプラットフォーム（ウェブやモバイルなど）で同じ構造に従っている。

例えば、次のイベントを考えてみましょう：

```json
{
    "tealium_event": "video_complete",
    "video_id": "xWlEk2i9r5Q",
    "video_length": 300,
    "video_name": "How to track videos in Tealium",
    "video_platform": "YouTube"
}
```

`tealium_event`値は`video_complete`なので、このイベントは`video_complete`仕様に対してチェックされます。このイベントは仕様に記載されているすべての必須属性を含んでおり、それらは正しいデータタイプですので、このイベントは有効とマークされます。

![](https://docs.tealium.com/images/server-side/valid-video-complete-event.png)

#### 無効なイベントの例

次のイベントは先述の`video_complete`仕様に対してチェックされますが、一つ以上の必須属性が欠けているか、予期しない値を含んでいます。

```json
{
    "tealium_event": "video_complete",
    "video_id": "xWlEk2i9r5Q",
    "video_length": "300 seconds",
    "video_platform": "YouTube"
}
```

このイベントは無効です。なぜなら、`video_length`属性が数値であるべきところを文字列であり、必須の`video_name`属性が欠けているからです。

![](https://docs.tealium.com/images/server-side/invalid-video-complete-event.png)

属性、データタイプ、要件のエラーを特定して、問題をトラブルシューティングし、解決します。

#### 未知のイベントの例

未知のイベントは、`tealium_event`値がどのイベント仕様にも一致しないか、`tealium_event`属性が欠けている場合です。

次のイベントは`tealium_event`値が欠けています：

```json
{
    "video_id": "xWlEk2i9r5Q",
    "video_length": 300,
    "video_name": "How to track videos in Tealium",
    "video_platform": "YouTube"
}
```

このイベントは`tealium_event`属性が欠けているため、どの仕様にも分類されず、未知（`No Spec`）とマークされます。

同様に、次のイベントも`video_search`のイベント仕様がないため、未知のイベントとしてマークされます：

```json
{
    "tealium_event": "video_search",
    "video_name": "How to track videos in Tealium",
    "video_platform": "YouTube"
}
```

## ワークフロー

生のイベントデータから監視され、検証されたイベントに至るまでのワークフローを以下に示します。目標は、明確なイベント仕様を確立し、それらの仕様に対してリアルタイムのトラフィックを検証し、データ品質の問題を迅速に対処することです。

### ステップ1 - イベントと未知の属性を発見

ライブイベントチャートの**すべてのイベント**フィードで、受信トラフィックを調査します：

![](https://docs.tealium.com/images/server-side/whiteui-eventstream-liveeventfeed.png)

このビューは、本番環境での現在の実装がどのように動作しているかを示し、まだ特定していない属性も含まれます：

![](https://docs.tealium.com/images/server-side/whiteui-eventstream-liveeventsandfeeds-add-unknown-attribute.png)

この情報から、キーとなるイベントとその属性のリストを作成し、イベント仕様を作成します。

詳細については、[ライブイベント]()を参照してください。

### ステップ2 - リアルタイムイベントからイベント仕様を作成

**ライブイベント**または**イベント仕様**ページから、発見した属性を使用してキーとなるイベントのイベント仕様を作成します。カスタマージャーニーの中で最も重要なイベント（例：`sign_up`、`login`、`add_to_cart`、`purchase`）から始めます。各属性について、データタイプと属性が必須かどうかを構成します。

![](https://docs.tealium.com/images/server-side/whiteui-eventspecifications-videocomplete.png)

イベント仕様を作成した後、`tealium_event`値が一致するイベントはその仕様に対して検証され、**Valid**、**Invalid**、または**No Spec**とマークされます。各イベント仕様は、コネクター、EventDB、またはEventStoreで有効にできる対応するイベントフィードを作成します。

![](https://docs.tealium.com/images/server-side/video-complete-event-feed.png)

重要なイベントには、Tealiumがリアルタイムで検証する文書化された契約があります。一致するイベントは、リンクされたフィードを通じて下流のワークフローで利用可能です。

詳細については、[イベント仕様の管理]()を参照してください。
### ステップ3 - イベントの健全性を監視し、問題をトリアージする

ライブイベントチャートとイベント仕様の詳細ページを使用して、時間とともにイベントの健全性を監視します。**有効**、**無効**、**仕様なし**のフィルターを使用して、特定の健康状態に焦点を当てます。**データソース**と**イベントフィード**を使用して、トラフィックのサブセットにチャートを絞り込みます。

![](https://docs.tealium.com/images/server-side/whiteui-eventstream-liveevents-filter-drop-down-lists.png)

継続的な監視により、迅速に退行を捉えることができます。例えば、必要な属性の送信を停止する新しいリリースや、新しい未定義のイベント名を導入する場合などです。

このビューから、各仕様と全トラフィックにわたって、どのイベントが健全で、どのイベントが注意を必要としているかを確認できます。

詳細については、[ライブイベント]()と[イベント仕様について]()を参照してください。

トレースIDを使用して、トリガーしたイベント以外のすべての受信イベントをフィルタリングします。トレースIDは、イベント追跡コードに挿入する一時的でユニークな識別子で、イベントを手動でテストする際に役立ちます。これは、新しいまたは更新されたイベント仕様を検証する際に、テスト中にトリガーしたイベントを確認するのに役立ちます。

詳細については、[トレースIDの使用](https://docs.tealium.com/about-live-events/#use-a-trace-id)を参照してください。

### ステップ4 - 修正、反復、および回復の確認

監視から得られた洞察を使用して、データ品質の問題を修正します：

* 無効なイベントの場合、イベントサンプルを調査して、どの必須属性が欠落しているか、または不正な形式であるかを確認します。実装を更新するか、必要に応じて仕様を調整します。
* 仕様のないイベントの場合、仕様を作成するか、範囲外のノイズとして扱うかを決定します。ライブイベントチャートの任意のイベントをクリックし、新しいイベント仕様の基礎として使用します。

イベント仕様を作成または更新した後、データを再度テストします。

イベントの健全性は、検証結果を使用して追跡コードと仕様の両方を洗練することで改善されます。時間が経つにつれて、有効なイベントの割合が増加し、仕様はビジネスがイベントを追跡する方法に合わせて調整されます。

詳細については、[ライブイベント]()と[イベント仕様の管理]()を参照してください。

### ステップ5 - 成功シグナルとカバレッジを追跡する

イベントの健全性は、検出から解決への移行を助けます。

ライブイベントチャートで、緑のバー（有効なイベント）と、重要なイベントの赤（無効）および青（仕様なし）のセグメントが減少していることを探します。

**イベント仕様**の概要および詳細ページで、選択した時間範囲におけるイベントごとの**総ボリューム**、**有効なイベント**、**無効なイベント**、**仕様なし**の数を監視します。

![](https://docs.tealium.com/images/server-side/event-health-table.png)

これらの指標は、データ品質が改善されているかどうか、および次に焦点を当てるべき場所を示します：

* 無効なイベントの急増は、実装の変更や新しい属性値を示すことがあります。実装作業の場合、テスト中にトリガーするイベントのみを表示するトレースセッションを開始します。これは、新しいまたは更新されたイベント仕様を検証する際に役立ちます。
* 仕様のないイベントの増加は、新しいイベントタイプまたは欠落している仕様を示唆しています。
* 未知の属性は、未知のデータタイプとしてフラグが立てられます。イベントの詳細ビューから直接定義して、イベント仕様やその他の機能で使用できるようにします。
* イベントが欠落している属性や誤った属性のために無効である場合、新しいイベントが仕様に準拠するように追跡コードまたはタグ管理構成を更新します。

## 次のステップ

この記事では、イベントの健全性とその機能について説明しました。データ品質の監視と改善を開始するには、次のトピックを参照してください：

* [イベント仕様の管理](): リアルタイムでイベントを検証するためのイベント仕様を作成および管理します。
* [イベントフィード](): イベント仕様から自動的に作成され、コネクターやデータ保存ソリューションに送信されるイベントフィードについて学びます。
* [ライブイベント](): リアルタイムで受信するイベントを表示し、イベント仕様に基づいてその健全性を反映するライブイベントチャートについて学びます。