/
Consortium Reader for Elector

Consortium Reader for Elector

This is the reader that uses the 2022 protocol specification.
For the legacy parser see the Consortium Parser page that uses the previous data specification.

Table of Contents:

Setup

The reader needs to be pointed at the correct database and have the correct authentication (user Id and password) information to make the right connections. To do this use
File menu - Preferences.

image-20250122-221723.png

Import / Synch Ridings, Parties, Candidates

The menu item - File - Synchronize Database will connect to the election data server and pull in the riding, party and candidate data. Then it compares it to what is in the selected Elector Database and makes updates and adds missing records as appropriate.

  • Inserts missing ridings

  • Inserts missing parties

  • Inserts missing candidates

  • Updates candidate ballot order / id values

    • based on riding, party and candidate last name

  • Deletes any candidates found in the Elector database that are not in the Consortium data feed.

Running

When you have started the reader displays

  • The database it’s connected to and the election name and date that it is processing

in the bottom status bar: (updates every 5 seconds approximately)

  • the number of reports in the Queue to be processed

  • the last report it processed and the time it processed it at

  • if the reader is up-to-date or not

image-20250122-221237.png

 

Logs

The logs always start with the version number of the application when it launched.

Info: Consortium Reader for Elector Launched - Version 1.0.1.0

When you start the reader it generates a log like:

1/22/2025 17:10:00 Info: Started reading the datafeed 1/22/2025 17:10:00 Info: SELECT ID, cnd_ridingID, cnd_datafeedID FROM elc_candidates WHERE cnd_date = '2025-01-21' AND cnd_datafeedID IS NOT NULL 1/22/2025 17:10:00 Info: {"recordType":"begin","beginServerTime":"2025-01-22T17:10:00-0500","electionName":"2025 Federal General Election","beginOptions":{"heartbeat":true,"latestOnly":false,"startAt":1}}

When you stop the reader it generates a log like:

1/22/2025 10:10:06 Info: Stopped reading datafeed

Heartbeat

You may see heartbeat messages logged and these just help to indicate that the parser is still able to receive updates from the server.

Final Reports

Each time a riding gets its final report (when total polls = polls reporting) it logs the record with its riding number.

Dropped Connections

If the application loses it’s connection to the server you may see entries like this:

Debug Logging

For greater details in the logs - turn on the Debug Logging option in the menu
Help - Diagnostics - Debug Logging

If there is a checkmark beside it then it is enabled.

Debug Logging Messages

When Debug is enabled, it reports each record as it processes it. That way if it has an error in the processing or stops working you can know what it was doing when that happened. Example:

Exceptions

If you see exception type messages in the log - this indicates an unexpected error in processing. The example below happened when the part of the consortium server processes had crashed: