Stato dei server

Come un monitor attività per i tuoi server. @blipit/node 0.2 e successivi inviano i parametri vitali di ogni server ogni 30 secondi, e la pagina Stato dei server li mostra in tempo reale, una riga per server, con grafici dell'ultima ora, 24 ore o 7 giorni.

1Attivalo

Niente da aggiungere: parte con Blipit.init. Dai a ogni app un serverName per raggruppare i suoi server sotto un nome.

js
Blipit.init({
  key: process.env.BLIPIT_SECRET_KEY,
  serverName: "api",
});

2Cosa invia ogni server

  • La CPU usata dal processo, dove 100% è un core intero.
  • La memoria usata dal processo e quanto è piena la memoria della macchina.
  • L'heap JavaScript usato e totale.
  • Il ritardo dell'event loop al 99° percentile: quanto attendono le richieste mentre il server è occupato.
  • Gli handle aperti, come socket e timer.
  • Le connessioni al database dei pool pg: in uso, libere e in attesa. In attesa significa che le richieste fanno la coda per una connessione.

3Leggi la pagina

Live significa che il server sta inviando dati; Non invia dati significa che si è fermato. Scegli un server per vederne i grafici. La pagina si aggiorna ogni 30 secondi finché è aperta.

4Ricevi avvisi

In Avvisi, nella sezione Avvisi per dipendenze e server, imposta il tuo limite per ogni avviso oppure disattivalo.

  • CPU alta: la CPU di un server resta sopra il tuo limite.
  • Memoria quasi piena: l'uso di memoria di un server resta sopra il tuo limite.
  • Risposte lente: l'event loop di un server resta bloccato più a lungo del tuo limite, quindi le richieste aspettano.
  • Non invia più dati: tutti i server di un servizio smettono di inviare dati, per esempio dopo un crash.

5Altri stack

Invia metriche OpenTelemetry come OTLP JSON a https://in.blipit.io/v1/metrics con l'header X-Blipit-Key. Blipit legge process.cpu.utilization, process.memory.usage, system.memory.utilization, system.cpu.load_average.1m, db.client.connections.usage e le metriche dell'event loop di Node.js; service.instance.id dà il nome al server.

sh
OTEL_EXPORTER_OTLP_METRICS_ENDPOINT=https://in.blipit.io/v1/metrics
OTEL_EXPORTER_OTLP_METRICS_PROTOCOL=http/json
OTEL_EXPORTER_OTLP_HEADERS=X-Blipit-Key=blipit_sk_your_secret_key

6Funzioni serverless

Le app su Vercel, AWS Lambda, Netlify o Azure Functions girano come tante istanze di breve durata che restano in pausa tra una richiesta e l'altra. Stato dei server le raggruppa in una riga per piattaforma, ad esempio Funzioni Vercel, con il numero di istanze viste e la loro memoria, invece di elencare ogni istanza come un server. CPU e Non segnala sono esclusi perché un'istanza in pausa non li riporta in modo utile, e le istanze serverless non generano mai avvisi di CPU alta, risposte lente o segnalazioni interrotte.

Buono a sapersi

  • metrics: false lo disattiva; metricsIntervalMs cambia l'intervallo di 30 secondi, fino a un minimo di 10 secondi.
  • Conservati quanto gli span: 7 giorni su Free e Solo, 14 giorni su Team e Scale. I dati dei server non contano in nessuna quota.
  • La percentuale di memoria usa la memoria totale della macchina. In un container con un limite di memoria inferiore a quello dell'host, guarda invece Memoria usata.

Bloccato? Scrivi a support@blipit.io. Le chiavi e l'id di ogni progetto sono sotto Chiavi API in app.blipit.io.