メインコンテンツまでスキップ

カスタムパーサーの作成

備考

プレビュー

Lakewatchは プライベートプレビュー段階です。アクセスをリクエストするには、Databricksアカウントチームにお問い合わせください。

Lakewatchは、一般的なセキュリティログソースの組み込みパーサーを提供します。組み込みパーサーでカバーされないソースを取り込む場合、または組み込みパーサーが生成するカラム、バリデータ、または観測対象をカスタマイズする場合は、 カスタムパーサー を記述します。

パーサーは、ログソースの出力列を記述するバージョン管理された仕様です。パーサーエディターの UI モード(ガイド付きのポイント・アンド・クリックビルダー)または YAML モードで構築され、現在のLakewatch環境に作成されます。完全な構文(フィールド属性、型、Timestamp、バリデーター、および監視可能オブジェクト)については、パーサーのリファレンスを参照してください。

パーサーエディタを開く​

Lakewatchサイドバーから、 Parsers を選択し、 Create parser を選択します。パーサーリストには、環境内のすべての組み込みパーサーとカスタムパーサーも表示され、そのタイプ、接続されたデータソース、最新バージョンが表示されます。

空のパーサーではなく組み込みパーサーから起動するには、リストからパーサーを見つけ、 ⋮ アクションメニューを開いて [複製] を選択します。複製すると、定義が新しい編集可能なカスタムパーサー(バージョン1)にコピーされ、組み込みパーサーは変更されません。

パーサーの定義​

新しいパーサーの追加 ページで、パーサーに パーサー名 とオプションの 説明 を付けます。名前は表示名であり、スペースを含めることができます。

UI モードまたは YAML モードで、 フィールドと監視対象 の下に出力列を作成します。いつでも切り替えることができます。

サンプル データを選択​

サンプル データの選択 を選択して、このパーサー用の未加工レコードを選択すると、フィールドに実際のデータが反映されます。 データソース 、 外部ロケーション 、 ボリューム 、または テーブル からサンプリングできます。

サンプルデータを選択すると、オプションで 「Genieでパーサーを構築」 を選択できます。Genie はサンプルを読み取り、レビューおよび調整を行うイベント時間とフィールドをドラフトします。

イベントの時刻とフィールドを設定する​

  • イベント時刻 (必須):各イベントのTimestamp。保存するには、パーサーごとに1つのタイムスタンプが必要です。YAMLでは、これは最上位の time ブロック(フィールドではありません)です。これは、クラスター化とクエリーのパフォーマンスを推進するからです。イベント時刻を参照してください。
  • フィールド :解析されたテーブルの列と、各列の読み取り元です。各フィールドについて、name、type、および(ソースキーが列名と異なる場合)pathを設定します。required: trueで存在する必要があるフィールドをマークします。STRINGフィールドを制限するためにvalidateを追加し、値(ipまたはemailなど)を共有lw_observables列に抽出するためにobservablesを追加します。ネストされたオブジェクトを内部fieldsを持つVARIANTとして、リストをelementを持つARRAYとして表現します。

フィールドは慎重に定義してください。分類中、イベントは、必須フィールドが存在し、型付きフィールドが宣言された型に変換され、すべてのバリデーターが渡された場合にのみ一致します。添付されたパーサーと一致しないイベントは、パイプラインを失敗させるのではなく、デッドレターセンチネルにルーティングされるため、厳しすぎるパーサーはイベントをサイレントにドロップします。

プレビューと保存​

[ データプレビュー ] パネルで [ プレビュー ] を選択し、サンプルデータに対してパーサーをランして、列、型、抽出された観測対象が期待どおりであることを確認します。問題がないようであれば、[ 保存 ] を選択します。保存すると、定義はバージョン 1 として保存され、あなたが所有者として記録され、現在の環境にパーサーが作成されます。パーカードキュメントは最大 256 KB です。

パーサーをデータソースに添付する​

組み込みパーサーを添付する場合と同じ方法で、カスタムパーサーをデータソースに添付します。データソースには複数のパーサーを添付できます。受信イベントは宣言順に照合され、最初に一致したパーサーに格納されます。「パーサーの添付」 を参照してください。

テストと反復​

データソースの実行後、パーサーが想定通りに動作することを確認してください:

  • パースされたテーブルをクエリーし、列、型、抽出された監視対象が定義したものと一致することを確認します。
  • デッドレターセンチネルでイベントを確認してください。接続されているパーサーのいずれにも一致しないイベントはそこに格納されます。通常は、requiredフィールドが欠落している、値を宣言された型に変換できない、またはバリデーターが失敗することが原因です。

パーサーを調整するには、編集して保存します。編集すると、新しい不変のバージョンが追加されます;以前のバージョンが変更されることはなく、バージョン番号が再利用されることもありません。新しいバージョンではパーサーの名前はそのままに、定義のみが変更されます。データソースは特定のバージョンをピン留めするため、新しいバージョンを反映するにはデータソースを更新してください。「パーサーのバージョンを変更」をご覧ください。既存の解析済みデータは再処理されません。新しいバージョンは、変更を保存した後に取り込まれたイベントに適用されます。

その他のリソース​