Troubleshooting

Common failure modes for oxide-baitcar with symptoms and step-by-step fixes.

Common failure modes with the symptoms to look for and the fixes that resolve them.

Deployment Issues

Mode and UI Issues

Dashcam Issues

Dispatch Issues

Recording Issues

Civilian Search Issues

Officer Visibility Issues

State Persistence

General Debugging

Enable structured debug logging

oxide-baitcar writes structured logs through olink.logger. The visibility of these logs is governed by oxide-logger's sinks (config/config.lua in oxide-logger), not by Config.Debug here.

The logger categories used by this resource include:

  • install — chip install flow
  • lock, engine, steering, speedLimit, strobe, alarm, honk — individual action handlers
  • trigger — drive-off detection and processing
  • entry — entry-notification flow
  • search — civilian search flow (note: failed rolls log at debug level only, not event level, to avoid flooding the audit log)
  • dispatch — alert creation
  • recording — clip upload pipeline
  • dashcam — dashcam open / close
  • dashcamTune — admin tuner commits
  • statebag — statebag set / clear on vehicles
  • radial — radial menu actions
  • security — rejected video-callback requests
  • errors — audit-row insert failures
  • All eventType values are also logged at info level when an audit row is written.

In oxide-logger, enable the relevant sinks and set the level to debug or trace to see the full flow.

Inspect the audit log

Most behavioral questions can be answered by querying baitcar_events directly:

-- Last 50 events for a plate
SELECT event_type, officer_charid, suspect_charid, created_at, coords, extra
FROM baitcar_events
WHERE plate = 'ABC123'
ORDER BY created_at DESC
LIMIT 50;

-- All triggers in the last 24 hours
SELECT plate, officer_charid, suspect_charid, coords, created_at
FROM baitcar_events
WHERE event_type = 'triggered'
  AND created_at > NOW() - INTERVAL 1 DAY
ORDER BY created_at DESC;

Getting Help

If the steps above do not resolve your issue:

Enable debug logging in oxide-logger for the oxide-baitcar resource and reproduce the problem.

Capture the relevant server and client console output and any baitcar_events rows from around the time of the issue.

Contact Oxide Studios support with the captured output, your shared/config.lua, and a description of the failing scenario.