Skip to main content

Advanced Diagnostics

This guide covers advanced troubleshooting techniques for Organization Admins. Use these procedures when standard troubleshooting has not resolved the issue.


Data Validation

Identifying Data Integrity Issues

Common data integrity issues and how to detect them:

IssueSymptomsDetection Method
Duplicate time entriesEmployee shows double hoursReports > Time Detail, sort by employee and date
Orphaned shift assignmentsShifts assigned to deactivated employeesReports > Schedule Audit
Missing clock-outsOpen time entries with no end timeTime Clock > Open Entries (filter for entries older than 24 hours)
Incorrect pay ratesPayroll totals do not match expectationsReports > Payroll Preview vs. actual rates
Department mismatchesEmployee appears in wrong department reportsTeam > Employee detail > Department history

Running a Data Validation Check

  1. Go to Settings > System > Data Validation
  2. Select the validation scope:
    • Time entries: Check for duplicates, overlaps, and open entries
    • Employee records: Check for missing required fields
    • Schedule data: Check for unassigned shifts and conflicts
    • All: Run all validation checks
  3. Set the date range to validate
  4. Click Run Validation
  5. Review the results report:
    • Errors: Issues that must be fixed (e.g., overlapping time entries)
    • Warnings: Potential issues to review (e.g., unusually long shifts)
    • Info: Informational findings (e.g., employees with no scheduled shifts)

Resolving Common Data Issues

Duplicate Time Entries

  1. Go to Reports > Time Detail
  2. Sort by employee and date to find duplicates
  3. Compare the entries to determine which is correct
  4. Delete the incorrect entry (Admin permission required)
  5. Document the correction in the employee's time record notes

Missing Clock-Outs

  1. Go to Time Clock > Open Entries
  2. Filter for entries older than 24 hours
  3. For each open entry:
    • Contact the employee or their manager to determine the actual clock-out time
    • Edit the entry to add the clock-out time
    • Add a note explaining the manual correction
  4. Consider enabling Auto Clock-Out to prevent future occurrences

Overlapping Time Entries

  1. Identify the overlap in the time detail report
  2. Determine which entry is correct based on schedule and manager input
  3. Edit or delete the incorrect entry
  4. Review whether the overlap was caused by a system issue or user error

Timezone Issues

Timezone problems are among the most common sources of data discrepancies, especially for multi-location organizations.

How Timezones Work in Olympus Cloud

ComponentTimezone UsedConfigurable
Clock-in/out recordsEmployee's assigned location timezoneVia location settings
Schedule displayViewer's location timezoneAutomatic
ReportsOrganization default or selected timezonePer report
API timestampsUTC (ISO 8601)No (always UTC)
NotificationsRecipient's location timezoneAutomatic
Audit logUTC with local time displayDisplay only

Diagnosing Timezone Issues

Symptom: Clock-in time shows incorrect hour

  1. Verify the employee's location assignment (Team > Employee > Location)
  2. Verify the location's timezone setting (Settings > Locations > Edit)
  3. Check the employee's device timezone (Profile > Device Info)
  4. If the device and location timezones differ, the location timezone is used for records

Symptom: Report data does not match dashboard data

  1. Check the timezone setting on the report (Report Settings > Timezone)
  2. Compare with the dashboard timezone (always uses your profile timezone)
  3. If they differ, the same clock-in will appear at different times in each view

Symptom: Scheduled shift appears at wrong time for employee

  1. Verify the schedule was created using the correct location timezone
  2. Check if the employee recently moved to a different location
  3. Verify daylight saving time (DST) transitions are handled correctly

Daylight Saving Time (DST)

DST Transitions

During DST transitions (spring forward / fall back), shifts that span the transition time may show unexpected durations. For example, a shift from 1:00 AM to 6:00 AM during "spring forward" is actually 4 hours, not 5. Olympus Cloud handles this automatically, but duration displays may confuse employees. Avoid scheduling shifts that span the 2:00 AM DST transition when possible.

Multi-Timezone Best Practices

PracticeDescription
Set location timezones correctlyEach location must have the correct timezone
Use location timezone for reportsWhen comparing locations, specify the timezone explicitly
Communicate shift times in local timeEmployees see times in their location's timezone
Be aware of DST transitionsReview schedules near DST change dates
Use UTC for API integrationsExternal systems should send and receive UTC timestamps

