[INFLUX] ✅ Connected to http://localhost:8086
╔══════════════════════════════════════════════════╗
║  Smart City Simulator — Martinique               ║
╚══════════════════════════════════════════════════╝
[CFG] Capteurs: 10  |  Intervalle: 1s
[CFG] Orion-LD: True  |  Stellio: False  |  FROST: True
[CFG] InfluxDB: True  |  Pulsar: True  |  Redpanda: True
[PULSAR] ⚠️  Cannot reach http://smart-city-pulsar:8080: <urlopen error [Errno -2] Name or service not known>
  🌪️ DEBUG: Test Pulsar direct...
2026-05-05 16:52:09.234 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:09.234 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:09.235 ERROR [139365228476096] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:09.235 ERROR [139365228476096] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:09.235 INFO  [139365228476096] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:09.235 ERROR [139365228476096] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-air-quality -- ConnectError
2026-05-05 16:52:09.235 INFO  [139365228476096] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️ DEBUG: Test Pulsar result: False
[REDPANDA] ⚠️  Cannot reach http://smart-city-redpanda:8082: <urlopen error [Errno -2] Name or service not known>
[MQTT] 🔌 Connexion aux brokers...
/home/eric/smart-city-digital-twin-martinique/simulator.py:407: DeprecationWarning: Callback API version 1 is deprecated, update to latest version
  c = mqtt.Client(client_id=cid, protocol=mqtt.MQTTv311)
[MQTT]   ❌ Mosquitto @ localhost:1883 → [Errno 111] Connection refused
[MQTT]   ✅ EMQX connecté
[MQTT]   ✅ BunkerM connecté

