一般的な問題のトラブルシューティング

問題が発生した場合は、以下のセクションをご覧ください。

Fleet Engine の Lost 状態

Fleet Engine を使用する場合は、障害を想定して実装を設計します。たとえば、Fleet Engine に車両の更新リクエストを発行すると、車両が存在しないことを示すエラーが返されることがあります。実装では、新しい状態の車両を再作成する必要があります。

Fleet Engine で壊滅的な障害が発生する可能性は非常に低いですが、その場合は、ほとんどまたはすべての車両とタスクを再作成する必要があります。作成率が高すぎると、サービス拒否(DOS)攻撃を防ぐために割り当てチェックが行われるため、割り当ての問題により一部のリクエストが再び失敗する可能性があります。この場合は、再試行のバックオフ戦略を使用して再作成率を下げます。

再試行数

Fleet Engine へのリクエストは失敗することがあるため、システムでリクエストの再試行を実装してください。Fleet Engine クライアント ライブラリは、デフォルトで再試行を発行します。

ドライバー アプリで状態が失われる

ドライバー アプリがクラッシュした場合、アプリは Driver SDK 内で現在の状態を再作成する必要があります。アプリは、タスクが存在することを確認し、現在の状態を復元するために、タスクの再作成を試みる必要があります。また、アプリは Driver SDK の経由地のリストを再作成して明示的に設定する必要があります。

: これらの復元は、エンティティがデータベースにすでに存在するかどうかを示すエラーを除き、Fleet Engine からの情報に依存することなく自律的に行う必要があります。エンティティがすでに存在する場合は、そのエラーを吸収して、ID を使用してエンティティを更新できます。