feat(observability): close native SigNoz backup restore canary

This commit is contained in:
ogt
2026-07-15 08:55:08 +08:00
parent 6c1a12e388
commit 322e812d93
44 changed files with 9209 additions and 842 deletions

View File

@@ -31,6 +31,7 @@ import { HostGrid, type HostInfo, type HostService } from '@/components/infra/ho
import { AppLayout } from '@/components/layout'
const API_BASE = process.env.NEXT_PUBLIC_API_URL ?? ''
const SIGNOZ_PUBLIC_URL = 'https://signoz.wooo.work'
// =============================================================================
// Types
@@ -152,7 +153,7 @@ function MonitoringTools() {
const statusText = isUp ? (hasFiring ? `${tool.firing_count} ${tDash('monitoringStatus.firing')}` : tDash('monitoringStatus.up')) : tDash('monitoringStatus.down')
const accentColor = TOOL_ACCENT_COLOR[tool.name] ?? '#b0ad9f'
const icon = TOOL_ICON[tool.name] ?? <Activity size={16} />
const link = safeExternalMonitoringUrl(tool.url)
const link = tool.name === 'SigNoz' ? SIGNOZ_PUBLIC_URL : safeExternalMonitoringUrl(tool.url)
const timeStr = (() => {
try { return new Date(tool.checked_at).toLocaleTimeString('zh-TW', { timeZone: 'Asia/Taipei', hour: '2-digit', minute: '2-digit' }) }
catch { return '--' }
@@ -294,6 +295,7 @@ const HOST_CATALOG: Record<string, { services: HostService[]; isK3s?: boolean; r
{ name: 'Langfuse', healthy: false, port: 3100, description: 'LLM Tracing' },
{ name: 'Grafana', healthy: false, port: 3002, description: '監控面板' },
{ name: 'Prometheus', healthy: false, port: 9090, description: '告警規則' },
{ name: 'SigNoz', healthy: false, port: 8080, description: 'APM health · /api/v1/health' },
],
},
'host:kali-readonly': {
@@ -328,7 +330,6 @@ const HOST_CATALOG: Record<string, { services: HostService[]; isK3s?: boolean; r
{ name: 'Redis', healthy: false, port: 6380, description: 'Cache' },
{ name: 'Ollama', healthy: false, port: 11434, description: 'LLM' },
{ name: 'OpenClaw', healthy: false, port: 8088, description: 'AI Agent' },
{ name: 'SigNoz', healthy: false, port: 3301, description: 'APM · OTEL' },
],
},
}

View File

@@ -150,12 +150,14 @@ const PUBLIC_TEXT_ENDPOINT_ALIASES: Record<string, string> = {
'110:3002': 'host:public-gateway/grafana',
'110:3100': 'host:public-gateway/langfuse',
'110:5000': 'host:public-gateway/registry',
'110:8080': 'host:public-gateway/signoz-health',
'110:9000': 'host:public-gateway/sentry',
'112:8080': 'host:kali-readonly/scanner',
'188:11434': 'host:observability-a/ollama',
'188:8088': 'host:observability-a/openclaw-legacy',
'188:8089': 'host:observability-a/openclaw',
'188:3301': 'host:observability-a/signoz',
// Historical scrub-only alias; never use this legacy route for live access.
'188:3301': 'host:observability-a/signoz-legacy',
'188:5432': 'host:observability-a/postgres',
'188:6380': 'host:observability-a/redis',
}

View File

@@ -81,6 +81,7 @@ export function LiveDashboard({ locale: _locale }: LiveDashboardProps) {
services: [
{ name: 'Harbor', status: 'idle', port: 5000 },
{ name: 'GH Runner', status: 'idle' },
{ name: 'SigNoz', status: 'idle', port: 8080 },
{ name: 'Docker', status: 'idle', port: 2375 },
],
},
@@ -111,7 +112,6 @@ export function LiveDashboard({ locale: _locale }: LiveDashboardProps) {
{ name: 'Redis', status: 'idle', port: 6380 },
{ name: 'Ollama', status: 'idle', port: 11434 },
{ name: 'OpenClaw', status: 'idle', port: 8089 },
{ name: 'SigNoz', status: 'idle', port: 3301 },
],
},
}