About error-tracking-ruby
A skill for adding PostHog error tracking to Ruby applications. It covers exception capture, issue monitoring, and source maps, with guidance for integrating alongside existing error handling.
Key features
- 01Automatic and manual exception capture
- 02Issue monitoring and search
- 03Alerts and issue assignment
- 04Source map uploads
- 05Ruby SDK initialization and shutdown guidance
Use cases
- 01Add PostHog error tracking to a Ruby app
- 02Capture exceptions that bypass global handlers
- 03Investigate issues and assign them to teammates
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ posthog/ skills --skill error-tracking-rubyAfter installing, type/error-tracking-rubyin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
references/alerts.mdassigning-issues.mdfingerprints.mdmonitoring.mdruby.mdupload-source-maps.mdDetails
From the project READMEPostHog error tracking for Ruby
This skill helps you add PostHog error tracking to Ruby applications.
Reference files
references/ruby.md- Ruby error tracking installation - docsreferences/fingerprints.md- Fingerprints - docsreferences/alerts.md- Send error tracking alerts - docsreferences/monitoring.md- Monitor and search issues - docsreferences/assigning-issues.md- Assign issues to teammates - docsreferences/upload-source-maps.md- Upload source maps - docs
Consult the documentation for API details and framework-specific patterns.
Key principles
- Environment variables: Always use environment variables for PostHog keys and host URLs. Never hardcode them.
- Minimal changes: Add error tracking alongside existing error handling. Don't replace or restructure existing error handling code.
- Autocapture first: Enable exception autocapture in the SDK initialization before adding manual captures.
- Source maps: Upload source maps so stack traces resolve to original source code, not minified bundles.
- Manual capture for boundaries: Use
captureException()at error boundaries and catch blocks for errors that don't propagate to the global handler.
Framework guidelines
- posthog-ruby is the Ruby SDK gem name (add
gem 'posthog-ruby'to Gemfile) but require it withrequire 'posthog'(NOTrequire 'posthog-ruby') - Use PostHog::Client.new(api_key: key, host: host) for instance-based initialization in scripts and CLIs
- In CLIs and scripts: MUST call client.shutdown before exit or all events are lost
- Use begin/rescue/ensure with shutdown in the ensure block for proper cleanup
- capture and identify take a single hash argument: client.capture(distinct_id: 'user_123', event: 'my_event', properties: { key: 'value' })
- capture_exception takes POSITIONAL args (not keyword): client.capture_exception(exception, distinct_id, additional_properties) — do NOT use
distinct_id:keyword syntax
Comments
Markdown supported