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

2.5 KiB

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


Session reprise après crash du 05 mai 2026 à 00:25