メトリクスとGraphQL分析
Durable Objectsは、Durable Objectの名前空間レベルおよびリクエストレベルのメトリクスを公開します。
Cloudflareダッシュボード ↗のチャートに表示されるメトリクスは、CloudflareのGraphQL Analytics APIからクエリされます。メトリクスにはGraphQLを介してプログラム的にアクセスすることも、HTTPクライアントを使用してアクセスすることもできます。
Durable Objectsの名前空間ごとの分析は、Cloudflareダッシュボードで利用可能です。名前空間の現在および過去のメトリクスを表示するには:
- Cloudflareダッシュボード ↗にログインし、アカウントを選択します。
- Workers & Pages > Durable Objects ↗に移動します。
- アカウントレベルのDurable Objectsの使用状況を表示します。
- 既存の名前空間を選択します。
- メトリクスタブを選択します。
オプションで、クエリする時間ウィンドウを選択できます。デフォルトは過去24時間です。
Durable ObjectメトリクスはGraphQLによって提供されています。
Durable Objectメトリクスを含むデータセットは次のとおりです:
durableObjectsInvocationsAdaptiveGroupsdurableObjectsPeriodicGroupsdurableObjectsStorageGroupsdurableObjectsSubrequestsAdaptiveGroups
GraphQL Introspectionを使用して、各データセットによって公開されているフィールドに関する情報を取得します。
WebSocketsを使用するDurable Objectsは、WebSocketが異なるタイプのリクエストを持つため、いくつかのGraphQLデータセットにわたるリクエストメトリクスを確認できます。
- WebSocket接続自体のメトリクスは、接続が閉じられると
durableObjectsInvocationsAdaptiveGroupsに表示されます。WebSocket接続は長期間持続するため、接続はDurable Objectが終了するまで終了しないことがよくあります。 - WebSocket接続の受信および送信WebSocketメッセージのメトリクスは、
durableObjectsPeriodicGroupsで利用可能です。WebSocket接続がWebSocketハイバネーションを使用している場合、受信WebSocketメッセージは代わりにdurableObjectsInvocationsAdaptiveGroupsに表示されます。
viewer { /* アカウントタグを置き換えてください。これは、dash.cloudflare.comにログインしたときに すべてのURLの先頭に表示される32桁の16進数のIDです。 または、Workers & Pagesの概要のサイドバーの「アカウントID」の下に表示されます。 */ accounts(filter: {accountTag: "your account tag here"}) { // 日付を最近の日付に置き換えてください durableObjectsInvocationsAdaptiveGroups(filter: {date_gt: "2023-05-23"}, limit: 1000) { sum { // インストロスペクションを通じて見つかった他のフィールドをここに追加できます requests responseBodySize } } durableObjectsPeriodicGroups(filter: {date_gt: "2023-05-23"}, limit: 1000) { sum { cpuTime } } durableObjectsStorageGroups(filter: {date_gt: "2023-05-23"}, limit: 1000) { max { storedBytes } } } }認証やWorkersデータセットのクエリについて詳しくは、GraphQLを使用したWorkersメトリクスのクエリチュートリアルを参照してください。