跳到主要内容

数据与运营

本节提供了用于从 Blocklet Server 获取运营数据的 GraphQL 查询的详细参考。这些查询对于监控系统健康状况、管理备份、审计活动以及深入了解流量模式至关重要。有关数据和运营的变更操作,请参阅数据与运营变更操作部分。

本节提供了用于从 Blocklet Server 获取运营数据的 GraphQL 查询的详细参考。这些查询对于监控系统健康状况、管理备份、审计活动以及深入了解流量模式至关重要。有关数据和运营的变更操作,请参阅数据与运营变更操作部分。

备份

管理和监控 Blocklet 备份记录。

getBlockletBackups

检索特定 Blocklet 的备份记录列表,可选择按时间范围进行筛选。

参数

  • input RequestGetBlockletBackupsInput (required) — 包含查询参数的对象。
    • did string (required) — 要检索备份的 Blocklet 的 DID。
    • startTime string — 备份记录的时间范围的开始时间。
    • endTime string — 备份记录的时间范围的结束时间。

用法示例

javascript
import BlockletServerClient from '@blocklet/server-js';

const client = new BlockletServerClient();
const backups = await client.getBlockletBackups({
  input: { did: 'z8ia22V5CfqF2e4sAFc9a2B9z9mC6a8x461sC' }
});
console.log(backups);

响应示例

json
{
  "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 — 备份摘要的时间范围的结束时间。

用法示例

javascript
import BlockletServerClient from '@blocklet/server-js';

const client = new BlockletServerClient();
const summary = await client.getBlockletBackupSummary({
  input: { did: 'z8ia22V5CfqF2e4sAFc9a2B9z9mC6a8x461sC' }
});
console.log(summary);

响应示例

json
{
  "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 — 用于操作或内容字段的搜索字符串。

用法示例

javascript
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);

响应示例

json
{
  "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。
    • paging PagingInput — 分页选项。

用法示例

javascript
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);

响应示例

json
{
  "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 — 分页选项。

用法示例

javascript
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);

响应示例

json
{
  "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 查询运营数据的工具。要了解如何管理发布工作流和项目资源,请继续阅读发布与项目部分。