# Byggde övervakning med dödmansgrepp som pingar bara så länge minne och disk är i gott skick, så att en försämrad värd larmar genom att tystna — och upptäckte sex variabelnamn som sa ”free” där kontrollen korrekt mätte ”available”, en storleksordning isär på en maskin med 464 MB.

september 2026

**Situation.** En värd på 464 MB som kör en git‑forge, en databas och en webbserver har två realistiska sätt att dö: minnet tar slut, eller disken tar slut. Inget av dem förvarnar. Båda går att förutse helt och hållet några timmar i förväg om något håller utkik, och ingenting gjorde det.

**Uppgift.** Värden behövde ett larm som fungerar när värden inte gör det — vilket utesluter allt som måste skicka ett meddelande i felögonblicket.

**Handling.** Svaret är ett dödmansgrepp på en timer. Var femtonde minut, med slumpmässig förskjutning, mäter ett litet skript tillgängligt minne och ledigt diskutrymme och pingar en extern tjänst bara om båda ligger över sina tröskelvärden. Tystnaden är larmet. En maskin som har fått slut på minne, tappat nätverket eller slutat starta ger exakt samma signal som en som inte är frisk, vilket är rätt beteende och skälet till att den här formen valdes framför en agent som rapporterar en status. Det som mäts är tillgängligt minne, inte ledigt minne, och den distinktionen blev den mest lärorika delen av arbetet: skriptet hade läst rätt kolumn hela tiden medan sex variabelnamn runt omkring sa ”free”. På en frisk Linux‑maskin ligger det lediga minnet nära noll eftersom kärnan använder outnyttjat minne som cache, så en läsare som jämförde de namnen mot ett tröskelvärde på tio procent skulle se tolv megabyte ledigt på en maskin med 464 MB, dra slutsatsen att kontrollen var trasig och rätta den med en ändring på ett tecken, som förvandlar ett fungerande larm till ett som löser ut permanent och tystas inom en vecka.

**Resultat.** Värden har nu ett larm vars felläge är att det löser ut, och namngivningen som skulle ha förstört det har rättats. Dödmansgreppets verkliga begränsning står i dess egen dokumentation: det bevisar att maskinen är frisk, inte att webbplatsen svarar, och det är olika frågor.

---

- Roll: Site Reliability Engineer
- Kategorier: [Infrastruktur](https://engineer.company/sv/categories/infrastructure/), [Automatisering och CI/CD](https://engineer.company/sv/categories/automation/), [Tillförlitlighet och säkerhetskopiering](https://engineer.company/sv/categories/reliability/), [Övervakning och observerbarhet](https://engineer.company/sv/categories/observability/), [Linux och servrar](https://engineer.company/sv/categories/linux/), [Prestandaoptimering](https://engineer.company/sv/categories/performance/)
- Tjänster: [Infrastruktur som kod](https://engineer.company/sv/services/infrastructure-as-code/), [Tillförlitlig drift och övervakning](https://engineer.company/sv/services/site-reliability/), [Systemadministration](https://engineer.company/sv/services/system-administration/)

<https://engineer.company/sv/portfolio/built-dead-mans-switch-monitoring-115/>
