Skip to content

Collecting Diagnostics

Before escalating an issue, gather the following information. This helps the development team diagnose the problem faster.


Checklist

Use this checklist to make sure you have everything:

  • Log files (last 24 hours minimum)
  • Configuration file (appsettings.json -- with passwords redacted)
  • Screenshot of the error or problem
  • Hardware status (from Diagnostics panel)
  • Network connectivity results (ping results)
  • Export queue status (if applicable)
  • Error files (if export errors)

1. Log Files

Where to find them

C:\gatekeeper\conveyor\logs\gatekeeper-YYYYMMDD.log

What to collect

  1. Copy the log file for today's date.
  2. If the issue started yesterday or earlier, also copy the log file from that date.
  3. If the issue is intermittent, copy the last 2-3 days of logs.

How to collect

  1. Open File Explorer.
  2. Navigate to C:\gatekeeper\conveyor\logs\
  3. Right-click the log file(s) and select Copy.
  4. Paste them into a folder for your escalation.

Tip: Copy the files rather than moving them. The application is still writing to today's log file.


2. Configuration File

Where to find it

C:\gatekeeper\conveyor\appsettings.json

How to collect

  1. Copy appsettings.json to your escalation folder.
  2. IMPORTANT -- Redact passwords before sending:
  3. Open the copy in Notepad.
  4. Find any lines containing Password or password.
  5. Replace the password value with [REDACTED].
  6. Example: Change "TeasdaleNetworkPassword": "ENC:AQAAAnc..." to "TeasdaleNetworkPassword": "[REDACTED]"
  7. Save the file.

3. Screenshots

What to capture

  • The main application screen showing the error or problem
  • The Diagnostics panel showing hardware status
  • Any error dialog boxes

How to capture

  1. Make sure the screen shows what you want to capture.
  2. Press Windows key + Shift + S to open the Snipping Tool.
  3. Select the area to capture.
  4. Paste into an image editor or directly into your escalation email/ticket.

Alternative: Press Print Screen to capture the entire screen, then paste with Ctrl+V.


4. Hardware Status

What to note

From the Diagnostics panel, record:

Item Value
Camera status Connected / Disconnected
Camera connection string IP:Port shown
RFID reader status Connected / Disconnected / Not configured
RFID reader connection string IP:Port shown
Controller status Connected / Disconnected
Controller connection string IP:Port or COMx shown
Validation mode Current mode
Reject enabled Yes / No
Consecutive failures Count shown

5. Network Connectivity Results

What to test

Test connectivity to each hardware device:

ping <camera-ip>
ping <rfid-reader-ip>
ping <controller-ip>

Also test the export endpoint (if exports are failing):

ping <export-server-hostname>

What to record

For each ping, note: - Whether replies were received - Average response time - Any packet loss


6. Export Queue Status

What to check

  1. Count files in C:\gatekeeper\conveyor\data\ais\todo\ (pending)
  2. Check if C:\gatekeeper\conveyor\data\ais\error\ exists and has files (failed)
  3. Note the dates of the most recent files in each folder

Error files

If there are files in the error\ folder: 1. Copy any _ERROR.txt files from the most recent date subfolder. 2. Include them in your escalation.


Quick Collection Script (PowerShell)

If you are comfortable with PowerShell, you can use this script to collect everything at once:

# Create collection folder
$bundle = "C:\temp\gatekeeper-support-$(Get-Date -Format 'yyyyMMdd-HHmmss')"
New-Item -ItemType Directory -Path $bundle -Force

# Copy log files (last 3 days)
Copy-Item "C:\gatekeeper\conveyor\logs\gatekeeper-*.log" $bundle

# Copy config file (REMEMBER TO REDACT PASSWORDS MANUALLY)
Copy-Item "C:\gatekeeper\conveyor\appsettings.json" "$bundle\appsettings-REDACT-PASSWORDS.json"

# Copy export error files if they exist
if (Test-Path "C:\gatekeeper\conveyor\data\ais\error") {
    Copy-Item "C:\gatekeeper\conveyor\data\ais\error" $bundle -Recurse
}

# Count pending exports
$pending = (Get-ChildItem "C:\gatekeeper\conveyor\data\ais\todo" -ErrorAction SilentlyContinue).Count
"Pending exports: $pending" | Out-File "$bundle\queue-status.txt"

# Create zip file
Compress-Archive -Path $bundle -DestinationPath "$bundle.zip" -Force

Write-Host "Support bundle created at: $bundle.zip"
Write-Host "REMINDER: Open appsettings-REDACT-PASSWORDS.json and replace password values with [REDACTED]"

After running the script: Open appsettings-REDACT-PASSWORDS.json in the bundle and redact any passwords before sending.


What the development team needs most

In order of importance:

  1. Log file -- Contains the exact error messages and system state at the time of the issue.
  2. Exact error message -- The precise text shown on screen or in the log.
  3. Configuration file -- Shows the current settings and hardware configuration.
  4. Steps to reproduce -- How to make the problem happen again.
  5. Timeline -- When it started, whether it is constant or intermittent, and what changed recently.