注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

アクションログ

アクションログは、成功したアクション実行をオブジェクトタイプとしてモデル化し、オブジェクトを扱う Foundry ツールで分析および表示できるようにします。アクションログのオブジェクトタイプを意思決定ワークフローへの入力として使用し、オントロジーへの変更を監視します。

アクションログは、アクションの実行によって行われた意思決定を記録し、オントロジー内でデータとして利用できるように設計されています。オブジェクトへの すべての編集を記録したいユースケースでは、オブジェクトタイプに対して編集履歴を有効にできます。

背景

アクションは、オントロジーを変更し、関連する副次的効果をトリガーする主要な方法です。こうしたオントロジーの変更は、多くの場合、特定の意思決定の結果であるか、データ監査の要件を伴います。アクションログは、これらの意思決定やデータ編集を表すオブジェクトタイプの生成と保守を簡素化します。識別しやすいように、生成されたアクションログのオブジェクトタイプには、表示名として [Log] <action type name>、複数形の表示名として [Logs] <action type name> が設定されます。

アクションログを使用するタイミング

Foundry には、変更に関する疑問に答えるための機能がいくつかありますが、これらは相互に代替できるものではありません。次のテーブルを使用して、適切な機能を選択します。

確認したい内容使用する機能
どのような意思決定が、誰によって、いつ、どのようなコンテキストで行われましたか?アクションログ
編集方法にかかわらず、このオブジェクトへのすべての編集の完全な履歴はどのようなものですか?編集履歴
このアクションはどのくらいの頻度で成功または失敗し、どのくらいの時間がかかりますか?アクションメトリクス
アクションによって適用された編集を元に戻すにはどうすればよいですか?アクションを元に戻す
アクションが失敗し始めたときにアラートを受け取るにはどうすればよいですか?監視

この区分から、次の2点が重要になります。

  • アクションログは、成功したアクション実行のみを記録します。失敗は記録しません。失敗はアクションメトリクスで追跡されます。
  • アクションログは、アクションタイプを通じて行われた編集を記録します。元データソースへの直接書き込みやレガシーの Foundry Forms のライトバックなど、アクションタイプの外部で適用された編集では、アクションログオブジェクトは生成されません。この違いはクライアントではなく、編集経路によるものです。API や SDK を通じて適用されたアクションタイプも、ユーザーインターフェースと同様にアクションログオブジェクトを生成します。また、Object Explorer のインライン編集はアクションを介して行われるため、ログに記録されます。経路にかかわらずすべての編集を網羅する必要がある場合は、編集が適用される仕組みを確認してください。

アクションログを設定する場所

アクションログは、Ontology Managerの2つの独立した場所で設定します。

単一のアクションタイプに対してアクションログオブジェクトを生成するには: アクションタイプを開き、機能タブを選択します。アクションログオブジェクトを作成するセクションを探します。インターフェースでは、この機能はこのアクションが正常にトリガーされるたびにオブジェクトを生成すると説明されています。トグルを有効にしてから、オブジェクトタイプを生成するを選択し、アクションログの元となるオブジェクトタイプを作成します。

特定のオブジェクトタイプを編集するすべてのアクションにアクションログを必須にするには: オブジェクトタイプを開き、データソースタブを選択して、編集セクションを探し、アクションログのあるアクションタイプのみを許可するを有効にします。インターフェースでは、この設定の効果は*このタイプのオブジェクトを編集するすべてのアクションは、機能するためにアクションログが必要になります。*と説明されています。

編集が有効になるまで、アクションログを必須にするトグルは非表示

アクションログのあるアクションタイプのみを許可するは、オブジェクトタイプで編集がすでに有効になっている場合にのみ表示されます。トグルが見つからない場合は、まずオブジェクトタイプで編集を許可を有効にし、変更を保存してから、データソースタブに戻ってください。編集を有効にする方法については、ユーザーによるオブジェクトとリンクの編集を許可するを確認してください。編集を許可を再び無効にすると、この設定もクリアされます。

アクションログのオントロジー

