Tines
プレビュー
Lakewatchは プライベート プレビュー段階です。アクセスをリクエストするには、Databricksアカウントチームに連絡してください。
LakewatchのアラートをTinesストーリーにエクスポートします。アラートが作成されると、LakewatchはJSONイベントをTines Webhookに投稿し、Tinesストーリーがその処理を決定します。送信先全体でのエクスポートの動作については、「 アラート通知先」を参照してください。
Tinesへのエクスポートは、LakewatchからTinesへの一方通行です。Lakewatchは、Unity Catalogシークレットとして保存するWebhookシークレットを使用して認証を行い、TinesのWebhookアクションを通じてイベントを送信します。
イベントの配信方法
- アラート作成時 : Lakewatchは
event_typelakewatch.alert.createdを含むJSONイベントをPOSTします。ペイロードはジェネリックな Webhook の宛先と同じスキーマおよびフィールド名を使用するため、Tines ストーリーは同じフィールドを読み取ることができます。 - アラート更新時 : 更新配信が宛先に対して有効になっている場合、Lakewatchは既にエクスポートされているアラートへの以降の変更に対する
lakewatch.alert.updatedイベントもPOSTします。更新配信を有効にするには、「設定を構成する」を参照してください。 - ストーリーが結果を決定する :LakewatchはイベントをTinesストーリーに渡します。
2xxレスポンスは、Tinesがイベントを受け入れたことを意味しますが、ストーリーがイベントに対してアクションを実行したことを意味するものではありません。Lakewatchがエクスポートの成功を報告してもTinesで何も起こらない場合は、エクスポート構成ではなくストーリーのロジックを確認してください。
配信は最大1回です。TinesへのPOSTが失敗した場合、Lakewatchは失敗を記録しますが、再試行は行われず、イベントは再送信されません。アラートはLakewatchで引き続き作成されます。
同じアラートが2回処理されることを防ぐために、Tinesストーリーのdata.alert_idフィールドでイベントを関連付けます。delivery_attempt_idで重複排除を行わないでください。これは配信ごとに新しい値です。更新の配信が有効な場合、同じalert_idに対して複数のイベントを受け取るため(createdイベントと後続のupdatedイベント)、alert_idでそれらを折りたたむのではなく、event_typeで区別します。
前提条件
Tines Webhookの設定
Tinesストーリーで、インバウンドWebhookアクションを追加し、シークレットで認証するように構成します:
- ストーリーに Webhook アクションを追加します。
- ヘッダーとして送信されるシークレットを要求するようにアクションを設定します(シークレットアクセスモード)。Webhook URLとシークレットをメモします。
詳細については、「Tines Webhookアクションのドキュメント」を参照してください。
Webhook URLは、https://<tenant>.tines.com/webhook/<path>の形式のWebhookアクションURLである必要があります。
WebhookシークレットをUnity Catalogシークレットとして保存する
Lakewatchは、アラートをエクスポートするたびに、catalog.schema.secretの形式で3レベルの名前を持つ保護可能なUnity CatalogシークレットからWebhookシークレットを読み取ります。Lakewatchはシークレット名のみを保存し、シークレット値は保存しません。
このシークレットは事前に作成しておくか、 「シークレットの作成」 ボタンを使用してTinesエクスポートを構成する際にインラインで作成できます。いずれの場合も、シークレットの作成にはカタログ上のUSE CATALOGと、スキーマの所有権、あるいはスキーマ上のCREATE SECRETとUSE SCHEMAの両方が必要です。ステップについては、「シークレットを作成する」を参照してください。
必要な権限
Tinesエクスポートを構成するには、以下のものが必要です。
READ SECRETWebhookシークレットを保持するUnity Catalogシークレット、またはその親スキーマまたはカタログ。Lakewatchは、構成を保存する際にシークレットを読み取れることを確認します。付与するには、 「シークレットの権限を管理する」を参照してください。- ワークスペース設定でアラートのエクスポート構成を編集する権限。
エクスポート時に、LakewatchはWebhookシークレット自体をService Principalとして読み取ります。Lakewatchはエクスポートするたびにシークレットを名前で読み取るため、シークレットをローテーションしてもタッチレスになります。Unity Catalogのシークレットを更新するだけで、Lakewatchはエクスポート構成を変更することなく、次のエクスポートで新しい値を使用します。
Tinesのエクスポートを構成
アラート 設定セクションで、アラートのTines宛先を構成します。
- Lakewatchサイドバーで 設定 に移動し、 アラート を開きます。
- アラート の下で エクスポート 設定を見つけます。
- エクスポート送信先を Tines に設定します。
- ワークスペース の場合は、送信先がPrivateLink Endpointやリージョン制限されたサービスなど、特定のワークスペースのネットワークの背後にある場合を除き、現在のワークスペースを保持してください。このワークスペースのネットワークがエクスポートを配信します。
- Webhook URL に、Tines WebhookアクションURL(
https://<tenant>.tines.com/webhook/<path>)を入力します。 - Webhookシークレット を、Webhookシークレットを保持するUnity Catalogシークレットに設定します。その3レベルの名前(
catalog.schema.secret)を入力または貼り付け、[ シークレットの選択 ] をクリックして既存のシークレットを選択するか、[ シークレットの作成 ] をクリックして、ページを離れずにWebhookシークレットからシークレットを作成します。保存すると、シークレットフィールドは読み取り専用になります。シークレットを更新するには、Unity Catalogでシークレットをローテーションします。 - 変更を保存します。
アラート設定の完全なリファレンスについては、「 設定の構成」を参照してください。
トラブルシューティング
- イベントがストーリーに届きません: Webhook URLがTines WebhookアクションURLではないか、ストーリーが無効になっています。URLが
https://<tenant>.tines.com/webhook/<path>の形式であること、およびストーリーが有効であることを確認してください。 - 構成が保存されません :Unity Catalogシークレットを読み取る権限がないか、シークレット名が
catalog.schema.secretの形式ではありません。シークレットとシークレット名へのアクセスを確認してください。 - Lakewatchはエクスポートが成功したと報告するが、Tinesでは何も起こらない :
2xxレスポンスは、Tinesがイベントを受け入れたことを意味し、ストーリーがイベントに対してアクションを実行したことを意味するわけではありません。Tines ストーリーのロジックを確認してください。 - Webhookシークレットをローテーションしました :新しい値でUnity Catalogシークレットを更新してください。エクスポート構成を変更する必要はありません。