User Logs

May 3rd, 2023 by David Simms

Categorized as: Product Development

User Logs

Within the Skypunch election management console there is a user logs reporting tool useful for determining what changes have been made to your election setup and who made them. This article covers what is included in those logs, and what isn’t.

What gets logged

Changes to the following entities are logged:

  • Election settings
  • Positions
  • Candidates
  • Voters

In other words, all the parts that make up a ballot. And in this context “changes” means the creation of such entities in addition to updates applied to them after creation. Create a new election? That gets logged. Modify a voter’s record? That also gets logged, et cetera.

What is not logged

The following is not a comprehensive list, but representative of the types of actions that are not logged.

  • Logging into the election management console.
  • Viewing election results.
  • Getting a paper ballot.


Again, this is not a comprehensive list, but there are special cases where, based on the above, you might expect logging to occur, but it does not.

  • Loading a voter roster into the system
    As stated above, actions on voter records are logged, and inserting an entire voter roster into the system is certainly an action involving voters. However, there is a lot of overhead and no meaningful value to logging every single voter record created during a bulk load of voters by the system. When an individual adds a new voter to the voter roster using the election management console, that is a different type of action and is logged.
  • Submitting a ballot
    When a voter submits a ballot, that voter is flagged as having voted and that is certainly a change to a voter record. As stated previously, changes to voter records are logged, but in this case, in the interest of preserving secret balloting, nothing is written to the user logs when a voter submits a ballot because the timestamps between when a ballot is committed to the system and when a voter’s voting status changes from no to yes could conceivably be cross-referenced to associate a voter with a ballot.
  • Deleting an election
    Aborting an election certainly qualifies as a change to that election, but within the system there is a link between an election and its associated data such that when an election is deleted, all associated data is also deleted. Audit data is a part of associated data so rather than to log an action that would be deleted a millisecond later, delete actions on elections are not logged.

Creating a log report

Log in to your account and you will see a User logs link associated with any election you have running. Click that and you are presented with the audit report generation tools. Before any data displays, you must select at least one user from within your account and click the Submit button. You may further refine the report by choosing either a start date, an end date, or both to help more narrowly focus the report.

Reading the log report 

Reading the audit report is generally self-explanatory. Each entry will start by showing the type of action taken by a user. As an example, this could be insert for the insertion of new data into the system, or update for changes to existing data. This is followed with a timestamp showing when an action was taken; the user who performed the action; and finally, the type of entity on which the action was taken. This will be either election, position, candidate or voter.

Beneath that is the old data and new data and exactly as those labels suggest, you see the data as it was prior to the action, and also after. Depending on the type of action, one of these could be missing. For example, in the case of an insert action, there is no old data being acted upon so you will only see new data and old data will be blank.