{{ t('overview.heroSubtitle') }}
{{ t('overview.recentEvents') }}
{{ t('overview.noEvents') }}
{{ t('overview.lingOverview') }}
{{ t('overview.noLings') }}
{{ t('overview.noLingsHint') }}
| {{ t('overview.colName') }} | {{ t('overview.colStatus') }} | {{ t('overview.colVersion') }} | {{ t('overview.colTraffic') }} |
|---|---|---|---|
|
{{ ling.lingId
}}
|
{{ t('status.' + ling.status?.toLowerCase()) || ling.status }} | {{ ling.activeVersion || '-' }} +{{ ling.versionDetails.length - 1 }} |
|
{{ t('lingCenter.title') }} [{{ activeId }}]
{{ t('control.selectLing') }}
{{ t('control.versionInstances') }}
| {{ t('control.version') }} | {{ t('control.status') }} | {{ t('control.traffic') }} | {{ t('control.actions') }} |
|---|---|---|---|
| {{ v.version }} DEFAULT CANARY | {{ v.status }} |
|
|
{{ t('control.resourceIsolation') }}
{{ t('lingCenter.diskPackages') }}
{{ t('lingCenter.noPackages') }}
{{ t('monitor.basicInfo') }}
{{ t('monitor.metricsTitle') }}
{{ t('monitor.gcTitle') }}
{{ t('monitor.chartTitle') }}
{{ t('monitor.resourceUsage') }}
| {{ t('monitor.resourceLingId') }} | {{ t('monitor.resourceVersion') }} | {{ t('monitor.resourceClassCount') }} | {{ t('monitor.resourceThreadCount') }} | {{ t('monitor.resourceCpuTime') }} | {{ t('monitor.resourceHeapDelta') }} | {{ t('monitor.resourceMetaspace') }} |
|---|---|---|---|---|---|---|
| {{ t('monitor.resourceEmpty') }} | ||||||
| {{ grp.lingId }} ({{ grp.versions.length }}{{ t('monitor.resourceVersionSuffix') }}) | {{ grp.totalClasses }} | {{ grp.totalThreads }} | {{ grp.totalCpuMs }} | {{ formatBytes(grp.totalHeapDelta) }} | {{ formatBytes(grp.totalMetaspace) }} | |
| └ | {{ m.version }} | {{ m.loadedClassCount }} | {{ m.activeThreadCount }} | {{ m.cpuTimeMs }} | {{ formatBytes(m.estimatedHeapDeltaBytes) }} | {{ formatBytes(m.estimatedMetaspaceBytes) }} |
{{ t('monitor.leakTitle') }}
| {{ t('monitor.leakLing') }} | {{ t('monitor.leakStatus') }} | {{ t('monitor.leakMessage') }} |
|---|---|---|
| {{ t('monitor.leakEmpty') }} | ||
| {{ d.lingId }} | {{ t('monitor.leakSuspected') }} {{ t('monitor.leakCollected') }} | {{ d.message }} |
{{ t('monitor.threadPoolTitle') }}
| {{ t('monitor.threadPoolLingId') }} | {{ t('monitor.threadPoolActive') }} | {{ t('monitor.threadPoolSize') }} | {{ t('monitor.threadPoolMax') }} | {{ t('monitor.threadPoolQueue') }} |
|---|---|---|---|---|
| {{ t('monitor.threadPoolEmpty') }} | ||||
| {{ tp.lingId }} | {{ tp.activeCount }} | {{ tp.poolSize }} | {{ tp.maxThreads }} | {{ tp.queueSize }} |
{{ t('control.permissions') }}
{{ t('control.selectLing') }}
{{ t('control.invocationGovernance') }}
{{ t('control.selectLing') }}
{{ t('governance.matrixTitle') }}
{{ t('governance.matrixHint') }}| {{ t('governance.matrixLingId') }} {{ matrixSortKey==='lingId' ? (matrixSortAsc?'▲':'▼') : '' }} | {{ t('governance.matrixVersion') }} {{ matrixSortKey==='version' ? (matrixSortAsc?'▲':'▼') : '' }} | {{ t('governance.matrixRole') }} | {{ t('governance.matrixTraffic') }} {{ matrixSortKey==='trafficWeight' ? (matrixSortAsc?'▲':'▼') : '' }} | {{ t('governance.matrixTimeout') }} {{ matrixSortKey==='timeoutMs' ? (matrixSortAsc?'▲':'▼') : '' }} | {{ t('governance.matrixRateLimit') }} {{ matrixSortKey==='rateLimitPerSecond' ? (matrixSortAsc?'▲':'▼') : '' }} | {{ t('governance.matrixConcurrent') }} {{ matrixSortKey==='maxConcurrentThreads' ? (matrixSortAsc?'▲':'▼') : '' }} | {{ t('governance.matrixRetry') }} {{ matrixSortKey==='retryCount' ? (matrixSortAsc?'▲':'▼') : '' }} |
|---|---|---|---|---|---|---|---|
| {{ t('governance.matrixEmpty') }} | |||||||
| {{ row.lingId }} | {{ row.version }} | {{ t('governance.matrixDefault') }} {{ t('governance.matrixCanary') }} | {{ row.trafficWeight }} | {{ row.timeoutMs ?? '-' }} | {{ row.rateLimitPerSecond ?? '-' }} | {{ row.maxConcurrentThreads ?? '-' }} | {{ row.retryCount ?? '-' }} |
{{ t('traffic.title') }}
{{ t('traffic.notSelected') }} {{ t('traffic.inactive') }} {{ t('traffic.canary') }} {{ t('traffic.singleVersion') }}{{ !activeLing ? t('traffic.selectLing') : !canOperate ? t('traffic.lingInactive') : t('traffic.onlyOneVersion') }}
[{{ lastAudit.traceId }}] {{ lastAudit.message }}
{{ t('control.selectLing') }}
{{ t('healthCard.title') }}
{{ activeLing?.lingId }}{{ t('governanceCard.title') }}
{{ t('governanceCard.title') }}
{{ t('runtimeReadiness.title') }}
{{ t('control.selectLing') }}
{{ activeLing?.lingId }}
{{ runtimeGovernanceReadiness.status || 'UNKNOWN' }}{{ t('runtimeReadiness.capabilitiesTitle') }}
{{ runtimeDiagnosticsList.length }}{{ t('contractRouting.contractList') }}
{{ t('contractRouting.contractCount', {n: contractsList.length}) }}{{ t('contractRouting.empty') }}
{{ t('contractRouting.selectContract') }}
{{ t('contractRouting.flowDistribution') }}
{{ t('contractRouting.providers') }}
| {{ t('contractRouting.lingId') }} | {{ t('contractRouting.kind') }} | {{ t('contractRouting.registeredWeight') }} | {{ t('contractRouting.overrideWeight') }} | {{ t('contractRouting.effectiveWeight') }} | {{ t('contractRouting.save') }} |
|---|---|---|---|---|---|
| {{ t('contractRouting.kindCore') }} {{ p.lingId }} | {{ p.kind === 'CORE' ? t('contractRouting.kindCore') : t('contractRouting.kindLing') }} | {{ p.registeredWeight }} | {{ p.effectiveWeight }} |
{{ t('migration.title') }}
{{ t('migration.empty') }}
| {{ t('migration.contractId') }} | {{ t('migration.coreInvocations') }} | {{ t('migration.lingInvocations') }} | {{ t('migration.coreRatio') }} | {{ t('migration.coreAvgDuration') }} | {{ t('migration.lingAvgDuration') }} | {{ t('migration.coreFailures') }} | {{ t('migration.lingFailures') }} | {{ t('migration.providers') }} | {{ t('migration.status') }} |
|---|---|---|---|---|---|---|---|---|---|
| {{ m.contractId }} | {{ (m.coreInvocations || 0).toLocaleString() }} | {{ (m.lingInvocations || 0).toLocaleString() }} |
|
{{ m.coreAvgDurationMs ? m.coreAvgDurationMs.toFixed(2) : '-' }} | {{ m.lingAvgDurationMs ? m.lingAvgDurationMs.toFixed(2) : '-' }} | {{ m.coreFailures || 0 }} | {{ m.lingFailures || 0 }} | {{ m.providerCount }} | {{ t('migration.statusStale') }} {{ t('migration.statusMigrating') }} |
{{ t('demo.title') }}
{{ canOperate ? t('demo.ready') : t('demo.inactive') }}{{ t('demo.lingNotActive') }}
{{ t('playground.title') }}
{{ t('control.selectLing') }}
{{ t('playground.noServices') }}