主机名
{observability.profile.hostname || node.name}
操作系统
{observability.profile.os_name || 'unknown'} {observability.profile.os_version ? ` ${observability.profile.os_version}` : ''}
内核 / 架构
{observability.profile.kernel_version || 'unknown'} ·{' '} {observability.profile.architecture || 'unknown'}
在线时长
{formatUptime(observability.profile.uptime_seconds)}
CPU
{observability.profile.cpu_model || 'unknown'}
{observability.profile.cpu_cores || 0} 核
总内存
{formatBytes(observability.profile.total_memory_bytes)}
总存储
{formatBytes(observability.profile.total_disk_bytes)}
上报时间
{isMeaningfulTime(observability.profile.reported_at) ? formatDateTime(observability.profile.reported_at) : '—'}
OpenResty 吞吐
入站: {formatBytesPerSecond( latestMetricSnapshot.openresty_rx_bytes, 60, )}
出站: {formatBytesPerSecond( latestMetricSnapshot.openresty_tx_bytes, 60, )}
节点网络
入站: {formatBytes(latestMetricSnapshot.network_rx_bytes)}
出站: {formatBytes(latestMetricSnapshot.network_tx_bytes)}
最近窗口请求
{trafficSummary ? trafficSummary.request_count.toLocaleString('zh-CN') : '—'}
{trafficSummary ? `QPS ${trafficSummary.estimated_qps.toFixed(1)} · UV ${trafficSummary.unique_visitor_count}` : '暂无窗口流量摘要'}
最近窗口错误
{trafficSummary ? trafficSummary.error_count.toLocaleString('zh-CN') : '—'}
{trafficSummary ? `错误率 ${trafficSummary.error_rate_percent.toFixed(1)}%` : '暂无错误率摘要'}
主状态码
{dominantStatusCode?.label ?? '—'}
{dominantStatusCode ? `${dominantStatusCode.value} 次` : '暂无状态码配置'}
Top Domain
{dominantDomain?.label ?? '—'}
{dominantDomain ? `${dominantDomain.value} 次` : '暂无域名配置'}
已恢复事件
{resolvedHealthEvents.length}
最近 24 小时已恢复健康事件
状态码分布
Top Domain
{event.message || '暂无详细消息'}
首次触发: {isMeaningfulTime(event.first_triggered_at) ? ` ${formatDateTime(event.first_triggered_at)}` : ' —'}
最近触发: {isMeaningfulTime(event.last_triggered_at) ? ` ${formatDateTime(event.last_triggered_at)}` : ' —'}
恢复时间: {isMeaningfulTime(event.resolved_at) ? ` ${formatDateTime(event.resolved_at)}` : ' —'}
{node.update_requested ? `已等待节点在下一次心跳后执行${node.update_channel === 'preview' ? '预览版' : '正式版'}更新。` : node.auto_update_enabled ? '节点已启用正式版自动更新。' : '当前仅支持手动触发更新。'}
Agent:{node.version || 'unknown'}
Nginx:{node.ext_version || 'unknown'}
当前配置:{node.current_version || '未应用'}
{isMeaningfulTime(node.latest_apply_at) ? `${formatRelativeTime( node.latest_apply_at, )} · ${formatDateTime(node.latest_apply_at)}` : '暂无应用记录'}
{node.latest_apply_checksum ? (支持文件:{node.latest_support_file_count}
追平状态
{isTargetVersionApplied ? '当前节点已应用全局激活配置。' : '当前节点版本落后于全局激活配置,可结合应用记录定位原因。'}
目标版本
{activeConfigVersion.version}
Target Checksum
{activeConfigVersion.checksum}
激活时间
{formatDateTime(activeConfigVersion.created_at)}
健康状态
{node.restart_openresty_requested ? '已等待节点在下一次心跳后执行 OpenResty 重启。' : '系统会在每次心跳前自动采集健康状态。'}
状态消息
{node.openresty_message || '当前未上报额外错误。'}
Node ID
{node.node_id}
Agent Token
{node.access_token || '暂无'}
脚本部署 (Linux / macOS)
Docker 部署
IP 地址
{node.ip || '暂无'} {node.ip_manual_override ? '(管理端锁定)' : ''}
最近错误
{node.last_error || '无'}
状态消息
{node.openresty_message || '无'}
创建时间
{formatDateTime(node.created_at)}
更新时间
{formatDateTime(node.updated_at)}
| 版本 | 结果 | Checksum | 时间 | 消息 |
|---|---|---|---|---|
| {log.version} |
|
{log.checksum ? `${log.checksum.slice(0, 12)}...` : '—'} | {formatRelativeTime(log.created_at)} ·{' '} {formatDateTime(log.created_at)} |
{log.main_config_checksum ? `主配置:${log.main_config_checksum}` : ''} {log.route_config_checksum ? `路由配置:${log.route_config_checksum}` : ''} {log.support_file_count ? `支持文件:${log.support_file_count}` : ''} {log.message || '—'} |
该操作会删除当前节点已记录的全部健康事件,包括活动中与已恢复事件。
这不会影响节点后续继续上报新的健康事件,但现有时间线与相关摘要会立即刷新。
{node.version || 'unknown'}
{selectedReleaseChannel === 'preview' ? '预览版' : '正式版'}
当前版本
{selectedAgentRelease.current_version || 'unknown'}
目标版本
{selectedAgentRelease.tag_name || '未找到'}