Rate Limiting

Olympus Cloud applies rate limits to API requests and certain in-app actions to ensure platform stability.

Rate Limit Tiers

Action TypeLimitWindowApplies To
API requests1,000 requestsPer minutePer API key
Login attempts5 attemptsPer 15 minutesPer user
Bulk operations100 recordsPer requestPer operation
Report generation10 reportsPer hourPer user
Export operations5 exportsPer hourPer user
Webhook deliveries100 eventsPer minutePer endpoint

Identifying Rate Limit Issues

Symptoms:

  • API returns HTTP 429 (Too Many Requests)
  • In-app actions show "Please wait" or "Try again later"
  • Integration syncs fail with timeout errors
  • Reports queue instead of generating immediately

Checking Your Rate Limit Status:

  1. Go to Settings > API > Usage
  2. View current and historical request volumes
  3. Check for rate limit hits (shown as red bars)
  4. Identify which endpoints or users are consuming the most requests

Resolving Rate Limit Issues

CauseSolution
Integration polling too frequentlyReduce sync frequency or use webhooks instead
Bulk import too largeBreak imports into smaller batches (under 100 records)
Report generation during peak hoursSchedule reports for off-peak hours
Multiple admins running exports simultaneouslyCoordinate export schedules
API client not implementing backoffAdd exponential backoff to retry logic

API Rate Limit Headers

API responses include rate limit information in headers:

HeaderDescription
X-RateLimit-LimitMaximum requests allowed in the window
X-RateLimit-RemainingRequests remaining in the current window
X-RateLimit-ResetUnix timestamp when the window resets
Retry-AfterSeconds to wait before retrying (on 429 responses)

Webhook Verification

Verify that webhooks are functioning correctly and delivering accurate data.

Webhook Health Check

  1. Go to Settings > Integrations > Webhooks
  2. For each configured webhook, check:
MetricHealthyAction Needed
Success rateOver 99%Review failures if under 99%
Average latencyUnder 2 secondsInvestigate endpoint performance if higher
Last deliveryWithin expected intervalCheck if events are being generated
Payload sizeUnder 1 MBOptimize payload if consistently large

Testing Webhooks

Send a Test Event

  1. Go to Integrations > Webhooks > select the webhook
  2. Click Send Test Event
  3. Choose the event type to simulate
  4. Click Send
  5. Check the delivery log for the result
  6. Verify the payload was received by the endpoint

Verify Webhook Signatures

Olympus Cloud signs webhook payloads with HMAC-SHA256. Your endpoint should verify signatures to ensure authenticity.

HeaderPurpose
X-Olympus-SignatureHMAC-SHA256 hash of the payload
X-Olympus-TimestampTimestamp of when the event was sent
X-Olympus-EventEvent type (e.g., timesheet.approved)
X-Olympus-Delivery-IDUnique ID for this delivery attempt

Webhook Event Types

EventTriggerCommon Use
employee.createdNew employee addedHR sync
employee.updatedEmployee profile changedHR sync
employee.deactivatedEmployee deactivatedAccess revocation
timesheet.submittedEmployee submits timesheetNotifications
timesheet.approvedManager approves timesheetPayroll processing
schedule.publishedSchedule is publishedCalendar sync
shift.swappedShift swap completedNotifications
timeoff.requestedTime-off request submittedApproval workflow
timeoff.approvedTime-off request approvedCalendar updates

Historical Data Audit

Review and verify historical data for compliance, payroll accuracy, and operational analysis.

Accessing the Audit Trail

  1. Go to Settings > Security > Audit Log
  2. Use filters to narrow your search:
    • Date range: Specific period to audit
    • User: Actions by a specific person
    • Action type: Specific types of changes
    • Resource: What was changed (employee, schedule, time entry)

Audit Trail Contents

Every change in the system is logged:

Data LoggedDetails
WhoUser who made the change (name, email, role)
WhatWhat was changed (field, old value, new value)
WhenTimestamp in UTC and local time
WhereIP address and device information
WhyReason field (if provided by the user)

Common Audit Scenarios

