Si prega di notare che questa è un’applicazione diversa dall’invio di notifiche dell’applicazione Discourse tramite il plugin Discourse Telegram Notifications. Questa applicazione NR è destinata al monitoraggio del server, di Docker e dell’applicazione Discourse in generale.
Come la maggior parte di voi amministratori di sistema impegnati, quando siamo in movimento troviamo utile monitorare le applicazioni di produzione dai nostri telefoni cellulari.
Utilizziamo Telegram e Node-Red (NR) per questo compito. Ad esempio, ecco alcuni dei nostri attuali compiti NR per Discourse:
-
Node-Red esegue una richiesta HTTPS GET (ogni minuto) su una categoria (creata a questo scopo) e invia un avviso al nostro bot Telegram quando rileva che Discourse è DOWN (e di nuovo UP, senza fluttuazioni).
-
Il nostro bot Telegram di base,
UNIXForumBot, dispone di diverse verifiche che possiamo eseguire, tra cui:
- Verifica manuale per vedere se Discourse è in esecuzione.
- Visualizzazione rapida del container Discourse utilizzato dal nostro reverse proxy.
- Verifica del tempo di attività del server.
- Verifica dell’utilizzo del disco.
- Ping di altre applicazioni LAMP sullo stesso server.
Esempi di schermate di Telegram:
La nostra configurazione e informazioni di contesto
Informazioni di contesto
Il motivo per cui verifichiamo quale container Discourse è in esecuzione è che, in caso di problemi, o se desidero semplicemente aggiornare o apportare modifiche, vogliamo sempre sapere rapidamente quale container sta eseguendo Discourse prima di accedere al server.
Eseguiamo sempre Discourse dietro un reverse proxy. Poiché abbiamo molte altre applicazioni web in esecuzione sullo stesso server (applicazioni LAMP in esecuzione insieme alle applicazioni Docker di Discourse), configuriamo Discourse come segue:
- Container separati per i dati e le applicazioni di Discourse.
- I container delle applicazioni di Discourse espongono solo un socket di dominio Unix all’host (il reverse proxy).
Ciò significa, per chi non è familiare con questa configurazione, che possiamo compilare Discourse quando esce un nuovo aggiornamento e passare a questa nuova versione di Discourse con zero tempi di inattività specificando un socket di dominio Unix diverso nella configurazione del reverse proxy.
Se ci fosse un problema con l’ultima versione beta, nessun problema: possiamo tornare rapidamente e facilmente all’altro container che eseguiva una versione precedente di Discourse. Funziona perfettamente.
Diagramma Node-Red per il bot Telegram che utilizziamo per monitorare Discourse
Per chiunque sia interessato a monitorare le proprie applicazioni Discourse utilizzando Telegram e NR, ho reso disponibili i nodi Node-Red per questa applicazione. Puoi personalizzarli come preferisci:
In futuro, intendiamo espandere le funzioni di monitoraggio di Docker e Discourse nell’applicazione Telegram.
Vedi anche:
Speriamo che altri amministratori di sistema interessati al monitoraggio del proprio server di produzione e dell’applicazione Discourse trovino utile questo breve argomento.




