Service: PLGT Stack (Prometheus, Loki, Grafana, Tempo)
Server: Hetzner (46.224.40.5)
Access: monitor.isutech.co.za
Last Updated: 2026-01-07
The PLGT Stack is iSu Technologies’ unified monitoring and observability solution, providing complete visibility across metrics, logs, and traces:
- Metrics Collection - Real-time performance data (Prometheus)
- Log Aggregation - Centralized log management (Loki)
- Distributed Tracing - Request flow analysis (Tempo)
- Unified Dashboards - Single pane of glass (Grafana)
- Multi-Channel Alerting - Slack, Telegram, Email notifications
- SLA Tracking - Uptime and compliance monitoring
- Automated Reports - Weekly status reports and analytics
subgraph "Visualization Layer"
subgraph "Storage & Processing"
AM[Alertmanager<br>:9093]
subgraph "Notification Channels"
SL[Slack<br>#alerts #critical]
TG[Telegram<br>Bot Notifications]
subgraph "Data Collection"
NE[Node Exporter<br>:9100]
BB[Blackbox Exporter<br>:9115]
subgraph "External Targets"
| Component | Purpose | Port | Access |
|---|
| Grafana | Visualization & Dashboards | 3004 | monitor.isutech.co.za |
| Prometheus | Metrics Collection & Storage | 9090 | Internal only |
| Loki | Log Aggregation & Indexing | 3100 | Internal / Proxy |
| Tempo | Distributed Tracing | 3200 | Internal only |
| Alertmanager | Alert Routing & Notifications | 9093 | Internal only |
| Component | Purpose | Port | Access |
|---|
| Alloy | Unified Collector (Logs + Traces) | 12345 | Internal only |
| Node Exporter | Host System Metrics | 9100 | Internal only |
| cAdvisor | Container Metrics | 8081 | Internal only |
| Blackbox Exporter | HTTP/TCP/SSL Probes | 9115 | Internal only |
- Open Grafana
- Go to Alerting → Alert rules
- View firing and pending alerts
- Open Grafana → Explore
- Select Loki datasource
- Enter your LogQL query
- Open Grafana → Explore
- Select Tempo datasource
- Search by trace ID or service
| Dashboard | UID | Purpose |
|---|
| iSuTech Services | isutech-services | Main overview - websites, APIs, SSL status |
| Infrastructure Overview | infrastructure | CPU, Memory, Disk, Network |
| Container Metrics | container-metrics | Docker container resources |
| Logs Explorer | logs-explorer | Search logs via Loki |
| Tempo - Distributed Tracing | tempo-traces | Trace search & analysis |
| Alloy - Unified Collector | alloy-metrics | Collector health & metrics |
| Dashboard | UID | Purpose |
|---|
| SLA Tracking | sla-tracking | Uptime percentages, SLA compliance, response times |
| Cost & Resource Tracking | plgt-cost-tracking | Infrastructure costs, storage usage, monthly estimates |
| Dashboard | UID | Purpose |
|---|
| Umdoni Municipality | umdoni-municipality | Client system & database metrics |
| Umdoni User Activity | umdoni-activity | Login activity, session events, user actions |
| Umdoni Security | umdoni-security | Failed logins, brute force detection, security events |
| Site | Type | Monitoring |
|---|
| monitor.isutech.co.za | Grafana | HTTP probe |
| docs.isutech.co.za | Documentation | HTTP probe (auth-protected) |
| api.isutech.co.za | API Gateway | HTTP probe |
| sace.isutech.co.za | SACE Portal | HTTP probe |
| sansa.isutech.co.za | SANSA Portal | HTTP probe |
| tumi.isutech.co.za | Tumi App | HTTP probe |
| thrivesend.isutech.co.za | ThriveSend | HTTP probe |
| prospectiq.isutech.co.za | ProspectIQ | HTTP probe |
| Client | Site | Monitoring |
|---|
| Umdoni Municipality | umdoni.gov.za | HTTP probe, metrics.php, activity logs to Loki |
| Category | Examples | Channels |
|---|
| Critical | Instance down, CPU >95%, Disk >95% | Email + Slack (#critical) + Telegram |
| Warning | High CPU (>80%), High memory, SSL expiry <30d | Email + Slack (#alerts) |
| Security | Failed login spike, Brute force detection | Email + Slack (#critical) + Telegram |
| Info | Container restarts, Configuration reloads | Slack (#alerts) only |
| Channel | Purpose | Configuration |
|---|
| Email | Primary notifications | SMTP via Gmail |
| Slack | Team collaboration | #alerts (standard), #critical (urgent) |
| Telegram | Mobile notifications | Bot API with direct messaging |
| Microsoft Teams | Enterprise integration | Webhook (optional) |
The PLGT stack supports monitoring external client sites through:
- HTTP Probes - Website availability via Blackbox Exporter
- Metrics Endpoint - PHP metrics exporter for shared hosting
- Log Shipping - Activity logs shipped to Loki via PHP cron
See the Client Integration section below for implementation details.
docker compose logs -f [service]
docker compose restart [service]
# Check Prometheus targets
curl http://localhost:9090/api/v1/targets
curl http://localhost:3100/ready
curl http://localhost:3200/ready
# Reload Alertmanager config
docker compose exec alertmanager kill -HUP 1
# Test Slack notification
curl -X POST -H 'Content-type: application/json' \
--data '{"text":"Test alert from PLGT"}' \
Document Version: 2.2
Created: 2025-12-31
Updated: 2026-01-07
Author: iSu Technologies