[SIM] ⏱️  It #1 — 16:52:12
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📊 FROST: POST Thing traffic_000...
  ✅ FROST Thing traffic_000 créé (ID: 12)
  📊 FROST: POST Datastream traffic_000/vehicle_count...
  ✅ FROST Datastream traffic_000/vehicle_count créé (ID: 45)
  📊 FROST: POST Datastream traffic_000/average_speed_kmh...
  ✅ FROST Datastream traffic_000/average_speed_kmh créé (ID: 46)
  📊 FROST: POST Datastream traffic_000/congestion_level...
  ✅ FROST Datastream traffic_000/congestion_level créé (ID: 47)
  📊 FROST: POST Datastream traffic_000/occupancy_percent...
  ✅ FROST Datastream traffic_000/occupancy_percent créé (ID: 48)
  ⚠️  HTTP POST http://localhost:8090/FROST-Server/v1.1/Datastreams(45)/Observations → 400: {"code":400,"type":"error","message":"No FeatureOfInterest provided, and none can be generated."}
  📊 FROST:    ❌
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:52:12.935 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:12.935 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:12.936 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:12.936 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:12.936 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:12.936 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:12.936 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📊 FROST: POST Thing traffic_001...
  ✅ FROST Thing traffic_001 créé (ID: 13)
  📊 FROST: POST Datastream traffic_001/vehicle_count...
  ✅ FROST Datastream traffic_001/vehicle_count créé (ID: 49)
  📊 FROST: POST Datastream traffic_001/average_speed_kmh...
  📈 InfluxDB: 4 points written
  ✅ FROST Datastream traffic_001/average_speed_kmh créé (ID: 50)
  📊 FROST: POST Datastream traffic_001/congestion_level...
  ✅ FROST Datastream traffic_001/congestion_level créé (ID: 51)
  📊 FROST: POST Datastream traffic_001/occupancy_percent...
  ✅ FROST Datastream traffic_001/occupancy_percent créé (ID: 52)
  ⚠️  HTTP POST http://localhost:8090/FROST-Server/v1.1/Datastreams(49)/Observations → 400: {"code":400,"type":"error","message":"No FeatureOfInterest provided, and none can be generated."}
  📊 FROST:    ❌
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:52:13.459 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:13.459 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:13.460 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:13.460 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:13.460 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:13.460 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:13.460 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📊 FROST: POST Thing traffic_002...
  ✅ FROST Thing traffic_002 créé (ID: 14)
  📊 FROST: POST Datastream traffic_002/vehicle_count...
  📈 InfluxDB: 4 points written
  ✅ FROST Datastream traffic_002/vehicle_count créé (ID: 53)
  📊 FROST: POST Datastream traffic_002/average_speed_kmh...
  ✅ FROST Datastream traffic_002/average_speed_kmh créé (ID: 54)
  📊 FROST: POST Datastream traffic_002/congestion_level...
  ✅ FROST Datastream traffic_002/congestion_level créé (ID: 55)
  📊 FROST: POST Datastream traffic_002/occupancy_percent...
  ✅ FROST Datastream traffic_002/occupancy_percent créé (ID: 56)
  ⚠️  HTTP POST http://localhost:8090/FROST-Server/v1.1/Datastreams(53)/Observations → 400: {"code":400,"type":"error","message":"No FeatureOfInterest provided, and none can be generated."}
  📊 FROST:    ❌
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:52:13.939 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:13.939 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:13.940 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:13.940 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:13.940 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:13.940 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:13.940 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📊 FROST: POST Thing airquality_003...
  ✅ FROST Thing airquality_003 créé (ID: 15)
  📊 FROST: POST Datastream airquality_003/pm25_ugm3...
  📈 InfluxDB: 4 points written
  ✅ FROST Datastream airquality_003/pm25_ugm3 créé (ID: 57)
  📊 FROST: POST Datastream airquality_003/pm10_ugm3...
  ✅ FROST Datastream airquality_003/pm10_ugm3 créé (ID: 58)
  📊 FROST: POST Datastream airquality_003/no2_ugm3...
  ✅ FROST Datastream airquality_003/no2_ugm3 créé (ID: 59)
  📊 FROST: POST Datastream airquality_003/o3_ugm3...
  ✅ FROST Datastream airquality_003/o3_ugm3 créé (ID: 60)
  📊 FROST: POST Datastream airquality_003/co_mgm3...
  ✅ FROST Datastream airquality_003/co_mgm3 créé (ID: 61)
  📊 FROST: POST Datastream airquality_003/temperature_celsius...
  ✅ FROST Datastream airquality_003/temperature_celsius créé (ID: 62)
  📊 FROST: POST Datastream airquality_003/humidity_percent...
  ✅ FROST Datastream airquality_003/humidity_percent créé (ID: 63)
  ⚠️  HTTP POST http://localhost:8090/FROST-Server/v1.1/Datastreams(57)/Observations → 400: {"code":400,"type":"error","message":"No FeatureOfInterest provided, and none can be generated."}
  📊 FROST:    ❌
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:52:14.569 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:14.569 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:14.570 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:14.570 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:14.570 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:14.570 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:14.570 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📊 FROST: POST Thing airquality_004...
  ✅ FROST Thing airquality_004 créé (ID: 16)
  📊 FROST: POST Datastream airquality_004/pm25_ugm3...
  📈 InfluxDB: 7 points written
  ✅ FROST Datastream airquality_004/pm25_ugm3 créé (ID: 64)
  📊 FROST: POST Datastream airquality_004/pm10_ugm3...
  ✅ FROST Datastream airquality_004/pm10_ugm3 créé (ID: 65)
  📊 FROST: POST Datastream airquality_004/no2_ugm3...
  ✅ FROST Datastream airquality_004/no2_ugm3 créé (ID: 66)
  📊 FROST: POST Datastream airquality_004/o3_ugm3...
  ✅ FROST Datastream airquality_004/o3_ugm3 créé (ID: 67)
  📊 FROST: POST Datastream airquality_004/co_mgm3...
  ✅ FROST Datastream airquality_004/co_mgm3 créé (ID: 68)
  📊 FROST: POST Datastream airquality_004/temperature_celsius...
  ✅ FROST Datastream airquality_004/temperature_celsius créé (ID: 69)
  📊 FROST: POST Datastream airquality_004/humidity_percent...
  ✅ FROST Datastream airquality_004/humidity_percent créé (ID: 70)
  ⚠️  HTTP POST http://localhost:8090/FROST-Server/v1.1/Datastreams(64)/Observations → 400: {"code":400,"type":"error","message":"No FeatureOfInterest provided, and none can be generated."}
  📊 FROST:    ❌
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:52:17.771 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:17.771 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:17.774 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:17.774 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:17.774 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:17.774 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:17.774 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📊 FROST: POST Thing parking_005...
  📈 InfluxDB: 7 points written
  ✅ FROST Thing parking_005 créé (ID: 17)
  📊 FROST: POST Datastream parking_005/total_spots...
  ✅ FROST Datastream parking_005/total_spots créé (ID: 71)
  📊 FROST: POST Datastream parking_005/available_spots...
  ✅ FROST Datastream parking_005/available_spots créé (ID: 72)
  📊 FROST: POST Datastream parking_005/occupancy_percent...
  ✅ FROST Datastream parking_005/occupancy_percent créé (ID: 73)
  📊 FROST: POST Datastream parking_005/turnover_per_hour...
  ✅ FROST Datastream parking_005/turnover_per_hour créé (ID: 74)
  ⚠️  HTTP POST http://localhost:8090/FROST-Server/v1.1/Datastreams(71)/Observations → 400: {"code":400,"type":"error","message":"No FeatureOfInterest provided, and none can be generated."}
  📊 FROST:    ❌
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:52:18.744 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:18.744 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:18.747 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:18.747 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:18.747 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:18.747 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:18.747 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📊 FROST: POST Thing parking_006...
  📈 InfluxDB: 4 points written
  ✅ FROST Thing parking_006 créé (ID: 18)
  📊 FROST: POST Datastream parking_006/total_spots...
  ✅ FROST Datastream parking_006/total_spots créé (ID: 75)
  📊 FROST: POST Datastream parking_006/available_spots...
  ✅ FROST Datastream parking_006/available_spots créé (ID: 76)
  📊 FROST: POST Datastream parking_006/occupancy_percent...
  ✅ FROST Datastream parking_006/occupancy_percent créé (ID: 77)
  📊 FROST: POST Datastream parking_006/turnover_per_hour...
  ✅ FROST Datastream parking_006/turnover_per_hour créé (ID: 78)
  ⚠️  HTTP POST http://localhost:8090/FROST-Server/v1.1/Datastreams(75)/Observations → 400: {"code":400,"type":"error","message":"No FeatureOfInterest provided, and none can be generated."}
  📊 FROST:    ❌
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:52:20.503 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:20.503 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:20.505 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:20.505 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:20.505 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:20.505 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:20.505 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📊 FROST: POST Thing noise_007...
  ✅ FROST Thing noise_007 créé (ID: 19)
  📊 FROST: POST Datastream noise_007/noise_level_db...
  📈 InfluxDB: 4 points written
  ✅ FROST Datastream noise_007/noise_level_db créé (ID: 79)
  📊 FROST: POST Datastream noise_007/peak_db...
  ✅ FROST Datastream noise_007/peak_db créé (ID: 80)
  ⚠️  HTTP POST http://localhost:8090/FROST-Server/v1.1/Datastreams(79)/Observations → 400: {"code":400,"type":"error","message":"No FeatureOfInterest provided, and none can be generated."}
  📊 FROST:    ❌
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:52:20.994 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:20.994 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:20.995 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:20.995 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:20.995 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:20.995 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:52:20.995 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📊 FROST: POST Thing weather_008...
  ✅ FROST Thing weather_008 créé (ID: 20)
  📊 FROST: POST Datastream weather_008/temperature_celsius...
  📈 InfluxDB: 2 points written
  ✅ FROST Datastream weather_008/temperature_celsius créé (ID: 81)
  📊 FROST: POST Datastream weather_008/humidity_percent...
  ✅ FROST Datastream weather_008/humidity_percent créé (ID: 82)
  📊 FROST: POST Datastream weather_008/wind_speed_kmh...
  ✅ FROST Datastream weather_008/wind_speed_kmh créé (ID: 83)
  📊 FROST: POST Datastream weather_008/pressure_hpa...
  ✅ FROST Datastream weather_008/pressure_hpa créé (ID: 84)
  📊 FROST: POST Datastream weather_008/rain_mm...
  ✅ FROST Datastream weather_008/rain_mm créé (ID: 85)
  📊 FROST: POST Datastream weather_008/uv_index...
  ✅ FROST Datastream weather_008/uv_index créé (ID: 86)
  ⚠️  HTTP POST http://localhost:8090/FROST-Server/v1.1/Datastreams(81)/Observations → 400: {"code":400,"type":"error","message":"No FeatureOfInterest provided, and none can be generated."}
  📊 FROST:    ❌
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:52:21.855 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:21.855 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:21.856 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:21.856 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:21.856 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:21.856 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:52:21.856 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📊 FROST: POST Thing light_009...
  ✅ FROST Thing light_009 créé (ID: 21)
  📊 FROST: POST Datastream light_009/brightness_lux...
  📈 InfluxDB: 6 points written
  ✅ FROST Datastream light_009/brightness_lux créé (ID: 87)
  📊 FROST: POST Datastream light_009/power_consumption_w...
  ✅ FROST Datastream light_009/power_consumption_w créé (ID: 88)
  ⚠️  HTTP POST http://localhost:8090/FROST-Server/v1.1/Datastreams(87)/Observations → 400: {"code":400,"type":"error","message":"No FeatureOfInterest provided, and none can be generated."}
  📊 FROST:    ❌
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:52:22.112 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:22.112 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:22.113 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:22.113 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:22.113 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:22.113 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:52:22.113 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #2 — 16:52:23
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:52:23.329 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:23.329 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:23.329 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:23.329 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:23.329 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:23.329 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:23.329 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:52:23.550 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:23.550 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:23.551 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:23.551 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:23.551 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:23.551 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:23.551 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:52:23.768 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:23.768 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:23.769 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:23.769 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:23.769 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:23.769 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:23.769 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:52:24.201 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:24.201 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:24.205 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:24.205 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:24.205 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:24.205 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:24.205 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:52:24.689 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:24.689 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:24.692 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:24.692 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:24.692 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:24.692 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:24.692 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:52:24.926 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:24.926 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:24.929 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:24.929 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:24.929 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:24.929 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:24.929 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:52:25.281 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:25.281 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:25.284 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:25.284 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:25.285 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:25.285 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:25.285 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:52:25.467 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:25.468 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:25.468 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:25.468 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:25.468 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:25.468 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:52:25.468 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:52:25.854 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:25.854 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:25.857 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:25.857 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:25.857 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:25.857 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:52:25.857 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 6 points written
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:52:26.088 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:26.088 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:26.092 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:26.092 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:26.092 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:26.092 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:52:26.092 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #3 — 16:52:27
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:52:27.376 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:27.376 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:27.377 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:27.377 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:27.377 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:27.377 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:27.377 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:52:27.776 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:27.776 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:27.777 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:27.777 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:27.777 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:27.777 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:27.777 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:52:28.196 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:28.196 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:28.197 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:28.197 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:28.197 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:28.197 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:28.197 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:52:28.590 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:28.590 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:28.591 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:28.591 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:28.591 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:28.591 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:28.591 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:52:29.094 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:29.095 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:29.096 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:29.096 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:29.096 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:29.096 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:29.096 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:52:29.400 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:29.400 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:29.401 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:29.401 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:29.401 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:29.401 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:29.401 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:52:29.617 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:29.617 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:29.619 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:29.619 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:29.619 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:29.619 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:29.619 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:52:29.802 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:29.802 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:29.803 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:29.803 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:29.803 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:29.803 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:52:29.803 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:52:30.674 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:30.674 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:30.674 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:30.674 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:30.675 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:30.675 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:52:30.675 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 6 points written
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:52:30.888 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:30.888 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:30.889 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:30.889 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:30.889 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:30.889 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:52:30.889 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #4 — 16:52:31
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:52:32.671 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:32.671 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:32.671 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:32.671 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:32.671 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:32.671 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:32.671 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:52:34.264 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:34.264 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:34.266 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:34.266 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:34.266 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:34.266 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:34.266 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:52:35.515 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:35.515 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:35.516 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:35.516 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:35.516 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:35.516 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:35.516 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:52:36.445 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:36.445 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:36.446 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:36.446 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:36.446 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:36.446 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:36.446 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:52:37.116 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:37.116 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:37.118 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:37.118 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:37.118 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:37.118 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:37.118 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:52:37.444 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:37.444 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:37.445 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:37.445 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:37.445 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:37.445 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:37.445 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:52:37.763 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:37.763 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:37.764 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:37.764 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:37.764 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:37.764 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:37.764 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:52:37.940 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:37.940 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:37.941 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:37.941 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:37.941 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:37.941 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:52:37.941 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:52:38.297 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:38.297 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:38.297 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:38.297 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:38.297 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:38.297 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:52:38.297 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:52:38.447 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:38.447 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:38.448 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:38.448 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:38.448 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:38.448 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:52:38.448 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 6 points written
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #5 — 16:52:39
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:52:39.683 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:39.683 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:39.683 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:39.683 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:39.683 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:39.683 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:39.683 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:52:39.975 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:39.975 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:39.976 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:39.976 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:39.976 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:39.976 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:39.976 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:52:40.685 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:40.685 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:40.686 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:40.686 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:40.686 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:40.686 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:40.686 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:52:41.377 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:41.377 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:41.378 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:41.379 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:41.379 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:41.379 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:41.379 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:52:41.801 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:41.801 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:41.803 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:41.803 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:41.803 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:41.803 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:41.803 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:52:42.141 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:42.141 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:42.142 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:42.142 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:42.142 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:42.142 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:42.142 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:52:42.384 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:42.384 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:42.385 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:42.385 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:42.385 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:42.385 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:42.385 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:52:42.551 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:42.551 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:42.551 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:42.551 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:42.552 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:42.552 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:52:42.552 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  📈 InfluxDB: 4 points written
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:52:42.919 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:42.919 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:42.920 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:42.920 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:42.920 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:42.920 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:52:42.920 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 6 points written
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:52:43.096 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:43.096 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:43.098 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:43.098 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:43.098 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:43.098 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:52:43.098 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #6 — 16:52:44
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:52:44.446 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:44.446 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:44.449 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:44.449 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:44.449 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:44.449 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:44.449 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:52:44.757 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:44.757 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:44.758 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:44.758 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:44.758 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:44.758 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:44.758 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)

  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:52:44.958 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:44.958 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:44.959 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:44.959 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:44.959 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:44.959 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:44.959 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:52:46.073 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:46.073 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:46.074 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:46.074 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:46.074 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:46.074 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:46.074 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:52:46.745 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:46.745 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:46.746 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:46.746 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:46.746 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:46.746 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:46.746 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:52:47.036 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:47.036 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:47.037 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:47.037 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:47.037 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:47.037 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:47.037 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅

  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:52:47.427 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:47.427 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:47.428 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:47.428 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:47.428 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:47.428 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:47.428 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:52:47.538 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:47.538 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:47.539 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:47.539 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:47.539 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:47.539 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:52:47.539 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:52:48.002 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:48.002 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:48.005 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:48.005 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:48.005 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:48.005 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:52:48.005 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 6 points written
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:52:48.154 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:48.154 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:48.155 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:48.155 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:48.155 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:48.155 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:52:48.155 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #7 — 16:52:49
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:52:50.115 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:50.115 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:50.116 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:50.116 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:50.116 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:50.116 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:50.116 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅

  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:52:51.182 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:51.182 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:51.183 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:51.183 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:51.183 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:51.183 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:51.183 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:52:51.520 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:51.520 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:51.521 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:51.521 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:51.521 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:51.521 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:51.521 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:52:52.502 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:52.502 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:52.503 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:52.503 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:52.503 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:52.503 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:52.503 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:52:53.114 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:53.114 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:53.115 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:53.116 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:53.116 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:53.116 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:53.116 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:52:53.515 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:53.515 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:53.516 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:53.516 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:53.516 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:53.516 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:53.516 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:52:53.771 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:53.771 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:53.772 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:53.772 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:53.772 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:53.772 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:52:53.772 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:52:53.942 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:53.942 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:53.943 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:53.943 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:53.943 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:53.943 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:52:53.943 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:52:55.223 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:55.223 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:55.224 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:55.224 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:55.224 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:55.224 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:52:55.224 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:52:55.892 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:55.892 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:55.895 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:55.895 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:55.895 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:55.895 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:52:55.895 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 6 points written
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #8 — 16:52:56
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:52:57.300 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:57.300 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:57.303 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:57.303 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:57.303 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:57.304 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:57.304 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:52:57.691 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:57.691 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:57.693 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:57.693 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:57.693 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:57.693 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:57.693 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:52:58.074 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:58.074 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:58.075 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:58.075 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:58.075 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:58.075 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:52:58.075 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:52:59.530 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:52:59.530 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:59.532 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:52:59.532 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:52:59.532 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:52:59.532 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:52:59.532 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:53:01.137 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:01.137 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:01.137 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:01.137 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:01.137 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:01.137 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:01.137 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:53:01.577 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:01.577 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:01.578 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:01.578 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:01.578 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:01.578 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:01.578 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:53:02.140 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:02.140 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:02.143 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:02.143 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:02.143 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:02.143 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:02.143 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:53:02.421 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:02.421 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:02.424 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:02.424 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:02.424 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:02.424 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:53:02.424 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:53:03.109 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:03.109 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:03.110 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:03.110 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:03.110 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:03.110 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:53:03.110 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 6 points written
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:53:03.305 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:03.305 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:03.306 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:03.306 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:03.306 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:03.306 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:53:03.306 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #9 — 16:53:04
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:53:04.616 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:04.616 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:04.619 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:04.619 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:04.619 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:04.619 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:04.619 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:53:04.943 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:04.943 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:04.944 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:04.944 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:04.944 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:04.944 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:04.944 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:53:05.409 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:05.409 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:05.410 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:05.410 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:05.410 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:05.410 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:05.410 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:53:07.340 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:07.340 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:07.342 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:07.342 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:07.342 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:07.342 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:07.342 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:53:08.736 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:08.736 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:08.739 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:08.739 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:08.739 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:08.739 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:08.739 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:53:09.424 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:09.424 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:09.425 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:09.425 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:09.425 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:09.425 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:09.425 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:53:09.706 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:09.706 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:09.707 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:09.707 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:09.707 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:09.708 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:09.708 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:53:10.155 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:10.155 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:10.155 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:10.155 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:10.155 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:10.155 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:53:10.156 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:53:11.722 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:11.722 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:11.723 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:11.723 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:11.723 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:11.723 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:53:11.723 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:53:12.222 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:12.222 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:12.224 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:12.224 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:12.224 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:12.224 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:53:12.224 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 6 points written
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #10 — 16:53:13
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:53:13.522 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:13.522 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:13.522 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:13.523 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:13.523 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:13.523 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:13.523 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:53:13.709 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:13.709 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:13.710 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:13.710 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:13.710 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:13.710 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:13.710 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:53:13.982 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:13.982 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:13.984 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:13.984 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:13.984 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:13.984 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:13.984 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:53:14.531 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:14.531 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:14.532 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:14.532 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:14.532 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:14.532 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:14.532 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:53:15.016 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:15.016 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:15.018 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:15.018 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:15.018 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:15.018 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:15.018 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:53:15.346 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:15.346 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:15.347 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:15.347 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:15.347 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:15.347 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:15.347 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:53:15.603 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:15.603 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:15.606 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:15.606 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:15.606 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:15.606 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:15.607 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:53:15.871 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:15.871 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:15.872 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:15.872 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:15.872 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:15.872 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:53:15.872 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:53:16.766 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:16.766 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:16.766 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:16.766 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:16.766 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:16.766 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:53:16.766 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:53:17.117 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:17.117 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:17.118 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:17.118 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:17.118 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:17.118 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:53:17.118 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 6 points written
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #11 — 16:53:18
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:53:20.094 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:20.094 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:20.097 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:20.097 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:20.097 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:20.097 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:20.097 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  📈 InfluxDB: 4 points written
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:53:20.780 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:20.780 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:20.781 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:20.781 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:20.781 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:20.781 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:20.781 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:53:21.135 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:21.135 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:21.136 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:21.136 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:21.136 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:21.136 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:21.136 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:53:21.650 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:21.650 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:21.651 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:21.651 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:21.651 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:21.651 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:21.651 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:53:22.049 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:22.049 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:22.051 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:22.051 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:22.051 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:22.051 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:22.051 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:53:22.272 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:22.272 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:22.273 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:22.273 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:22.273 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:22.273 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:22.273 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:53:22.469 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:22.469 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:22.470 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:22.470 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:22.470 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:22.470 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:22.470 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:53:22.581 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:22.581 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:22.582 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:22.582 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:22.582 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:22.582 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:53:22.582 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:53:23.083 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:23.083 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:23.084 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:23.084 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:23.084 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:23.084 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:53:23.084 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:53:23.364 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:23.364 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:23.367 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:23.367 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:23.367 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:23.367 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:53:23.367 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 6 points written
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #12 — 16:53:24
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:53:25.665 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:25.666 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:25.669 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:25.669 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:25.669 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:25.669 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:25.669 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:53:26.077 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:26.077 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:26.080 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:26.080 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:26.080 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:26.080 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:26.080 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:53:26.430 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:26.430 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:26.430 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:26.430 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:26.430 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:26.430 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:26.430 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:53:27.221 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:27.221 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:27.222 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:27.222 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:27.222 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:27.222 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:27.222 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:53:29.080 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:29.080 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:29.083 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:29.083 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:29.083 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:29.083 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:29.083 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:53:29.999 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:30.000 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:30.000 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:30.000 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:30.000 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:30.000 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:30.000 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:53:30.532 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:30.532 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:30.533 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:30.533 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:30.533 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:30.533 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:30.533 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:53:30.640 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:30.640 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:30.641 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:30.641 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:30.641 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:30.641 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:53:30.641 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:53:31.167 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:31.167 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:31.169 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:31.169 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:31.169 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:31.169 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:53:31.169 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 6 points written
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:53:31.369 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:31.369 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:31.370 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:31.370 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:31.370 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:31.370 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:53:31.370 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #13 — 16:53:32
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:53:32.621 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:32.622 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:32.624 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:32.624 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:32.624 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:32.624 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:32.624 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:53:32.903 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:32.903 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:32.904 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:32.904 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:32.904 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:32.904 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:32.904 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:53:33.100 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:33.100 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:33.100 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:33.100 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:33.100 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:33.100 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:33.100 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:53:33.634 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:33.634 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:33.637 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:33.637 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:33.637 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:33.637 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:33.637 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:53:34.048 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:34.048 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:34.049 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:34.049 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:34.049 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:34.049 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:34.049 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:53:34.815 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:34.815 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:34.815 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:34.815 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:34.815 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:34.815 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:34.815 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:53:35.174 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:35.174 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:35.175 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:35.175 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:35.175 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:35.175 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:35.175 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:53:35.359 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:35.359 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:35.361 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:35.361 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:35.361 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:35.362 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:53:35.362 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:53:35.665 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:35.665 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:35.666 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:35.666 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:35.666 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:35.666 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:53:35.666 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 6 points written
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:53:35.795 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:35.795 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:35.796 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:35.796 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:35.796 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:35.796 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:53:35.796 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #14 — 16:53:36
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:53:37.186 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:37.186 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:37.187 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:37.187 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:37.187 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:37.187 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:37.187 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:53:37.399 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:37.399 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:37.400 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:37.400 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:37.400 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:37.400 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:37.400 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:53:37.608 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:37.608 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:37.611 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:37.611 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:37.611 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:37.611 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:37.611 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:53:38.034 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:38.035 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:38.038 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:38.038 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:38.038 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:38.038 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:38.038 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:53:38.390 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:38.390 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:38.390 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:38.390 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:38.391 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:38.391 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:38.391 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:53:38.599 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:38.599 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:38.600 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:38.600 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:38.600 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:38.600 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:38.600 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:53:38.813 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:38.813 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:38.814 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:38.814 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:38.814 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:38.814 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:38.814 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:53:39.016 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:39.016 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:39.016 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:39.017 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:39.017 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:39.017 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:53:39.017 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:53:39.465 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:39.465 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:39.466 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:39.466 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:39.466 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:39.466 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:53:39.466 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:53:39.586 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:39.586 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:39.589 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:39.589 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:39.589 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:39.589 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:53:39.589 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 6 points written
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #15 — 16:53:40
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:53:40.790 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:40.790 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:40.791 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:40.791 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:40.791 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:40.791 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:40.791 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:53:40.981 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:40.981 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:40.982 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:40.982 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:40.982 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:40.982 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:40.982 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:53:41.289 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:41.289 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:41.292 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:41.292 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:41.292 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:41.292 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:41.293 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:53:41.624 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:41.624 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:41.625 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:41.625 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:41.625 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:41.625 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:41.625 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:53:42.010 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:42.010 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:42.012 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:42.013 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:42.013 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:42.013 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:42.013 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:53:42.234 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:42.234 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:42.235 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:42.235 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:42.235 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:42.235 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:42.235 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:53:42.432 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:42.432 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:42.433 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:42.433 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:42.433 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:42.433 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:42.433 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation noise_007/peak_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:53:42.543 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:42.543 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:42.544 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:42.544 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:42.544 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:42.544 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:53:42.544 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:53:42.874 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:42.874 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:42.875 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:42.875 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:42.875 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:42.875 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:53:42.875 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 6 points written
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:53:43.024 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:43.024 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:43.025 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:43.025 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:43.025 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:43.025 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:53:43.025 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #16 — 16:53:44
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_000, payload_mqtt exists: True
2026-05-05 16:53:44.183 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:44.183 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:44.184 ERROR [139365211690688] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:44.184 ERROR [139365211690688] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:44.184 INFO  [139365211690688] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:44.184 ERROR [139365211690688] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:44.184 INFO  [139365211690688] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_001 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation traffic_001/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_001/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_001, payload_mqtt exists: True
2026-05-05 16:53:44.577 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:44.577 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:44.577 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:44.577 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:44.577 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:44.577 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:44.577 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/traffic/traffic_002 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_002/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/congestion_level → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_002/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for traffic_002, payload_mqtt exists: True
2026-05-05 16:53:45.588 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:45.588 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:45.591 ERROR [139364843648704] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:45.591 ERROR [139364843648704] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:45.591 INFO  [139364843648704] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:45.591 ERROR [139364843648704] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-traffic -- ConnectError
2026-05-05 16:53:45.591 INFO  [139364843648704] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_003 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_003/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation airquality_003/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_003/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_003, payload_mqtt exists: True
2026-05-05 16:53:47.203 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:47.203 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:47.204 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:47.204 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:47.204 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:47.204 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:47.204 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/airquality/airquality_004 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation airquality_004/pm25_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/pm10_ugm3 → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation airquality_004/no2_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/o3_ugm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/co_mgm3 → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation airquality_004/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for airquality_004, payload_mqtt exists: True
2026-05-05 16:53:48.109 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:48.109 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:48.110 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:48.110 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:48.110 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:48.110 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-airquality -- ConnectError
2026-05-05 16:53:48.110 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_005 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_005/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 7 points written
  ✅ FROST Observation parking_005/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_005/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_005, payload_mqtt exists: True
