文档
矿工、钱包统计与图表 API
RustMinerSystem 端口图表、矿工列表、钱包统计、独立抽水比例、日志和 TCP 连接查询接口。
矿工、钱包统计与图表 API
本章接口主要用于端口详情页和仪表盘。GET 接口适合只读监控,比例修改接口会影响实际抽水行为。
图表与系统统计
| 方法 | 路径 | 返回用途 |
|---|---|---|
| GET | /api/stat/currency/{currency} |
指定币种总算力历史。 |
| GET | /api/stat/port/{id} |
指定监听端口算力历史。 |
| GET | /api/stat/worker/{id} |
指定矿工算力历史。 |
| GET | /api/device/stats |
全部设备数量历史。 |
| GET | /api/currency/online/stat/{coin} |
指定币种在线设备历史。 |
| GET | /api/sys/stat |
CPU、内存、接收和发送流量历史。 |
| GET | /api/sys/base/info |
当前系统资源快照。 |
这些接口都返回 ChartPoint[] 或统计数组,完整字段见图表响应。端口图表的 {id} 使用 server.port;矿工图表的 {id} 使用矿工的 sid(没有时回退到 id)。
获取矿工列表
GET /api/port/{id}/g/workers?device=0&size=50&page=1&col=s_thh&desc=1&wallet=...
| 查询参数 | 说明 |
|---|---|
device |
状态筛选。新版前端默认 0。 |
size |
每页数量。 |
page |
页码。 |
col |
排序字段,例如 s_thh。 |
desc |
1 降序,0 升序。 |
wallet |
可选,逗号分隔的钱包筛选。 |
前端读取的响应字段包括:
{
"workers": [],
"stat": {
"id": "...",
"online": 0,
"offline": 0,
"conn": 0,
"thh": 0,
"s_thh": 0,
"delay": 0,
"ct": 0
},
"pages": 0,
"total": 0,
"page": 1,
"size": 50
}
workers[] 中当前前端实际读取的字段:
| 字段 | 类型 | 说明/关联 |
|---|---|---|
id |
string | 矿工记录 ID;失败数据接口优先使用此值。 |
sid |
string | 矿工会话 ID;矿工图表和独立比例接口优先使用此值。 |
gid |
string | 矿工连接组 ID;传给 /api/group/{gid}/log 和 WebSocket 订阅。 |
name |
string | 矿工名。 |
wallet |
string | 钱包或子账号;也可作为 wallet 查询筛选值。 |
status |
number | 0、1、3 在当前前端显示为在线,其他值显示为离线。 |
s_thh |
number/string | 当前有效算力。 |
s_phh |
number/string | 当前抽水算力。 |
ca |
string | 算法类别;缺失时使用端口 server.category。 |
succ / fail |
number | 成功和失败份额数,用于计算有效率。 |
wn |
number/string | 上线时间戳,用于计算在线时长。 |
n |
number/null | 当前并发数。 |
dc |
number | 断开次数。 |
delay |
number | 延迟,毫秒。 |
mode |
number | 端口模式;1 时前端不展示断开统计。 |
r |
number | 当前矿工抽水比例,0–1 小数。 |
md |
boolean/number | 旧版矿工名替换规则的命中标志。 |
wd |
string/null | 命中的 t=2 钱包与矿工名组合热替换规则 ID;未命中时为 null 或空值。它对应 /api/ht 规则元组下标 0 的 id。 |
响应允许包含其他后端字段。调用方应保留未知字段,并使用 sid || id 作为图表和比例操作的矿工标识。wd 不为空时,通过 GET /api/ht/{server_id} 找到相同 id 的组合规则,再把 target 按 wallet.device 拆分:钱包侧结合当前 wallet 展示,矿工名侧结合当前 name 展示,并分别解析 #{WALLET} 与 #{DEVICE}。如果规则还包含 address 和 c,可同时展示命中后的重定向矿池及其 TCP 或 TLS/SSL 协议。旧字段 hw 和 hd 已废弃,调用方不应再依赖。
钱包汇总和收藏
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/port/{id}/g/wallet/list |
获取端口下的钱包筛选列表。 |
| GET | /api/port/{id}/g/wallets/{collect} |
获取钱包统计;collect 控制收藏筛选。 |
| POST | /api/port/{id}/wallet/collect |
收藏或取消收藏钱包。 |
收藏请求:
{
"wallet": "<钱包或子账号>",
"f": 1
}
f=1 表示收藏,f=0 表示取消收藏。
返回结构:
/g/wallet/list返回string[],每个元素可直接放入矿工查询的wallet参数。/g/wallets/{collect}返回钱包统计数组。每项包含id(钱包/子账号)、online、offline、s_thh和ct;ct=1表示已收藏。- 收藏接口成功时返回成功标量或 HTTP 200;写入后重新 GET 钱包统计。
这里的钱包统计 id 是矿工提交的钱包文本,不是端口抽水钱包的 wallets[].id。抽水钱包 ID 来自端口详情的 wallets[]。
钱包独立比例
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/port/{id}/wallet/ratio |
获取钱包独立比例列表。 |
| POST | /api/port/{id}/wallet/ratio |
为指定钱包和抽水钱包设置比例。 |
| DELETE | /api/port/{id}/wallet/{wallet_name}/ratio |
恢复指定钱包的默认比例。 |
设置请求:
{
"wallet": "<矿工使用的钱包>",
"wid": 10,
"r": 0.01
}
wid 是抽水钱包 ID,r 使用 0–1 小数。
GET /api/port/{id}/wallet/ratio 返回数组元组:
[
["<矿工钱包>", "<抽水钱包 ID>", 0.01]
]
元组索引 0 是 /g/wallets/{collect} 的钱包 id,索引 1 是端口 wallets[].id,索引 2 是独立比例。POST 成功返回成功标量或 HTTP 200;DELETE 成功后该钱包恢复端口默认抽水比例。
矿工独立比例
获取当前比例:
GET /api/wallet/{wallet_id}/worker/{sid}/ratio
设置或恢复:
POST /api/port/{id}/worker/ratio
X-ACCESS-TOKEN: <Access Token>
{
"sid": "<矿工会话 ID>",
"wid": 10,
"r": 0.01,
"f": 1
}
f=1 表示保存独立比例,f=0 表示恢复默认值。
GET /api/wallet/{wallet_id}/worker/{sid}/ratio 返回 null 或:
{
"r": 0.01
}
wallet_id 来自端口抽水钱包 wallets[].id,sid 来自本页 workers[].sid。GET 返回 null 时使用该抽水钱包的默认 ratio。POST 保存/恢复成功时返回成功标量或 HTTP 200。
日志和连接查询
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/port/{id}/log |
获取端口日志。 |
| GET | /api/group/{gid}/log |
获取矿工组连接/断开日志。 |
| GET | /api/worker/{id}/error/log |
获取指定矿工失败数据流。 |
| GET | /api/port/{id}/ips?page=1&size=20 |
获取端口 TCP 连接列表。 |
TCP 响应通常包含 data、size、page、pages 和 total。
日志与连接返回字段
| 接口 | 成功响应 |
|---|---|
/api/port/{id}/log |
{ t, f, d? }[]。t 为时间戳;f 是竖线分隔的事件文本。 |
/api/group/{gid}/log |
{ t, f, d? }[]。f 当前按 连接ID|矿工名|IP|类别|状态 解析。 |
/api/worker/{id}/error/log |
失败数据流;前端按原始值展示,不假定固定对象结构。 |
/api/port/{id}/ips |
分页对象 { data, total, pages, page, size }。 |
端口日志的 f 当前按 保留值|矿工名|钱包|IP|类别|状态 解析。类别可能为 GROUP、IP_FORBIDDEN 或 WALLET_FORBIDDEN;状态 0 表示连接/成功方向,其他值表示断开或拦截方向。
ips.data[] 的前端读取字段为:
| 字段 | 类型 | 说明 |
|---|---|---|
ip |
string | 连接来源 IP。 |
t |
number/string | 进入时间戳。 |
gid |
string/null | 连接组 ID。 |
分页查询的 page 从 1 开始,size 应与响应中的实际值同步。
字段依赖速查
| 要填写的字段 | 来源 |
|---|---|
路径 {id}(大多数端口详情接口) |
GET /api/ports 的 server.id。 |
/api/stat/port/{id} 的 {id} |
同一端口的 server.port。 |
wallet |
/g/wallet/list 的字符串,或 /g/wallets/{collect} 的 id。 |
wid / wallet_id |
端口详情 wallets[].id。 |
sid |
矿工列表 `workers[].sid |
gid |
矿工列表 workers[].gid。 |