アクションログのオブジェクトタイプは、アクションタイプと一対一で対応します。アクションを実行すると、対応するアクションログのオブジェクトタイプの新しいオブジェクトが1個生成されます。この新しく作成されたオブジェクトは、実行されたアクションによって編集されたすべてのオブジェクトに自動的にリンクされます。ログのオブジェクトタイプをアクションタイプと一対一でモデル化することで、アクションログには、同時に編集されたほかのオブジェクトや、アクション実行時の(オントロジーで表現された)状態など、個々のオブジェクトの編集にとどまらないコンテキストを記録できます。

たとえば、選択された多数のアラートオブジェクトの「ステータス」プロパティを「クローズ済み」に変更する「アラートをクローズ」アクションタイプを考えてみます。アクションログを設定すると、10個のアラートオブジェクトを一度にクローズした場合、10個すべてのアラートオブジェクトへの外部キーリンクを持つアクションログオブジェクトが1個生成されます。

アクションログを使用するアクションタイプを適用するには、アクションタイプがルールや関数を通じて作成または変更するほかのオブジェクトタイプと同様に、アクションログのオブジェクトタイプに対する適切な権限が必要です。アクションタイプの権限モデルの詳細については、権限を確認してください。

アクションログのスキーマ

アクションログオブジェクトを作成するセクションでは、記録できる値がログに記録する値の下に表示され、必須の値と任意の値に分かれています。必須の値グループの値は、設定から削除できません。アクションログの概要は、ログに記録する値の上にある概要セクションで個別に設定します。

必須の値には、次のものが含まれます。

  • アクション RID: 1回のアクション実行の一意の識別子
  • アクションタイプ RID: 1個のアクションタイプの一意の識別子
  • アクションタイプのバージョン: アクションタイプが更新されるたびに自動的に増加するバージョン番号
  • 現在の Timestamp: アクションの UTC タイムスタンプ。Object Storage v2 では、コミットタイムスタンプです。
  • 現在のユーザー: 実行ユーザーの Multipass ユーザーID
  • 編集されたオブジェクト: アクションによって編集されたすべてのオブジェクトの主キー値。編集されたオブジェクトの主キー以外のプロパティの保存には対応していません。

必須の値グループには、副次的効果と元に戻す操作の来歴も含まれます。これらは、編集が行われた理由を監査する際に役立ちます。

  • アクションが呼び出した同期および非同期の Webhook の識別子
  • アクションが送信した通知と、通知を受けたユーザーの識別子
  • アクションが適用されたシナリオがある場合は、その RID
  • アクションが元に戻されたかどうか、および元に戻したユーザーとそのタイムスタンプ

任意の値には、次のものが含まれます。

  • パラメーター値
  • オブジェクト参照パラメーターのプロパティ値(複数の値を許可が有効になっているオブジェクト参照パラメーターでは利用できません)

アクションログのオブジェクトタイプは、アクションによって編集されないオブジェクトのプロパティを保存するように設定できます。これにより、データの編集に加えて、オントロジーの編集に関するコンテキストや動機についての関連情報も保存できます。

「アラートをクローズ」アクションタイプの例に戻り、アラートオブジェクトには「高優先度」と「低優先度」の値を持つ「優先度」プロパティのほか、「作成日時」のタイムスタンプと「ソース」のマシンもあるとします。アクションログでは、「アラートをクローズ」によって編集されない場合でも、これらのプロパティを保存できます。「優先度」で集計することで、その列を編集せずに、「『高優先度』のアラートが最も多く発生するソースはどこか」や「『高優先度』のアラートをクローズするまでにどれくらい時間がかかるか」といった質問に答えられます。

概要

ログに記録する値の上にある概要セクションには、アクションを説明するカスタマイズ可能な文字列を設定します。インターフェースには、何が起こったかを人が読んで理解できる概要として追加します。/ を押すとパラメーターを参照できますと説明されています。

アクションログのタイムスタンプ

Object Storage v2 に書き込むアクションでは、アクションログと編集履歴に同じコミットタイムスタンプが使用されます。アクションは、編集をストレージに送信する準備をする際に、この UTC タイムスタンプを記録します。このタイムスタンプは、編集がクエリで表示される正確な時刻を示すものではありません。

アクションルールの現在のユーザー/時刻によって提供されるタイムスタンプは、アクションの実行開始時刻を表し、実行中は固定されます。そのため、このルールによって設定されるタイムスタンププロパティは、アクションログのタイムスタンプよりも早い値になる場合があります。