2026-05-05 16:53:48.528 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:48.528 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:48.529 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:48.529 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:48.529 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:48.529 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:48.529 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/parking/parking_006 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation parking_006/total_spots → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written
  ✅ FROST Observation parking_006/available_spots → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/occupancy_percent → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation parking_006/turnover_per_hour → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for parking_006, payload_mqtt exists: True
2026-05-05 16:53:48.852 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:48.852 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:48.853 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:48.853 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:48.853 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:48.853 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-parking -- ConnectError
2026-05-05 16:53:48.853 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/noise/noise_007 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation noise_007/noise_level_db → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 4 points written  ✅ FROST Observation noise_007/peak_db → OK (cached)

  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for noise_007, payload_mqtt exists: True
2026-05-05 16:53:49.215 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:49.215 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:49.215 ERROR [139365203297984] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:49.215 ERROR [139365203297984] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:49.215 INFO  [139365203297984] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:49.215 ERROR [139365203297984] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-noise -- ConnectError
2026-05-05 16:53:49.215 INFO  [139365203297984] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/weather/weather_008 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation weather_008/temperature_celsius → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/humidity_percent → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: 2 points written
  ✅ FROST Observation weather_008/wind_speed_kmh → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/pressure_hpa → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/rain_mm → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation weather_008/uv_index → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for weather_008, payload_mqtt exists: True
