The Two Jobs
These share nothing but the process. A fault in one does not imply a fault in the other, and the logs are split on that basis.
Endpoints
Live Monitoring
The stats endpoint returns more than readings. Alongside
batteryStats it reports secondsSinceValid, a dataIsShownButOutdated flag raised when the newest reading is more than 2 minutes old, and errorGettingStats when the query itself failed.
Those three fields are why the dashboard can distinguish stale data from absent data from a broken query, which are three different faults. The 15 minute window and the 2 minute threshold are hard coded rather than configurable.
Charging Export
That sequence is the export, and Charging Export covers what each step does to the data.
DAQ Upload
The kart identifies itself with a
kart-id request header. See Upload and Conversion for the zip contents, the metadata fields and the run numbering.
How The Logs Are Split
Requests are logged on the way in and the way out, into three files under the container’slogs/ folder:
All three sync to S3 with the rest of the track logs every 30 minutes. See Track Operations.
Key Files
All paths are undertelemetry/telemetry-api/ in can-wifi.
