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

トラブルシューティングリファレンス

このページでは、Foundry Rules でよくある問題とデバッグの手順について説明します。

エラーメッセージ

ReadonlyObjectError

作成した各オブジェクトにライトバックデータセットが関連付けられていることを確認してください。詳細については、ルールを開発して実行するのライトバックデータセットをビルドする手順を参照してください。

400: Actions:InvalidParametersForApply

アクションのリクエストで、必要なパラメーターの一部が指定されていません。アクションが正しく設定されていることを確認してください。

カスタムプロパティの提案の差分が正しく表示されない

提案ウィジェットで差分を正しく表示するには、次の手順に従います。

  1. Workshop アプリで、Proposal Reviewer ウィジェット設定のセクションでまとめられたプロパティに new_<PROPERTY> プロパティを追加します。ここで「現在の」値を選択する必要はありません。

  2. 必要に応じて、プロパティ名を編集して「new」の接頭辞を削除します。

    提案レビューアーの設定サイドバーに追加された Alert Recipient プロパティ。「New」の接頭辞が強調表示され、削除できることを示しています
  3. 提案オブジェクトの現在のプロパティに foundry-rules.property-diff-for:ID_OF_NEW_PROPERTY タイプクラスを追加します。タイプクラスは種類と名前で定義され、kind.name と記述します。foundry-rules.property-diff-for:new_<PROPERTY> の場合、種類は foundry-rules、名前は property-diff-for:new_<PROPERTY> です。

    オントロジーアプリのプロパティに追加されたタイプクラスの名前と種類の例

以前のエラー

2022年7月より前は、Foundry Rules(旧称 Taurus)に追加の設定が必要で、使用する概念も少し異なっていました。以下のエラーは、そのプロセスに関連するものです。2022年7月以降に Foundry Rules をデプロイし、以下のいずれかの問題が発生した場合は、Workflow Configuration Editor に移動して、ワークフローにエラーがないか確認してみてください。

Taurus:MissingOntologyInformation

このエラーは、エラーメッセージで特定された要求対象のオントロジー情報が存在しないか、トランスフォームにその情報へのアクセス権限がないことを示します。エラーを解消するには、次の手順を確認してください。

  1. メッセージ内の RID または ID が Ontology Manager に存在することを確認します。
  2. Foundry Rules の Workshop アプリケーションで使用されるすべてのオブジェクトタイプおよびリレーションが、コードリポジトリの設定タブ内にあるオントロジー・インポートヘルパーを使用してプロジェクトにインポートされていることを確認します。
  3. Foundry Rules の Workshop アプリケーションで使用されるすべてのオブジェクトタイプおよびリレーションの RID が、トランスフォームコードの先頭にある @AdditionalInputs セクションに記載されていることを確認します。@AdditionalInputs の使用について詳しくはこちら。
  4. Foundry Rules の Workshop アプリケーションで使用されるオブジェクトタイプと多対多リレーションの元データセットがすべて、プロジェクトビューのプロジェクト参照セクションを使用してプロジェクトにインポートされていることを確認してください。これには、制限付きビューを元にしているオブジェクトやリレーションも含まれます。

TransformsGradlePlugin:StaticTaurusDependencyDisallowed

このエラーは、tau-execution-core への依存関係に固定のバージョン番号を宣言することが許可されなくなったことを示します。このエラーを解消するには、宣言したバージョンを固定のバージョン番号からバージョン範囲 [0,1[ に変更します。

  1. まず、Foundry Rules のトランスフォームを含むコードリポジトリに移動します。
  2. 隠しファイル・フォルダを表示をオンにします。
  3. プロジェクトレベルの build.gradle ファイル内で、 compile "com.palantir.tau-execution:tau-execution-core:0.x.x" の行を compile "com.palantir.tau-execution:tau-execution-core:[0,1[" に変更します。
    • 別の行 compile "com.palantir.tau-grammar:tau-grammar-api-objects:0.x.x" がある場合は、この行を削除します。
  4. 変更結果をコミットすると、チェックに合格するはずです。

Rule Editor のプレビューが Foundry Rules のトランスフォームの出力と一致しない

  1. Foundry Rules のトランスフォームの入力データセットが、Rule Editor のプレビューでオブジェクトの元として使用されるデータセットと一致していることを確認します。
  2. Foundry Rules のトランスフォームで、フラグ .shouldMatchContourExecutionBehavior(true) が true に設定されていることを確認します(以下の例を参照)。このフラグにより、Foundry Rules のトランスフォームで実行されるロジックが、Rule Editor のプレビューと同じように実行されます。
Copied!
1 2 3 4 5 6 7 8 9 10 11 12 // Foundry Rules の Rule Runner を設定する Args ruleRunnerArgs = new TaurusRuleRunner.Args.Builder() .rules(new Rules.Builder() .logicColumnName("RuleLogic") .ruleIdColumnName("RuleId") .dataset(rulesDataset) .build()) .putSources(SourceReference.objectTypeId("employee"), source) // ルールの実行出力をルールエディターウィジェットのプレビューと一致させるには、true に設定します .shouldMatchContourExecutionBehavior(true) .context(transformContext) .build();

Taurus:UnknownMeasureName

このエラーは、センサーオブジェクトが存在しない場合、またはトランスフォームに適切な権限がない場合に発生することがあります。エラーを解消するには、次の事項を確認してください。

  • ルートオブジェクトとセンサーオブジェクト間のリンクの RID が、コードリポジトリの設定タブ内にあるオントロジー・インポートヘルパーを使用してプロジェクトにインポートされていることを確認します。
  • ルートオブジェクトとセンサーオブジェクト間のリンクの RID が、トランスフォームコードの先頭にある @AdditionalInputs セクションに記載されていることを確認します。
  • センサーオブジェクトの元データセットが、トランスフォームコードの先頭にある @AdditionalInputs セクションに記載されていることを確認します。
  • センサーオブジェクトの元データセットが、プロジェクトビューのプロジェクト参照セクションを使用してプロジェクトにインポートされていることを確認します。

デプロイガイドのすべての手順に従っていることを確認してください。