安全なサブグラフのコード生成
Reading time: 4 min
は、プロジェクトのgraphqlスキーマからヘルパー関数のセットを生成するコード生成ツールです。これにより、サブグラフ内のエンティティとのすべてのインタラクションが完全に安全で一貫性のあるものになることを保証します。
-
継続的なアップタイムです。誤って処理されたエンティティによってサブグラフがクラッシュすることがあり、The Graphに依存しているプロジェクトに支障をきたすことがあります。ヘルパー関数を設定して、サブグラフを「クラッシュしない」ようにし、ビジネスの継続性を確保しましょう。
-
完全な安全です。サブグラフの開発でよく見られる問題は、未定義のエンティティのロード、エンティティのすべての値の設定または初期化、エンティティのロードと保存のレースコンディションの問題です。エンティティとのすべてのインタラクションが完全にアトミックであることを確認する。
-
ユーザー設定可能 デフォルト値を設定し、個々のプロジェクトのニーズに合ったセキュリティチェックのレベルを設定することができます。サブグラフのロジックに違反している箇所を示す警告ログが記録され、データの正確性を確保するために問題の修正に役立ちます。
主な特徴
-
コード生成ツールは、すべてのサブグラフ・タイプに対応し、ユーザーが値を正当に設定できるように設定可能です。コード生成は、この設定を用いて、ユーザの仕様に沿ったヘルパー関数を生成します。
-
また、このフレームワークには、エンティティ変数のグループに対して、カスタムだが安全なセッター関数を作成する方法が(設定ファイルを通じて)含まれています。この方法では、ユーザーが古いグラフ・エンティティをロード/使用することは不可能であり、また、関数が必要とする変数の保存や設定を忘れることも不可能です。
-
警告ログは、サブグラフのロジックに違反がある場所を示すログとして記録され、データの正確性を確保するための問題の修正に役立ちます。これらのログは、The Graphのホスティングサービスの「Logs」セクションで確認することができます。
Subgraph Uncrashableは、Graph CLI codegenコマンドでオプションのフラグとして実行することができます。
graph codegen -u [options] [<subgraph-manifest>]