投稿日: May 31, 2022

AWS AppSync は、GraphQL および Real-time API の作成と管理を容易にするフルマネージドサービスです。これにより、デベロッパーは単一の API エンドポイントを介して 1 つ以上のデータソースからのデータに安全にアクセスしたり、そのようなデータを操作および結合したりすることが可能になります。GraphQL では、Amazon DynamoDB、AWS Lambda、HTTP API などのデータソースのデータと、GraphQL スキーマで定義された型、フィールド、操作をリンク、または「解決」するビジネスロジックを実装するために、リゾルバという特別な関数が使用されます。

AppSyncのリゾルバは、デベロッパーが識別子 ($util.autoId and $util.autoUlid) の自動生成、パース ($util.parseJson) や JSON の変換 ($util.toJson)、URL/Base64 エンコード ($util.urlEncode) やデコード ($util.base64Decode) の実行、タイムスタンプ の生成や変換 ($util.time.nowISO8601)、XML から JSON への変換 ($utils.xml) 、権限チェック、フォーマットや条件の検証などを、すべて AppSync API 層で直接行える柔軟な統合ユーティリティに対応しています。AppSync リゾルバでこれらのタスクを実行するために、独自のロジックを作成する必要はありません。

今日、私たちは AppSync デベロッパーがサーバーレス GraphQL 開発ツールボックスに追加できる 2 つの新しいユーティリティを追加します: $util.autoKsuid および $util.log。この新しいユーティリティにより、AppSync は KSUID (K-Sortable Unique IDentifiers) を自動的に生成できるようになりました。これは、特別な型認識ロジックなしに生成タイムスタンプで自然にソートされた識別子で、リゾルバから CloudWatch Logs に直接文字またはオブジェクトを送信するため、GraphQL リゾルバコードのトラブルシューティングとデバッグを容易にするものです。

この機能は、AppSync がご利用いただけるすべての AWS リージョンで利用可能です。詳細については、ブログ記事と AppSync ドキュメントを参照してください。