Files
smart-city-digital-twin-mar…/session_resume_2026-05-05.md
Eric FELIXINE 01c2be4930 feat(simulator): real-time (1s), fix ENABLE_PULSAR, add Pulsar/Redpanda publish, fix InfluxDB URL
- Change INTERVAL to 1s for real-time sensor data
- Fix ENABLE_PULSAR comparison (accept 'true'/'false' strings)
- Add publish_pulsar() and publish_redpanda() functions
- Fix InfluxDB URL (smart-city-influxdb instead of digital-twin-influxdb)
- Add docker-compose.yml with simulator service
- Add redpanda config and start script
- Add session_resume_2026-05-05.md
2026-05-05 02:53:43 -04:00

54 lines
2.5 KiB
Markdown

# Session Resume — 05 Mai 2026
## ✅ Réalisé dans cette session (reprise après crash)
### 1. Diagnostic des dashboards Grafana cassés
- **Problème** : Erreurs `"Dashboard title cannot be empty"` pour 2 fichiers dans les logs de `digital-twin-grafana`
- **Cause racine** : Les fichiers JSON de provisioning avaient un objet `dashboard` imbriqué au lieu de `title` à la racine — Grafana file provider exige `title` au niveau root
- **Fichiers affectés** :
- `smart-city-overview.json` : title=MISSING, panels=0 (❌)
- `twin-overview.json` : title=MISSING, panels=0 (❌)
### 2. Correction des JSON (flattening)
- Script Python `/tmp/fix_grafana_dashboards.py` → extraction de `dashboard` vers le niveau root
- Résultat après fix :
- `twin-overview.json` : title="TWIN Supply Chain - Overview", 3 panels ✅
- `smart-city-overview.json` : title="Smart City Digital Twin - Overview", 8 panels ✅
- Copie dans le container : `docker cp /tmp/... digital-twin-grafana:/etc/grafana/provisioning/dashboards/`
- Redémarrage : `docker restart digital-twin-grafana`
### 3. Vérification
- ✅ Erreurs "Dashboard title cannot be empty" disparues des logs
- ✅ InfluxDB `iot_data` contient des données en temps réel (air quality, traffic, weather, parking, noise, light)
- ✅ Simulateur actif (6h+ uptime), push vers EMQX + InfluxDB
### 4. Commit Gitea
- `83d567b` — "Grafana: Fix dashboard provisioning (flatten nested dashboard objects)"
- 2 fichiers ajoutés au repo : `grafana_twin-overview.json`, `grafana_smart-city-overview.json`
## 📊 État actuel des services
| Service | Status | Notes |
|---------|--------|-------|
| Simulateur Python | ✅ Actif (6h+) | MQTT (EMQX) + InfluxDB |
| EMQX | ✅ | Port 11883 |
| InfluxDB (iot_data) | ✅ | Données en temps réel Martinique |
| FROST-Server | ✅ | Container frost-api-8090 |
| Orion-LD | ✅ | source/mqttTopic traceability |
| Stellio | ✅ | NGSI-LD tenant default |
| OpenRemote | ⚠️ OR:False | Simulateur échoue auth (localhost:8080) |
| Grafana | ✅ Corrigé | Dashboards chargés, 5 dashboards |
## ⏳ Reste à faire
1. **OpenRemote** — Corriger l'authentification du simulateur (OR: False)
2. **Grafana** — Affiner les panels (granularité, datasource queries)
3. **Carte OpenRemote / Cesium / Piero** — Configuration finale
## 🔗 URLs
- **Grafana** : https://grafana.digitribe.fr (admin / Digitribe972)
- **Gitea** : https://gitea.digitribe.fr/eric/smart-city-digital-twin-martinique
---
*Session reprise après crash du 05 mai 2026 à 00:25*