---
title: タイムライン属性
description: この記事ではタイムライン属性とその使用方法について説明します。
url: https://docs.tealium.com/ja/server-side/attributes/data-types/timeline/
---
## 動作原理

タイムライン属性は、指定された期間にわたるイベントのリストを記録します。キャプチャされたイベントは、キャプチャされた属性値とタイムスタンプを含むタイムライン内のエントリを生成します。タイムスタンプは、イベントの時間または他の属性によって提供される日時のいずれかになります。タイムスタンプはUnix/Epoch形式で記録されます。

タイムライン属性は、訪問と訪問のスコープで利用可能です。

![](https://docs.tealium.com/images/server-side/screenshot-2019-11-11-at-1.26.28-pm.png)

### サイズ制限

タイムライン属性は最大100エントリに制限されています。タイムラインがこの制限に達すると、最も古いエントリが破棄されます（先入れ先出し）。例えば、タイムラインに100エントリが含まれていて、新しいエントリが追加された場合、最初のエントリが削除されます。

タイムラインの最大期間は365日です。

タイムライン属性は、暗号化および圧縮後のプロファイルの最大サイズ（400 KB）によっても制限されます。

## 属性データのキャプチャ

イベントのタイムスタンプに加えて、イベントが発生したときに1つ以上の属性の値をキャプチャすることもできます。キャプチャされた属性値は、イベントが発生したときの詳細情報を提供します。数値と集計のみがキャプチャに有用な属性タイプです。なぜなら、これらの属性タイプのみがエンリッチメントを使用して集計できるからです。

例えば、各購入の注文合計を追跡するために、購入タイムラインで属性 `order_total` をキャプチャします。


<blockquote>
最新の訪問プロファイルを [Trace](https://docs.tealium.com/about-trace/) で確認してタイムラインを検証します。
</blockquote>


## エントリの有効期限

タイムライン内のエントリは、構成された日数後に期限切れに構成することができます。この有効期限はタイムライン内のエントリにのみ適用され、タイムライン属性自体には適用されません。有効期限は、各訪問の開始時に評価されます。エントリが有効期限より古い場合、タイムラインから削除されます。

タイムラインは数値との相性が良いです。なぜなら、数値エントリはタイムラインエントリに基づいてローリング合計またはローリング平均値を簡単に作成するために使用できるからです。

## ベストプラクティス

タイムラインは100エントリに制限されています。他の属性と同様に、[400KB圧縮](https://docs.tealium.com/about-attributes/#storage-capacity-limits)の最大訪問プロファイルサイズに寄与します。

タイムライン属性を効率的に使用するために、以下のことをお勧めします：

* 必要以上にタイムライン内の情報を保存しないでください。タイムラインエントリの有効期限を構成します。
* 特殊な使用例がない限り、他の属性をタイムラインに保存しないでください。ほとんどの属性タイプをタイムラインに保存することができますが、数値と集計のみが他のAudienceStream属性にエンリッチメントできます。例えば、タイムライン内のエントリから数値の合計を取得することができますし、タイムライン内のエントリから集計を集約することができます。他の属性タイプを保存することは可能ですが、保存した値を集約するエンリッチメントはありません。 
<blockquote>
タイムラインエントリに他の属性を保存すると、訪問プロファイルのサイズが増加します。
</blockquote>

* タイムラインのエントリ数とタイムラインの総数を最小限に抑えることができます。それらを戦略的に使用してください。
  * タイムライン属性を使用してイベントを効率的にカウントするには、対象イベントが発生したときに訪問数を増やし、訪問の終わりに訪問数をタイムラインに保存します。
  * 訪問の始めに全体のカウントを取得するには、タイムライン属性内の訪問を合計するために合計エンリッチメントを使用し、それを数値属性に保存します。その後、訪問中にこの数値を増やして完全に最新の状態を保ちます。
  * 同じ期間に複数の数値を保存する場合は、それらをすべて単一のタイムラインに保存します。

## エンリッチメント

### タイムラインの更新

このエンリッチメントを使用して、タイムラインにエントリを記録します。このエンリッチメントを追加するには、**エントリの作成**をクリックし、**タイムラインの更新**を選択します。

エントリのタイムスタンプを記録するための以下のオプションから選択します：

* **イベント受信時の時間（デフォルト）**  
エントリのタイムスタンプは、イベントが発生したときに自動的に構成されます。
* **日付に基づく**  
エントリのタイムスタンプは、別の属性の値に構成されます。文字列属性を選択した場合は、期待される値に一致する日付/時間パターンを作成するために[date formatter](https://docs.tealium.com/date-attribute/)も使用する必要があります。

エントリに属性値をキャプチャするには、ドロップダウンリストから属性を選択し、**属性の追加**をクリックします。追加された属性はキャプチャされた属性として表示されます。エントリにキャプチャする各属性についてこの手順を繰り返します。

#### 例

**属性名**: 過去60日間の注文  
**キャプチャされた属性:** `order_subtotal` および `order_total`  

**例 JSONデータ**:

```json
"Orders Last 60 Days" : [
  {
    "timestamp" : 1576862494000,
    "snapshot" : {
      "order_total" : 44.00,
      "order_subtotal" : 38.00
    }
  },
  {
    "timestamp" : 1577640094000,
    "snapshot" : {
      "order_total" : 100.00,
      "order_subtotal" : 95.00
    }
  },
  {
    "timestamp" : 1578849694000,
    "snapshot": {
      "order_total" : 60.00,
      "order_subtotal" : 59.00
    }
  }
]
```

### タイムラインイベントの有効期限の構成

このエンリッチメントを使用して、エントリが記録されてからの日数に基づいてタイムラインからエントリを削除するタイミングを決定します。有効期限構成より古い各エントリは、自動的にタイムラインから削除されます。タイムラインエントリの有効期限は、訪問の開始時に評価されます。


<blockquote>
有効期限はタイムライン自体には適用されず、その内部のエントリにのみ適用されます。
</blockquote>
