ZKRINET Docs
Bygga

Larm

Zkrinet säger till när något händer med ditt projekt — till mejl, till en webhook eller båda. Ställ in under fliken Larm.

Vad som larmar

HändelseNär
NereProjektet har inte svarat på två kontroller i rad. Vi kontrollerar en gång i minuten och försöker starta om det automatiskt.
Uppe igenProjektet svarar igen efter ett nere-larm.
LagringLagringen når 80 % och 95 % av din kvot. Larmar en gång per nivå; sjunker du under 75 % kan det larma igen.
Deploy rullades tillbakaEn deploy från GitHub gick inte igenom och projektet återställdes.

Ett pausat projekt larmar inte. Högst 20 larm per projekt och dygn (testlarm räknas inte) — så att ett projekt som går upp och ner inte fyller din inkorg.

Larm för misslyckad backup KOMMER tillsammans med backupen.

Mejl

Larmen går till e-posten på ditt konto. Bocka ur Mejla mig larmen om du bara vill ha webhook.

Webhook

Ange en https-adress — till exempel en Slack- eller Discord-webhook eller din egen server. Varje larm skickas som en POST med JSON:

{
  "id": "…",                 // unikt per larm
  "typ": "nere",             // nere | uppe | lagring | deploy | test
  "projekt": "min-app",
  "adress": "https://min-app.zkrinet.com",
  "text": "Projektet har inte svarat …",
  "text_en": "The project has failed …",
  "data": {},
  "tid": "2026-11-08T10:15:00.000Z"
}

Kontrollera signaturen

När du sparar en webhook får du en hemlighet (visas en gång). Varje anrop har två rubriker:

Exempel i Node:

import crypto from "node:crypto"

function akta(req, kropp, hemlighet) {
  const tid = req.headers["x-zk-tid"]
  const forvantad = "sha256=" + crypto.createHmac("sha256", hemlighet).update(tid + "." + kropp).digest("hex")
  const ok = crypto.timingSafeEqual(Buffer.from(forvantad), Buffer.from(req.headers["x-zk-signatur"] || ""))
  const farsk = Math.abs(Date.now() / 1000 - Number(tid)) < 300   // avvisa gamla anrop
  return ok && farsk
}

Använd kroppen exakt som den kom (rå text), inte omparsad JSON.

Testa

Skicka testlarm skickar ett larm av typen test till mejl och webhook och visar resultatet. Historiken över de senaste larmen syns på samma flik.