Back to CÉLESTE CORP

Technical case study

Network Monitoring Assistant

Administrators had to log into Zabbix for every piece of information, including while away from the office. The assistant brings supervision to WhatsApp: metrics are queried in natural language, every incident opens a GLPI ticket, and alerts arrive enriched with context and recommendations.

Context
Engineering internship — CNPS Cameroon
Period
July – September 2025
Role
Workflow design, integrations and implementation

This work was carried out during an engineering internship. It is not a commercial reference of CÉLESTE CORP. No internal CNPS data is shown on this page: all examples are fictitious.

The problem

Zabbix collected the metrics of the monitored infrastructure, but every piece of information required logging into its web interface. Away from their desk, administrators had no quick way to check a server’s state or understand an alert.

Incidents also had to be reported manually in GLPI, the helpdesk tool, which meant delays and incidents tracked only in conversations.

Simplified architecture

On-demand query
  1. WhatsApp

    Administrator command

  2. n8n

    Webhook + authentication

  3. Zabbix API

    Metrics and problems

  4. Gemini

    Natural-language summary

  5. WhatsApp

    Reply to the administrator

“!zabbix analyze srv-app-01” → “CPU 87 %, RAM 64 %: one high-priority issue, see recommendation.”

Incident alert
  1. Zabbix

    Trigger fires

  2. n8n

    Alert workflow

  3. GLPI API

    Ticket created

  4. Gemini

    Analysis and recommendations

  5. WhatsApp

    Enriched alert

Trigger “High CPU on srv-db-02” → ticket #1042 created → WhatsApp alert with link and recommendation.

Illustrative flows. Hostnames and values are fictitious.

Role of each component

Zabbix
Collects metrics, detects problems and fires triggers.
n8n
Orchestrates the workflows: webhooks, authentication, API calls and message formatting.
WhatsApp
Conversational interface used by administrators, including on the move.
Gemini API
Turns raw Zabbix data into a readable summary with priorities and recommendations.
GLPI
Receives a ticket for every incident through its API.
Python (Random Forest)
Estimates the incident risk of a host from its CPU, RAM and disk metrics.

Demonstration on fictitious data

Simulated conversation. Hostnames, values and ticket numbers are fictitious; message formats are simplified.

!zabbix analyze srv-app-01

Authentication required. Please enter your access code.

••••••••

srv-app-01 — last hour CPU 87 % (high) · RAM 64 % · Disk 41 % Priority issue: sustained CPU load since 10:12. Recommendation: check recent deployments and the number of application workers.

!zabbix predict srv-db-02

Incident risk for srv-db-02: HIGH RAM 91 % · Disk 88 % Suggestion: free disk space before the next backup window.

ALERT — High CPU on srv-db-02 GLPI ticket #1042 · glpi.example/ticket/1042 Problem: CPU above 90 % for 5 minutes AI analysis: probably a long-running query; check the slow query log.

Technical challenges and the answers chosen

  1. Challenge

    Exposing supervision data on a consumer messaging channel.

    Answer

    Commands are only accepted after authentication through the chatbot, and access is temporarily locked after 3 failed attempts.

  2. Challenge

    Raw metrics are hard to read on a phone screen.

    Answer

    The LLM summarises performance, highlights priority issues and suggests recommendations, in a few lines.

  3. Challenge

    Incidents reported manually, or tracked only in conversations.

    Answer

    Every incident detected by Zabbix automatically opens a GLPI ticket through its API; the alert carries the ticket ID and a direct link.

  4. Challenge

    Supervision stayed reactive: administrators learned of problems once they occurred.

    Answer

    A Random Forest model estimates the incident risk of a host from its CPU, RAM and disk metrics (“!zabbix predict”).

Error handling and safeguards

  • Authentication before any supervision command, with temporary lockout after 3 failed attempts.
  • Systematic GLPI ticket for every Zabbix incident, so that nothing depends on a chat message being read.
  • Enriched alerts: ticket ID, direct link, host, problem description and recommendations.
  • AI output kept advisory: the summary helps the administrator, the Zabbix data remains the reference.

Limits of the solution

  • Built during a three-month internship: it has not been load-tested on a large infrastructure.
  • AI summaries and recommendations can be wrong and must be checked against the Zabbix data.
  • The risk model only uses CPU, RAM and disk metrics: its estimates are indicative.
  • The solution depends on external services: the WhatsApp channel and the Gemini API.

What a production deployment would add

  • Dedicated n8n error workflow with retries and a fallback channel (e-mail) when WhatsApp or the LLM is unavailable.
  • Audit log of commands and access attempts.
  • Credentials stored in a secrets manager and rotated regularly.
  • Validation of the risk model on a longer metrics history.

Deliverables

  • n8n query and alert workflows
  • Zabbix and GLPI API integrations
  • WhatsApp interface with authentication
  • Incident risk estimation model

Technologies

n8n · Zabbix · GLPI · WhatsApp · Gemini API · Python (Random Forest)

Need a similar integration for a client?

API integrations, monitoring workflows, ticketing automation: start with a clearly scoped pilot project.

Discuss a Pilot Project

Back to CÉLESTE CORP