2026-05-05 16:53:49.654 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:49.654 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:49.655 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:49.655 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:49.655 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:49.655 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-weather -- ConnectError
2026-05-05 16:53:49.655 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
  📤 city/sensors/light/light_009 → EMQX,BunkerM
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation light_009/brightness_lux → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation light_009/power_consumption_w → OK (cached)
  📊 FROST:    ✅
  📈 InfluxDB: ✅
  🌪️ DEBUG: calling publish_pulsar for light_009, payload_mqtt exists: True
2026-05-05 16:53:49.909 INFO  [139365512103744] ClientConnection:209 | [<none> -> pulsar://smart-city-pulsar:6650] Create ClientConnection, timeout=10000
2026-05-05 16:53:49.909 INFO  [139365512103744] ConnectionPool:148 | Created connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:49.910 ERROR [139365194905280] ClientConnection:600 | Resolve error: asio.netdb:1 : Host not found (authoritative)
2026-05-05 16:53:49.910 ERROR [139365194905280] ClientConnection:1283 | [<none> -> pulsar://smart-city-pulsar:6650] Connection closed with ConnectError (refCnt: 2)
2026-05-05 16:53:49.910 INFO  [139365194905280] ConnectionPool:165 | Remove connection for pulsar://smart-city-pulsar:6650-pulsar://smart-city-pulsar:6650-0
2026-05-05 16:53:49.910 ERROR [139365194905280] ClientImpl:255 | Error Checking/Getting Partition Metadata while creating producer on persistent://public/default/smartcity-light -- ConnectError
2026-05-05 16:53:49.910 INFO  [139365194905280] ClientConnection:301 | [<none> -> pulsar://smart-city-pulsar:6650] Destroyed connection to pulsar://smart-city-pulsar:6650-0
  ⚠️  Pulsar → Pulsar error: ConnectError
  🌪️  Pulsar:  ❌
  ⚠️  Redpanda → <urlopen error [Errno -2] Name or service not known>
  🐟 Redpanda: ❌
[SIM]   ✅ 10 capteurs | MQTT OK: 2/3 | OR: True
  📈 InfluxDB: 6 points written
  📈 InfluxDB: 2 points written

[SIM] ⏱️  It #17 — 16:53:50
  📤 city/sensors/traffic/traffic_000 → EMQX,BunkerM
  ⚠️  OpenRemote token → HTTP Error 405: Method Not Allowed
  🏠 OpenRemote: ⚠️ skipped
  🌐 Orion-LD: ✅ (HTTP 204 updated)
  🌐 Orion-LD: ✅
  ✅ FROST Observation traffic_000/vehicle_count → OK (cached)
  📊 FROST:    ✅
  ✅ FROST Observation traffic_000/average_speed_kmh → OK (cached)
  📊 FROST:    ✅