たとえば、アクションが UTC 12:00:00 に開始し、UTC 12:00:05 に編集を送信する準備をするとします。ルールの値は UTC 12:00:00 です。アクションログと編集履歴では、UTC 12:00:05 が使用されます。

アクションを元に戻しても、そのアクションログのタイムスタンプは維持されます。アクションログには、元に戻した時点のタイムスタンプが個別に記録されます。

制限と制約

アクションログを使用するワークフローを設計する前に、次の制約を確認してください。

制約詳細
プロパティタイプは作成後に固定アクションログのプロパティのデータ型は、プロパティの作成後に変更できません。ログのマッピング先であるソースプロパティのデータ型が後から変更されると、アクションタイプの検証に失敗します。復旧するには、新しいデータ型のアクションログプロパティを作成し、そのプロパティを参照するようにマッピングを更新します。
概要の長さアクションログの概要には、最大20個のパーツを使用できます。各リテラルテキストパーツには最大50文字を使用できます。この長さの制限は、パラメーターパーツには適用されません。
概要の内容アクションログの概要では、オブジェクトタイプのパラメーターを参照できません。
オブジェクト参照パラメーターログにプロパティ値を記録できるのは、単一値のオブジェクト参照パラメーターのみです。複数の値を許可が有効になっているパラメーターでは記録できません。
Media Reference パラメーターMedia Reference を使用するパラメーターは、アクションログから除外されます。
バックフィルなしアクションログを有効にしても、すでに実行されたアクションのログオブジェクトは作成されません。ログの記録は、設定を保存した時点から始まります。
編集の制限アクションログオブジェクトには、ほかのオブジェクトの編集と同じ規模とプロパティの制限が適用されます。

関数ベースのアクションタイプのアクションログ

関数ベースのアクションタイプにアクションログを設定するには、そのアクションタイプで使用されるオントロジー編集関数に Edits の来歴が設定されている必要があります。Edits の来歴の詳細については、関数のドキュメントを参照してください。

アクションログのタイムライン

Workshop のアクションログタイムラインウィジェットを使用すると、アクションログのオブジェクトタイプをタイムラインで表示できます。タイムラインを設定することで、データの監査に役立て、「何が、誰によって、いつ変更されたか」という質問に答えられます。

Workshop 内では、アクションログのオブジェクトタイプをユニオンして、ユースケース内またはオントロジー全体の編集を包括的に表示できます。

編集されたオブジェクトタイプを選択して、アクションログのタイムラインを設定します。次に、表示するアクションログのオブジェクトタイプと、表示したいアクションログのオブジェクトタイプのプロパティを選択します。

コメントウィジェットを使用して、アクションログとオブジェクトのコメントを1つのフィードにまとめて表示することもできます。

トラブルシューティング

アクションログの設定に誤りがある場合、プラットフォームに次のメッセージが表示されます。

メッセージ意味と解決方法
Action Log required but not enabledアクションタイプにアクションログがありませんが、そのアクションタイプが編集するオブジェクトタイプではアクションログが必要です。アクションタイプの [機能] タブでアクションログオブジェクトを作成するを有効にします。
Associated object type is missing. Logs are not being recorded.この設定の元となっていたアクションログのオブジェクトタイプが存在しなくなったため、ログが書き込まれていません。オブジェクトタイプを生成するを選択して、新しいオブジェクトタイプを作成します。
Action log has no writeback dataset definedアクションログのオブジェクトタイプにライトバックデータセットがないため、ログオブジェクトを保存できません。アクションログのオブジェクトタイプのライトバック先のデータソースを設定します。
This property will not be used for logging until indexing is complete.新しく追加されたアクションログのプロパティは、インデックス化の完了を待っています。インデックス化が完了すると、そのプロパティのログ記録が開始されます。
Function has no Edits Decoratorアクションタイプの基盤となる関数で、アクションログに必要な Edits 来歴が宣言されていません。関数のドキュメントを確認してください。

プラットフォームの一部のメッセージでは、アクションログルールに言及しています。これは、アクションタイプの [機能] タブにあるアクションログオブジェクトを作成するセクションと同じ設定です。

次のステップ