Sumo Logic – Partition の作成方法と注意点について
記事の内容が古い場合は、公式サイトもご確認ください。
Sumo Logic については以下をご参照ください。
最初に
Sumo Logic では、メッセージデータ(ログ・メトリクス)を受信したときに以下の順でデータを評価します。
※ 今回はパーティション(Partition)機能をご紹介します!
パーティションについて
Sumo Logic におけるパーティションとは、「メッセージデータ群を小さなサブセットに区分けする」ことです。
例として、_sourceCategory=prod/* や、=dev/*、=qa/* などの環境ごと配信されるメッセージデータを Prod、Dev、QA のようなパーティションに配置できます。
パーティションを作成すれば、特定の小さなデータに対してクエリ検索できるため、インサイトを迅速かつ、明確に取得できるメリットがあります。
パーティションは、作成時点以降のメッセージデータに適用されます。
集計されたデータに対してバックフィルは行いません。
パーティション作成時の注意点
パーティション作成に必要なロール
- Manage Partitions
パーティションの表示・作成・編集・削除が可能です。 この権限を持つアカウントは、パーティションの管理機能 + S3 へのデータ転送管理機能も保持します。
パーティションの制限
- 作成できるパーティション数
- データの保持期間
アカウントごとに 50 件まで作成可能です。
1 ~ 5000日以内で選択します。
パーティション編集に関する注意点
パーティションは、作成後に変更できない項目が存在します。
以下、編集に関する注意点を考慮して作成してください。
- パーティション名の変更は出来ません。
- パーティション名の再利用は出来ません。
- パーティションが存在しているデータ層は変更出来ません。
- パーティションは削除出来ません。代わりに廃止出来ます。
- 既存パーティションのデータ保持期間を既定の期間より短く設定可能です。
既存のパーティションを無効化しても同じ名前では作成できません。
ログデータを取り込むデータ層を変更する場合、既存の層で利用しているパーティションを停止して、新たなデータ層を利用するようにパーティションを新規作成する必要があります。
廃止しても保持期間内のデータはアカウントに残ります。
また、廃止されたパーティションは、アカウントの制限(50 件)にカウントされません。
廃止したパーティションは、再度有効にすることが出来ません。
廃止したパーティションは、Status 項目の Apply Filters で表示できます。
保持期間を短くして保存すると、以下のアラート画面が出ます。
Apply change in 7 days(7日後に保持期間を短縮して、保持期間外のデータは削除する)か、Apply chnage now(すぐに削除する)を選択できます。
また、短縮して設定した保持期間を再度、元に戻すことも出来ます。
パーティション作成のベストプラクティス
- 変更される可能性のあるルーティング式は作成しない
- ルーティング式は、用途に応じて具体的 or 柔軟性を持たせて定義する
- 最も頻繁に使用されるデータは、グループ化する
- 組織(チーム、部門)ごとに使用するデータをグループ化する
- パーティションに含めるデータ量を調整する
- 重複するクエリを作成しない
ルーティング式は、作成後にも編集可能です。 しかし、ルーティング式を変更すると、そのパーティションに入るデータも変化します。 パーティションは、メッセージデータを長期的に整理するために使用してください。
ルーティング式は、どのデータを、どのパーティションに配信するか定義する機能です。ルーティング式の内容と一致するメッセージデータが、パーティションに追加されます。
具体的にルーティング式を設定したパーティションは、明確なデータを抽出できます。
例)
_sourceCategory=/dev/apache/access/*
_sourceCategory=/stg/apache/error/*
柔軟にルーティング式を設定したパーティションは、メタデータを調節できるメリットがあります。
例)
_sourceCategory=*/apache/*
_sourceCategory=*/nginx/*
WEB データ、セキュリティデータ、エラーデータなどのようにカテゴライズします。
組織内の役割、チームなどの部門ごとにグルーピングします。
パーティションに配信するデータは、2 ~ 20% にしてください。
これは、多くのデータをパーティションに含めても意味がないためです。
パーティションは、頻繁に使用するデータや、複雑にネストされたデータのクエリ応答速度を向上させるためにデータを区画化してインデックスする用途として作成してください。
Sumo Logic は、重複した結果を返しませんが、重複を除外するプロセスが発生し、余分に時間がかかります。
パーティションの作成方法
以下のステップで、パーティション(Partition)の作成ページに移動します。
① Manage Data > ② Logs > ③ Partitions > ④ + Add Partition
すると、以下のパーティション(Partition)作成メニューが右側に表示されます。
① Name
英数字を使用してパーティション名を入力します。
使用できない文字
・特殊文字
パーティション名は、「sumologic_」「sec_rec」「_」で始めることはできません。
Sumo Logic 側で用意しているパーティション(sumologic_*)や、CloudSIEM という機能専用のパーティション(sec_rec*)が存在するためです。
② Data Tier
Enterprise Suite アカウントのみ、Frequent、Infrequent を選択可能です。
- Continuous
一般的なログストリームを保存するデータ層です。
- Frequent
高頻度アクセス用のデータ層です。
- Infrequent
低頻度アクセス用のデータ層です。
データ層については、Data Tiers をご参照ください。
③ Routing Expression
キーワード検索式を使用して、組み込みのメタデータ、カスタムメタデータフィールドを指定します。
指定されたメタデータの値が、パーティションとしてインデックスされます。
④ Retention Period(in days)
1 ~ 5000日以内で、データ保持期間を入力してください。
⑤ Apply the retention period of sumologic_default
Apply the retention period of sumologic_default のチェックボックスを有効にすると、sumologic_default パーティションと同じデータ保持期間に設定されます。
なお、sumologic_default は、保持期間 30日、データ層 Continuous です。
sumologic_default というパーティションが、デフォルトで作成されています。 このパーティションには、どのパーティションにも属さないデータが入ります。
⑥ Data Forwarding
パーティション内部のデータをクラウド環境に転送するには、こちらのチェックボックスを有効にします。 クラウド転送機能は、ユーザの所有する AWS S3 バケットにログデータを転送する機能です。
Data Forwarding のチェックボックスを有効にすると、以下の設定画面が表示されます。
6-1. Forwarding Destination
転送先として、S3 への「既存の転送先」か、「新規の転送先を作成する」か選択します。
新規の転送先を選択した場合、同じ画面でバケット名や、アクセス方式、ARN などの設定が必要になります。
6-2. Amazon S3 Destination
既存の転送先を選択した場合のみ表示されます。
設定済みの転送先が列挙されますので、選択してください。
6-3. File Format
S3 バケット内のディレクトリへのパスを設定します。
パスの書式については、こちら Forward data to S3 をご確認ください。
別のリージョンに転送させる場合は、転送量が必要です。
まとめ
データ数が多い場合、パーティションが ある/ない で、クエリ検索のスピードに大きな差が生まれます。 短い有効期限でいいものや、重要で頻繁に利用されるメッセージデータなど、データの種類に応じて、量を調整しながら設置していただけると快適にクエリ検索できます。
また、過去のデータに遡りたいときは、スケジュールビューを使用して過去のデータを収集するという選択肢もございます。