修复采集服务状态判断:用心跳status字段替代时间推断

main
haoliang 4 days ago
parent 772bc0b257
commit ed0ea7f632

@ -73,13 +73,8 @@ namespace CncService.Impl
public object GetCollectorStatus() public object GetCollectorStatus()
{ {
var latest = _collectorHeartbeatRepository.GetLatest("collector-service"); var latest = _collectorHeartbeatRepository.GetLatest("collector-service");
bool isRunning = latest != null && latest.LastCollectTime.HasValue && bool isRunning = latest != null && latest.Status == "running";
(DateTime.Now - latest.LastCollectTime.Value).TotalMinutes < 5; long uptimeSeconds = isRunning ? (latest.UptimeSeconds ?? 0) : 0;
long uptimeSeconds = 0;
if (isRunning && latest != null)
{
uptimeSeconds = latest.UptimeSeconds ?? 0;
}
return new { status = isRunning ? "running" : "stopped", uptimeSeconds, lastCollectTime = latest?.LastCollectTime }; return new { status = isRunning ? "running" : "stopped", uptimeSeconds, lastCollectTime = latest?.LastCollectTime };
} }
} }

Loading…
Cancel
Save