shadcn.io is not affiliated with official shadcn/ui
Container Status Probes Monitoring Block for Svelte
Six containers with image tag, state and restarts, three probe cells that show consecutive failures against their threshold, the last 12 results and last response of the chosen container, the restart back-off ladder and a Restart container button.
Installation
Overview
See how close each container is to a restart with this probe table for Svelte with Ark UI. It is Crateprobe, a container health monitor, and the header is worked out from the probes: "4 running and ready; media-resizer is restarting; ...". In a hairline frame with a plus mark on each corner, a table gives each container's image tag, its state, its restarts and the startup, liveness and readiness probes as segments up to the failure threshold ("Failing 2 of 3"); the state is worked out from the same probes. The rows are one radio group, so the arrow keys move between containers. The chosen container shows its last 12 results per probe as ticks (a tall tick for a failure, a short one for a pass), what each probe was told ("HTTP 503 from /ready in 2.1 s") and what happens at the next failure, and below it the restart back-off ladder of 10, 20, 40, 80 and 160 seconds and then 5 minutes with the next wait marked. The Shine Button Restart container restarts the chosen one in this demo. Guides draw the frame and its bands; the entrance is CSS only. For Kubernetes workloads and any service behind health probes.
FAQ
How do I load my own containers?
Each line in LINES is name|image|restarts|startup|liveness|readiness|three replies. A probe is twelve letters, oldest first (p passed, f failed, - not run), and the thresholds are at in PROBES. The failures shown are the f letters at the end, the state is worked out from them (restarting, starting, not ready or running), and the header and ticks follow.
How does the back-off work?
The wait before the next automatic restart doubles with every restart from 10 seconds up to a cap of 5 minutes, which is how kubelet treats a crash-looping container. waitOf(restarts) is min(10 * 2^restarts, 300); the ladder marks the step for the current count.
What does Restart container do?
It adds one restart to the chosen container in this page only, makes its probes pass and moves the ladder on, then says nothing was sent. Nothing is contacted; a reload puts the readings back. In your app call your orchestrator, then reload the probe results.