このセクションでは、Blocklet Serverから運用データを取得するために使用されるGraphQLクエリの詳細なリファレンスを提供します。これらのクエリは、システムの健全性の監視、バックアップの管理、アクティビティの監査、およびトラフィックパターンの洞察を得るために不可欠です。データとオペレーションに関連するミューテーションについては、データとオペレーションのミューテーションセクション を参照してください。
バックアップ
blockletのバックアップレコードを管理および監視します。
getBlockletBackups
特定のblockletのバックアップレコードのリストを取得します。オプションで時間範囲でフィルタリングできます。
パラメーター
- input
RequestGetBlockletBackupsInput(required) — クエリパラメータを含むオブジェクト。- did
string(required) — バックアップを取得するblockletのDID。 - startTime
string— バックアップレコードの時間範囲の開始。 - endTime
string— バックアップレコードの時間範囲の終了。
- did
使用例
import BlockletServerClient from '@blocklet/server-js';
const client = new BlockletServerClient();
const backups = await client.getBlockletBackups({
input: { did: 'z8ia22V5CfqF2e4sAFc9a2B9z9mC6a8x461sC' }
});
console.log(backups);レスポンス例
{
"code": "ok",
"backups": [
{
"appPid": "z8ia22V5CfqF2e4sAFc9a2B9z9mC6a8x461sC",
"userDid": "z1...",
"strategy": 1,
"sourceUrl": "/path/to/backup",
"target": "disk",
"targetName": "Local Disk",
"targetUrl": "/path/to/backup/target",
"createdAt": 1678886400,
"updatedAt": 1678886400,
"status": 1,
"message": "Backup completed successfully",
"progress": 100,
"metadata": {}
}
]
}getBlockletBackupSummary
指定された時間範囲内で、blockletのバックアップ活動の要約(成功数とエラー数を含む)を日付別にグループ化して取得します。
パラメーター
- input
RequestGetBlockletBackupSummaryInput(required) — クエリパラメータを含むオブジェクト。- did
string(required) — blockletのDID。 - startTime
string— バックアップ要約の時間範囲の開始。 - endTime
string— バックアップ要約の時間範囲の終了。
- did
使用例
import BlockletServerClient from '@blocklet/server-js';
const client = new BlockletServerClient();
const summary = await client.getBlockletBackupSummary({
input: { did: 'z8ia22V5CfqF2e4sAFc9a2B9z9mC6a8x461sC' }
});
console.log(summary);レスポンス例
{
"code": "ok",
"summary": [
{
"date": "2023-03-15",
"successCount": 5,
"errorCount": 1
}
]
}ログ
監視とトラブルシューティングのために監査ログとアクティビティログにアクセスします。
getAuditLogs
監査ログのページ分割されたリストを取得し、ノード全体のアクティビティを追跡できます。ログはスコープ、カテゴリ、およびコンテンツでフィルタリングできます。
パラメーター
- input
RequestGetAuditLogsInput— クエリパラメータを含むオブジェクト。- paging
PagingInput— ページネーションオプション。 - scope
string— スコープでフィルタリングします(例:「node」、「z8ia...」)。 - category
string— カテゴリでフィルタリングします(例:「user」、「blocklet」)。 - actionOrContent
string— アクションまたはコンテンツフィールドの検索文字列。
- paging
使用例
import BlockletServerClient from '@blocklet/server-js';
const client = new BlockletServerClient();
const logs = await client.getAuditLogs({
input: {
paging: { page: 1, pageSize: 10 },
category: 'user'
}
});
console.log(logs);レスポンス例
{
"code": "ok",
"list": [
{
"id": "...",
"scope": "node",
"category": "user",
"action": "login",
"content": "User z1... logged in",
"actor": {
"did": "z1...",
"role": "owner",
"fullName": "Alice"
},
"env": {},
"createdAt": 1678886400,
"ip": "127.0.0.1",
"ua": "Mozilla/5.0..."
}
],
"paging": {
"total": 1,
"pageSize": 10,
"pageCount": 1,
"page": 1
}
}getPassportLogs
特定パスポートのアクティビティログを取得し、発行、失効、使用などのアクションを追跡します。
パラメーター
- input
RequestPassportLogInput(required) — クエリパラメータを含むオブジェクト。- teamDid
string(required) — チームまたはblockletのDID。 - query
PassportLogQueryInput(required) — クエリフィルター。- passportId
string(required) — ログを取得するパスポートのID。
- passportId
- paging
PagingInput— ページネーションオプション。
- teamDid
使用例
import BlockletServerClient from '@blocklet/server-js';
const client = new BlockletServerClient();
const logs = await client.getPassportLogs({
input: {
teamDid: 'z8ia22V5CfqF2e4sAFc9a2B9z9mC6a8x461sC',
query: { passportId: 'zpassport_...' },
paging: { page: 1, pageSize: 10 }
}
});
console.log(logs);レスポンス例
{
"passportLogs": [
{
"id": 1,
"passportId": "zpassport_...",
"action": "issued",
"operatorIp": "127.0.0.1",
"operatorUa": "Mozilla/5.0...",
"operatorDid": "z1...",
"metadata": {},
"createdAt": 1678886400
}
],
"paging": {
"total": 1,
"pageSize": 10,
"pageCount": 1,
"page": 1
}
}分析とインサイト
blockletのパフォーマンスと使用状況に関するインサイトを得ます。
getTrafficInsights
特定のblockletのトラフィック分析を提供します。これには、指定された日付範囲内のリクエスト数、ユニークビジター数、帯域幅使用量が含まれます。
パラメーター
- input
RequestGetTrafficInsightsInput(required) — クエリパラメータを含むオブジェクト。- did
string(required) — blockletのDID。 - startDate
string— 分析期間の開始日(例:「YYYY-MM-DD」)。 - endDate
string— 分析期間の終了日(例:「YYYY-MM-DD」)。 - paging
PagingInput— ページネーションオプション。
- did
使用例
import BlockletServerClient from '@blocklet/server-js';
const client = new BlockletServerClient();
const insights = await client.getTrafficInsights({
input: {
did: 'z8ia22V5CfqF2e4sAFc9a2B9z9mC6a8x461sC',
startDate: '2023-01-01',
endDate: '2023-01-31'
}
});
console.log(insights);レスポンス例
{
"code": "ok",
"list": [
{
"did": "z8ia22V5CfqF2e4sAFc9a2B9z9mC6a8x461sC",
"date": "2023-01-15",
"totalRequests": 1500,
"uniqueVisitors": 200,
"bandwidth": 512000000
}
],
"paging": {
"total": 1,
"pageSize": 10,
"pageCount": 1,
"page": 1
}
}これで、Blocklet Serverから運用データをクエリするツールが手に入りました。公開ワークフローとプロジェクトリソースの管理方法については、公開とプロジェクト セクションに進んでください。