Payroll Dispute Investigation

  1. Filter audit log by the employee in question
  2. Filter by "Time Entry" resource type
  3. Review all modifications to their time entries for the disputed period
  4. Export the filtered audit log as evidence

Security Incident Review

  1. Filter audit log by "Login" action type
  2. Look for failed login attempts, especially from unusual IP addresses
  3. Check for role or permission changes around the time of the incident
  4. Review any data exports performed

Compliance Audit

  1. Export the full audit log for the compliance period
  2. Filter by break compliance, overtime approvals, and policy changes
  3. Verify that all required approvals were obtained
  4. Document any exceptions or overrides

Data Retention

Data TypeRetention Period
Audit logs12 months (Professional), 24 months (Enterprise)
Time entries7 years
Schedules3 years
Employee recordsDuration of employment + 7 years
ReportsUntil manually deleted
Messages2 years
Extended Retention

For organizations that need longer audit log retention, set up scheduled exports. Go to Settings > Security > Audit Log > Schedule Export to automatically export audit data monthly to CSV for your own archival.


Performance Profiling

Diagnose slow loading times and unresponsive behavior.

Measuring Performance

Go to Settings > System > Performance to view:

MetricDescriptionTarget
Page load timeAverage time to load the dashboardUnder 3 seconds
API response timeAverage API call durationUnder 500ms
Report generation timeAverage time to generate reportsUnder 10 seconds
Search response timeEmployee and schedule search speedUnder 1 second
Real-time update latencyTime for clock-ins to appear on dashboardUnder 5 seconds

Common Performance Issues

IssueLikely CauseSolution
Dashboard loads slowlyToo many widgetsRemove unused widgets, reduce data window
Reports take a long timeLarge date range or datasetNarrow filters, reduce date range
Search is slowLarge employee count without filteringUse department or location filters
Schedule view lagsViewing too many departments at onceFilter to specific departments
Export times outDataset too largeBreak into smaller date ranges or departments

Performance Optimization Tips

TipImpact
Limit dashboard widgets to 6-8Reduces initial load time
Use relative date ranges in reportsPrevents accidentally querying years of data
Archive old schedulesRemoves historical data from active queries
Limit concurrent report generationPrevents resource contention
Use Chrome or FirefoxBetter performance than Safari or Edge for data-heavy views
Clear browser cache weeklyPrevents stale assets from slowing rendering

Browser Developer Tools

For advanced debugging, use your browser's developer tools:

  1. Open Chrome DevTools: Press F12 or Ctrl+Shift+I
  2. Go to the Network tab
  3. Reload the page and observe:
    • Red entries: Failed requests (check status codes)
    • Slow entries: Requests taking more than 2 seconds
    • Large entries: Responses larger than 1 MB
  4. Go to the Console tab to check for JavaScript errors
  5. Share any findings with support when opening a ticket

Error Code Reference

When contacting support, provide the error code shown in the application.

Code RangeCategoryExample
1xxxAuthentication1001: Invalid token, 1003: Session expired
2xxxAuthorization2001: Insufficient permissions, 2003: Role not found
3xxxData validation3001: Required field missing, 3005: Invalid date range
4xxxIntegration4001: Connection failed, 4003: Sync timeout
5xxxSystem5001: Internal error, 5003: Service unavailable

What to Include in a Support Ticket

When standard troubleshooting has not resolved the issue:

InformationWhere to Find It
Error codeDisplayed in the error message
TimestampWhen the error occurred (include timezone)
User affectedEmail of the user experiencing the issue
Steps to reproduceExact actions that trigger the error
Browser/deviceBrowser name and version, or mobile device model
ScreenshotsCapture the error message and surrounding context
Network infoWiFi, cellular, or VPN
Recent changesAny configuration changes made recently

Diagnostic Tools Summary

ToolLocationPurpose
Data ValidationSettings > System > Data ValidationFind data integrity issues
Audit LogSettings > Security > Audit LogReview historical changes
Sync StatusSettings > Integrations > HealthMonitor integration health
Performance MonitorSettings > System > PerformanceIdentify slow operations
System Statusstatus.olympuscloud.aiCheck for service outages
Webhook LogsSettings > Integrations > WebhooksDebug webhook deliveries
API UsageSettings > API > UsageMonitor rate limits and usage