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

アプリケーションをデバッグする

Slate アプリケーションは、数百個のウィジェット、関数、クエリ、イベントが依存関係の網を形成し、非常に複雑になることがあります。Slate アプリケーションのパフォーマンスの問題は、期待されるデータがテーブルに表示されない、ボタンが期待されるレスポンスを返せないなど、ユーザーインターフェースで最初に見つかることがよくあります。ただし、これらの問題の根本原因は、バックエンドのどこかにある可能性があります。

Slate のヘルスチェックダイアログとデバッガーは、エラーの調査と解決を容易にし、ウィジェットに古いデータや不正確なデータが表示されるのを防ぎます。

ヘルスチェックダイアログは、すべてのエラーと警告を1つの表示にまとめることで、アプリケーションの作成者が失敗したクエリや関数をすばやく特定し、問題を解決できるようにします。

デバッガーは、ブレークポイントを使用したアプリケーションのテストを可能にし、Slate アプリケーションのコンポーネント全体にわたる問題を見つけて対処しやすくします。また、アプリケーションの作成者が、変更によってほかのアプリケーションコンポーネントに生じる下流への影響を理解するのにも役立ちます。

ヘルスチェックダイアログ

Slate アプリケーションを編集モードで開くと、読み込み時にすべてのクエリと関数が正常に実行されたかを Slate が自動的に確認します。ただし、条件付きのクエリは、アプリケーションのデフォルトの状態で条件が満たされていない場合、実行されないことがあります。

発生したエラーや警告は、ページ上部にあるアクションバーに表示されます。

ヘルスチェックダイアログのボタンを赤い四角で強調表示した Slate アプリケーションバー

問題アイコンを選択すると、ヘルスチェックダイアログが開きます。ここから、問題が発生しているクエリや関数に、キャンバス上または依存関係グラフ表示で直接移動できます。

クエリと関数のすべてのエラーと警告を表示するヘルスチェックダイアログ

エラーは、クエリパネルや関数パネルにも表示されます。クエリパネルでは、失敗したすべてのクエリが強調表示されます。テストを選択すると、クエリが実行され、エラーの詳細を確認できます。

クエリのエラーを強調表示するクエリパネル

関数パネルでは、失敗した関数がすべて強調表示されるわけではありません。関数を実行するには、テストを選択します。失敗した場合は、詳細なエラーメッセージが表示され、さらに分析できます。

関数のエラーを強調表示する関数パネル

オントロジー SDK のエラー

Slate アプリケーションでオントロジー SDKを使用している場合、ヘルスチェックダイアログにはオントロジー SDK の読み込みエラーも表示されます。オントロジー SDK の読み込みに失敗した場合は、OSDK タブを選択して、エラーの詳細情報とガイダンスを確認します。ダイアログ内の直接リンクを使用してオントロジー SDK の設定パネルを開き、設定の問題を修正します。

デバッガー

Slate のデバッガーは、関連するすべての情報を1つの表示にまとめ、エラー調査のプロセスを簡素化します。

デバッガー

デバッガーを有効にする

デバッガーを有効または無効にするには、依存関係タブの右上にあるデバッガーのトグルを切り替えます。

デバッガーを有効にすると、グラフの下部にドロワーが追加されます。左側にはブレークポイントが設定されたすべてのノードが一覧表示され、右側には選択したノードの現在の値がプレビュー表示されます。ドロワーからアプリケーションを実行および更新することもできます。スクロールバーを使用すると、コンポーネントの大きな状態を省略せずに表示できます。

ブレークポイントを設定する

コンポーネントをグラフに追加すると、そのコンポーネントにブレークポイントを設定できます。ブレークポイントを追加するには、グラフ上のノードにカーソルを合わせ、ノードの上に表示されるブレークポイントを選択します。ブレークポイントを設定すると、そのノードの項目が下部のドロワーに表示されます。

アプリケーションを実行または更新すると、ブレークポイントが設定されたノードが実行される前に、実行が一時停止します。

ノードを実行および更新する

デバッグ中に、連続するノードやコンポーネントを再実行する必要が生じることがあります。ノードはさまざまな方法で再実行できます。デバッガーでは、任意のノードの再生ボタンを選択できます。選択したノードから始まるすべてのノードが実行され、次のブレークポイントに到達すると停止します。

下部のドロワーにある更新ボタンをクリックすると、アプリケーション全体を更新することもできます。アプリケーションを更新すると、ページを再読み込みせずにすべてのイベントが再びトリガーされます。

最後に、Slate アプリケーション自体で操作を行うことで、ノードを手動でトリガーすることもできます。アプリケーションのインターフェースでクエリを実行したり、ボタンを選択したりすると、デバッガーでノードを手動実行するのと同じように動作します。