Il monitoraggio delle infrastrutture moderne spesso si riduce a pagare decine di euro al mese per semplici cicli cURL mascherati da interfacce web curate. PulsePing CLI risolve questo problema fornendo un singolo binario Go senza dipendenze, in grado di verificare HTTP(S), TCP, record DNS, endpoint gRPC e la scadenza dei certificati SSL senza sovraccarico esterno.
Controllo Multi-Protocollo e Pagine di Stato Statiche
PulsePing opera tramite un semplice file di configurazione YAML, eseguendo sonde di controllo in parallelo a intervalli definiti dall'utente. Oltre a inviare notifiche su Telegram, Slack, Discord e PagerDuty al cambio di stato, compila i risultati in una pagina HTML statica zero-JS pronta per il deploy su GitHub Pages o Cloudflare Pages.
Orchestrazione di PulsePing tramite Python
Per i team che gestiscono i deploy in modo programmatico o integrano i controlli di uptime in pipeline di automazione più ampie, PulsePing può essere guidato direttamente da Python. Lo snippet seguente mostra come eseguire i controlli, analizzare l'output JSON e gestire eventuali failure di rete.
import json
import subprocess
from typing import Dict, Any
def execute_health_check(config_file: str = "pulseping.yaml") -> Dict[str, Any]:
"""Esegue PulsePing CLI e restituisce i risultati in formato JSON."""
cmd = ["pulseping", "check", "--config", config_file, "--format", "json"]
try:
res = subprocess.run(cmd, capture_output=True, text=True, check=True)
return json.loads(res.stdout)
except subprocess.CalledProcessError as err:
print(f"[ERRORE] Esecuzione PulsePing fallita: {err.stderr}")
raise
if __name__ == "__main__":
report = execute_health_check()
failures = [c for c in report.get("checks", []) if not c.get("healthy")]
if failures:
print(f"[ALLERTA] {len(failures)} target non raggiungibili:")
for f in failures:
print(f" - {f['target']} ({f['protocol']}): {f['error']}")
else:
print("[OK] Tutti i target sono operativi e i certificati SSL validi.")Deploy e Integrazione con Systemd
PulsePing viene distribuito con binari multi-architettura (arm64, amd64), container Docker pronti per la produzione e template per i servizi systemd. Funziona perfettamente su istanze VM o nodi edge senza alcun costo di abbonamento ricorrente.