Tracksolid deployment with timescale & grafana with backup
Find a file
David Kiania 6a0ceb78dd Fix trip distance unit (metres→km) and full device sync on upsert
[FIX-M16] jimi.device.track.mileage returns distance in metres despite
docs claiming km. Confirmed: avgSpeed × runTimeSecond / 3600 = distance/1000.
poll_trips() now divides raw value by 1000 before storing as distance_km.
3 existing bad rows corrected in prod DB (distance_km / 1000).

[FIX-M17] sync_devices() ON CONFLICT clause was only updating 5 of 26
fields, silently dropping driver_phone, sim, iccid, vehicle_name, status
etc. on subsequent syncs. Expanded to update all device fields so driver
assignments made in Tracksolid Pro UI propagate to DB on next daily sync.

Add sync_driver_audit.py: one-shot script to compare API vs DB device
registry, report driver/IMEI gaps, and force a full field upsert.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 00:06:57 +03:00
administration Add DB connection string to ops manual, add administration notes, remove stale deploy guide 2026-04-10 22:34:56 +03:00
grafana Fix Grafana provisioning: bake datasource/dashboard config into custom image 2026-04-11 22:18:44 +03:00
n8n-workflows Add n8n workflow templates and change webhook port to 8888 2026-04-08 18:54:42 +03:00
.env Fix Grafana datasource: add GRAFANA_DB_RO_PASSWORD and sync grafana_ro on startup 2026-04-11 19:22:30 +03:00
.gitignore Add webhook receiver, consolidate shared utilities, expand telemetry coverage 2026-04-08 16:31:17 +03:00
.python-version Deploy v2.0 Production Telemetry Stack 2026-04-07 21:34:40 +03:00
01_BusinessAnalytics.md Replace hardcoded container names with dynamic lookup 2026-04-10 23:09:01 +03:00
02_tracksolid_docker_commands.md Add 02_tracksolid_docker_commands.md — remote DB command reference 2026-04-11 08:23:01 +03:00
02_tracksolid_full_schema_rev.sql Add webhook receiver, consolidate shared utilities, expand telemetry coverage 2026-04-08 16:31:17 +03:00
03_webhook_schema_migration.sql Add webhook receiver, consolidate shared utilities, expand telemetry coverage 2026-04-08 16:31:17 +03:00
04_bug_fix_migration.sql Fix alarm field mapping, distance unit bug, parking params; add schema migrations 2026-04-10 22:18:30 +03:00
05_enhancement_migration.sql Fix alarm field mapping, distance unit bug, parking params; add schema migrations 2026-04-10 22:18:30 +03:00
260410_baseline_report.md Regenerate 260410_baseline_report.md from live database (post-migration) 2026-04-11 07:42:33 +03:00
docker-compose.yaml Fix Grafana provisioning: bake datasource/dashboard config into custom image 2026-04-11 22:18:44 +03:00
Dockerfile Fix migration failures: switch to full TimescaleDB + use psql runner 2026-04-08 17:17:58 +03:00
grafanaDeployment.md Add Grafana NOC fleet dashboard with provisioning 2026-04-09 00:01:52 +03:00
grafanaOperationalManual.md Add Grafana NOC operational manual 2026-04-09 00:12:48 +03:00
ingest_events_rev.py Fix alarm field mapping, distance unit bug, parking params; add schema migrations 2026-04-10 22:18:30 +03:00
ingest_movement_rev.py Fix trip distance unit (metres→km) and full device sync on upsert 2026-04-12 00:06:57 +03:00
OPERATIONS_MANUAL.md Replace hardcoded container names with dynamic lookup 2026-04-10 23:09:01 +03:00
pyproject.toml Add webhook receiver, consolidate shared utilities, expand telemetry coverage 2026-04-08 16:31:17 +03:00
README.md first commit 2026-04-07 20:41:16 +03:00
run_migrations.py Fix Grafana datasource: add GRAFANA_DB_RO_PASSWORD and sync grafana_ro on startup 2026-04-11 19:22:30 +03:00
run_migrations.sh Add idempotent migration runner script 2026-04-10 23:31:57 +03:00
sync_driver_audit.py Fix trip distance unit (metres→km) and full device sync on upsert 2026-04-12 00:06:57 +03:00
tracksolid_DB_manual.md Replace hardcoded container names with dynamic lookup 2026-04-10 23:09:01 +03:00
tracksolidApiDocumentation.md Update tracksolidApiDocumentation.md with live implementation findings 2026-04-11 07:52:28 +03:00
ts_shared_rev.py Fix 5 webhook bugs: SAVEPOINTs, NULL guards, BCD timestamps, /pushevent, log NULL fix 2026-04-11 18:19:13 +03:00
webhook_receiver_rev.py Wire /pushevent to device_events table (was log-only) 2026-04-11 18:42:22 +03:00