Skip to main content

Public Status Page (/status)

http://[서버IP]/status is an availability page that opens without login. It is designed so you can see "what is down right now" even when you cannot access the console.

Not in the side menu

There is no link to it anywhere in the console menu — you access it by typing the address directly. It is useful to place this address on field dashboards or the internal wiki.

What You See​

┌────────────────────────────────────────────────┐
│ 플랜트펄스 상태 │
│ 🟢 모든 시스템 정상 │
│ 24시간 가용성 99.95% 마지막 갱신 12:34:56 │
├── 인프라 ─────────────────────────────────────┤
│ 이벤트 스토어 · 스트림 · MQTT · 캐시 · … │
├── API 엔드포인트 ─────────────────────────────┤
│ auth 🟢 99.98% p99 45ms 성공 12,345 / 오류 2│
│ ▁▁▁▂▁▁▁▁▁▁▁▁▁▁ (90칸 타임라인) │
└────────────────────────────────────────────────┘
5초마다 자동 갱신

At the Top — Overall Status​

IndicatorMeaning
🟢 All Systems OperationalEverything is OPERATIONAL
🟡 Degraded PerformanceOne or more are DEGRADED
🔴 Major OutageOne or more are OUTAGE

Next to it, 24-hour availability and the last updated time are displayed. If the connection drops, it changes to "Connection lost. Retrying..."

Infrastructure — 13 Components​

Display NameWhat It Is
Event StoreEvent storage
StreamStream processing
MQTTMessaging broker
CacheIn-memory cache
Meta StoreMetadata DB
Analytics StoreStorage for analytics
Node OSServer operating system
Time Series EngineTime series DB
Complex Event ProcessingCEP engine
Data GatewayCollection gateway
Workflow EngineTemporal
Batch OrchestratorKestra
Object StorageRustFS

The meaning of each item and the definition of status colors are in Status Code Definitions.

API Endpoints​

Each endpoint has its own card, and the following are shown alongside it.

ItemMeaning
24-hour availabilitySuccess rate over the last 24 hours
p99 response timeWorst response time excluding the top 1% (ms)
Success (24h) · Errors (24h)Number of calls
90-segment timelineStatus bars for the last 90 intervals

If measurement data is insufficient, it is displayed as "No data" or "Measured over N/M minutes" — this is why availability can appear low on a server that was just started.

Where the Data Comes From​

The page itself is an empty shell; the browser polls GET /api/v5/public/status every 5 seconds to fill it.

curl -s http://[서버IP]/api/v5/public/status
{
"data": {
"overall_status": "OPERATIONAL",
"as_of": 1717400000000,
"uptime_24h_percent": 99.95,
"endpoints": [
{
"name": "auth", "category": "auth", "status": "OPERATIONAL",
"uptime_percent_24h": 99.98, "p99_latency_ms": 45,
"success_count_24h": 12345, "error_count_24h": 2,
"timeline_90": ["ok", "ok", "degraded", "ok"]
}
]
},
"meta": { "timestamp": 1717400000000, "status": "OK", "pagination": null },
"errors": null
}

No API key or session is required. You can scrape it directly from monitoring tools or dashboards.

No authentication means exposure

/status and /api/v5/public/status are visible to anyone. Because the names and failure status of infrastructure components are exposed, if the server is directly exposed to the internet, restrict these two paths to the internal network at your reverse proxy. For on-premise installations, leaving them as is is more convenient.

How Is This Different from Health Checks​

/status/api/health
PurposeAvailability page for humansreadiness check for machines
AuthenticationNoneNone
Response24-hour statistics, latency, timelinestatus / service / ts / checks
Used byBrowsers, dashboardsContainer health checks, HA gateways, CI

For container or load balancer health checks, use /api/health. /status is a 24-hour aggregate and does not react to transient failures.

Frequently Asked Questions​

Q. I type the address but it redirects to the login screen. A. The path must be exactly /status (either /status/ or /status/index is also acceptable). Also check whether your reverse proxy is blocking it.

Q. I just installed it, but availability shows 0%. A. Since it is a 24-hour aggregate, measurement intervals need to accumulate. Look for the "Measured over N/M minutes" indicator.

Q. One infrastructure item stays red. A. Check in Monitoring whether that component is actually running. Depending on your installation configuration, some components may not have been deployed at all.