{{ queueSummary.total || '—' }}
有源总天数
{{ queueSummary.dual }}双源天
{{ stageName(st) }}
{{ queueSummary.stages[st] }}/{{ queueSummary.total }}
映射·{{ m.label }} {{ m.map ? mapText(m.map) : '未开始' }}
全完成
部分(按完成度填充)
在跑
待办(有源)
双源(AC 前先合并)
无源
鼠标悬停方块看当天明细(点一下可钉住)
{{ mo.month }}
{{ mo.allDone }}/{{ mo.withSrc }} 天完成
{{ b }}
{{ w }}
{{ d.dayNum }}
还没有产物数据{{ snapshot ? '' : '(等采集器第一轮扫描)' }}
调度器
{{ control.paused ? '已暂停' : '调度中' }}
GPU 道
{{ control.gpu_lanes.used }}/{{ control.gpu_lanes.total }}
CPU 槽
{{ control.cpu_slots.used }}/{{ control.cpu_slots.total }}
总控未在跑(本机页 8787 由谁起的就是谁;快照里没有 control 区块)
{{ t.id }}
{{ t.batch }}
{{ statusName(t.status) }}
{{ t.note }}
{{ stageName(st) }} {{ info.done != null ? info.done + '/' + info.total : (info.done ? '✓' : '…') }}{{ info.mode==='wait' ? '(等)' : '' }}
任务目录还没有任务文件(state/control/tasks/*.json 落盘即下达)
在跑单元
{{ r.task }} · {{ stageName(r.stage) }} · {{ r.day }} · pid {{ r.pid }}
指令历史
{{ (c.ts||'').slice(5,16) }}
{{ c.cmd }}
{{ c.args.task_id }}
{{ c.ack.ok ? '已受理' : '失败' }} {{ c.ack.msg }}
待执行
本地 ES
{{ health.es && health.es.ok ? health.es.status : '挂了' }}
{{ fmtNum(health.es.docs) }} 文档
{{ d.path }}
{{ d.free_gb }}G
/ {{ d.total_gb }}G
GPU{{ health.gpu && health.gpu.name ? ' · ' + health.gpu.name : '' }}
{{ health.gpu.util }}%
{{ health.gpu.mem_used_gb }}/{{ health.gpu.mem_total_gb }}G
内存
{{ health.mem ? health.mem.used_gb + '/' + health.mem.total_gb + 'G' : '—' }}
{{ n.name || '未命名窗口' }}
认领
{{ n.stage }}
{{ n.target }}
心跳 {{ n.heartbeat_age_s==null ? '—' : fmtAgo(n.heartbeat_age_s) }}
{{ n.note }}
{{ (n.log_tail||[]).join('\n') || '(无日志尾)' }}
{{ n.cmd }}
本机没有识别到在跑的长跑窗口
在跑实例
{{ cloudSummary.running }}
烧钱速率
¥{{ cloudSummary.y_per_h }}/h
autodl-fs
{{ cloudFs.free_gb }}G
—
{{ acc.label }}
API 失败:{{ acc.api_err }}
{{ i.name }}
{{ i.gpu }}
{{ i.region }}
{{ i.status }}
已跑 {{ fmtUptime(i.uptime_h) }}
¥{{ i.price_y_h }}/h
≈¥{{ i.cost_y }}
探针 {{ i.probe_ts }}
探针失败
{{ s }}
{{ i.log_tail.join('\n') }}
无实例
{{ (e.ts||'').slice(5,16) }}
{{ e.msg }}
暂无事件