{
  "name": "Bugsly problems and solutions",
  "description": "Each entry is a problem stated as a question, the direct answer, and the canonical and markdown URLs of the page that explains the fix step by step.",
  "url": "https://bugsly.dev/solutions",
  "markdown": "https://bugsly.dev/solutions.md",
  "count": 17,
  "solutions": [
    {
      "slug": "open-source-sentry-alternative",
      "problem": "What is a good open source alternative to Sentry for error tracking?",
      "answer": "The closest open source options are GlitchTip, which is open source and accepts events from Sentry's SDKs, and Sentry's own self-hosted release, which is source-available rather than classic open source and is packaged for low-volume use. Either way you run ingestion, storage, upgrades and backups yourself. Because the SDK protocol is shared, moving between trackers is mostly a DSN change.",
      "url": "https://bugsly.dev/solutions/open-source-sentry-alternative",
      "markdown_url": "https://bugsly.dev/solutions/open-source-sentry-alternative.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "python-error-and-performance-monitoring",
      "problem": "How do I monitor errors and slow requests in a Python app (Django or FastAPI) in production?",
      "answer": "Install sentry-sdk and call sentry_sdk.init as early as possible with a DSN, a release, an environment and a traces_sample_rate below 1.0 for busy services. The Django and FastAPI integrations enable automatically, capture unhandled exceptions, and create one transaction per request, so slow endpoints appear when you sort transactions by duration.",
      "url": "https://bugsly.dev/solutions/python-error-and-performance-monitoring",
      "markdown_url": "https://bugsly.dev/solutions/python-error-and-performance-monitoring.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "nodejs-error-tracking",
      "problem": "How do I track errors in a Node.js app in production, and which tools should I compare?",
      "answer": "Console logs are not enough: nobody reads them until a user complains, and they carry no grouping, alerts or release information. Load an error-tracking SDK before your application code, let it capture request errors and unhandled failures, flush pending events before the process exits, upload source maps for transpiled code, and tag every event with a release and an environment.",
      "url": "https://bugsly.dev/solutions/nodejs-error-tracking",
      "markdown_url": "https://bugsly.dev/solutions/nodejs-error-tracking.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "react-error-tracking",
      "problem": "How do I track errors in a React app, including errors that error boundaries cannot catch?",
      "answer": "Error boundaries only catch errors thrown while React renders. Everything else, including event handlers, async code and timers, reaches the browser as a global error or an unhandled promise rejection. Initialise an error-tracking SDK first so it listens for those events, add an error boundary and the React 19 root error hooks, upload source maps, and tag each release.",
      "url": "https://bugsly.dev/solutions/react-error-tracking",
      "markdown_url": "https://bugsly.dev/solutions/react-error-tracking.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "error-monitoring-mcp-claude-code",
      "problem": "How do I connect error monitoring to Claude Code with an MCP server?",
      "answer": "Pick an error tracker that offers a remote HTTP MCP server, run claude mcp add --transport http <name> <url>, then run /mcp inside Claude Code to sign in. Check with claude mcp list, which should show Connected. Start with a read-only question such as listing unresolved issues. Only connect servers you trust, because content they return can carry prompt injection.",
      "url": "https://bugsly.dev/solutions/error-monitoring-mcp-claude-code",
      "markdown_url": "https://bugsly.dev/solutions/error-monitoring-mcp-claude-code.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "sentry-alternative-ai-error-explanations",
      "problem": "Is there a Sentry alternative that explains errors with AI?",
      "answer": "Yes. You can paste any stack trace into any large language model, and some trackers add built-in explanations: Sentry lists Seer, an AI debugging agent that requires a subscription, and Bugsly runs an AI analysis on each issue plus a no-signup Explain This Error tool. Treat every explanation as a hypothesis: give it the full trace, breadcrumbs and release, then reproduce before applying a fix.",
      "url": "https://bugsly.dev/solutions/sentry-alternative-ai-error-explanations",
      "markdown_url": "https://bugsly.dev/solutions/sentry-alternative-ai-error-explanations.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "let-ai-agent-triage-production-errors",
      "problem": "How can I let an AI agent triage production errors safely?",
      "answer": "Give the agent read-only access first, through a revocable credential, to events that are already redacted. Let it group issues, rank them by frequency, recency, regression and user impact, and report evidence with a hypothesis and a proposed next step. Keep resolve, ignore and merge actions behind a human confirmation, and never let it deploy or pay.",
      "url": "https://bugsly.dev/solutions/let-ai-agent-triage-production-errors",
      "markdown_url": "https://bugsly.dev/solutions/let-ai-agent-triage-production-errors.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "best-error-tracking-for-startups",
      "problem": "What is the best error tracking tool for a small startup?",
      "answer": "There is no single best tool; choose by what you can verify in an afternoon. Measure time to first alert, what the billing meter counts (unique issues, raw events or errors), whether your SDK locks you in, who needs seats, how alerts are de-noised, source map support, and any SSO, data residency or self-hosting need. Then send the same test errors to two tools and compare.",
      "url": "https://bugsly.dev/solutions/best-error-tracking-for-startups",
      "markdown_url": "https://bugsly.dev/solutions/best-error-tracking-for-startups.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "switch-from-sentry-without-rewriting",
      "problem": "How do I move from Sentry to another error tracker without rewriting my instrumentation?",
      "answer": "Keep your Sentry SDK and change where it sends. Inventory the SDK features you use, run the new destination alongside the old one, swap the DSN, recreate alert rules, point sentry-cli source map uploads at the new host, verify with a deliberate error, and keep the old DSN as a rollback. Expect gaps: history may not carry over.",
      "url": "https://bugsly.dev/solutions/switch-from-sentry-without-rewriting",
      "markdown_url": "https://bugsly.dev/solutions/switch-from-sentry-without-rewriting.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "error-tracking-costs-spikes",
      "problem": "How do I stop error tracking costs from growing with traffic spikes?",
      "answer": "Find what is multiplying events, then cut volume at three points: fix the root error, filter noise in the SDK with sampleRate, ignoreErrors and beforeSend, and drop leftovers at the server with inbound filters and rate limits. Also check what your tool meters. Per-event meters grow with traffic spikes; per-unique-issue meters do not.",
      "url": "https://bugsly.dev/solutions/error-tracking-costs-spikes",
      "markdown_url": "https://bugsly.dev/solutions/error-tracking-costs-spikes.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "minified-stack-traces-source-maps",
      "problem": "Why do my production stack traces show minified code like app.min.js:1:48392, and how do I get readable ones?",
      "answer": "Production stack traces point into minified files because your bundler renames and joins your code, and the error tracker only sees the shipped file. Fix it by generating source maps in the production build, uploading them to your tracker tied to the same release your app reports, and keeping the maps off your public server. Frames then resolve to your original file, line and function.",
      "url": "https://bugsly.dev/solutions/minified-stack-traces-source-maps",
      "markdown_url": "https://bugsly.dev/solutions/minified-stack-traces-source-maps.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "sensitive-data-in-error-reports",
      "problem": "How do I stop passwords, tokens and personal data from ending up in error reports?",
      "answer": "Stop it at the source: configure the SDK so sensitive fields are never sent, using its data-collection options and beforeSend and breadcrumb hooks to drop or redact request bodies, headers, URLs, user fields and logged values. Add server-side scrubbing as a safety net, stop logging secrets, and rotate any credential that already leaked, since deleting an event does not un-expose it.",
      "url": "https://bugsly.dev/solutions/sensitive-data-in-error-reports",
      "markdown_url": "https://bugsly.dev/solutions/sensitive-data-in-error-reports.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "ai-open-pull-request-fix-error",
      "problem": "Can an AI agent open a pull request that fixes a production error, and how do I keep it safe?",
      "answer": "Yes, for small, well-localized bugs. Give the assistant the stack trace and the crash-site file, ask for a failing test first and the smallest possible diff, and let it open a pull request, never a direct push. Run your CI, have a human review it, link the issue, and never auto-merge. Multi-file refactors and data fixes need a person.",
      "url": "https://bugsly.dev/solutions/ai-open-pull-request-fix-error",
      "markdown_url": "https://bugsly.dev/solutions/ai-open-pull-request-fix-error.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "team-ignores-error-alerts",
      "problem": "Why does my team ignore error alerts, and how do I fix alert fatigue?",
      "answer": "Teams ignore error alerts when most of them are noise: one notification per event, duplicates of the same bug, bots and old browsers, and no owner. Fix it by alerting on a new issue or a regression rather than every event, adding frequency thresholds, filtering known noise sources, assigning owners, sending only urgent alerts to a loud channel, and deleting rules nobody acts on.",
      "url": "https://bugsly.dev/solutions/team-ignores-error-alerts",
      "markdown_url": "https://bugsly.dev/solutions/team-ignores-error-alerts.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "cron-job-silently-stopped",
      "problem": "How do I get alerted when a cron job silently stops running?",
      "answer": "A cron job that stops running produces no error, so there is nothing for an error tracker or log search to catch. Use a dead-man's switch: have the job ping a monitor URL every time it finishes, and let the monitor alert you when an expected ping does not arrive within a grace window. Also send an explicit failure ping when the job runs but fails.",
      "url": "https://bugsly.dev/solutions/cron-job-silently-stopped",
      "markdown_url": "https://bugsly.dev/solutions/cron-job-silently-stopped.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "know-site-is-down-before-customers",
      "problem": "How do I find out my site is down before my customers tell me?",
      "answer": "Run an uptime check from outside your own network that requests a health URL every minute or few minutes and alerts you when it fails. Check the status code, the response time and a keyword or health endpoint that actually touches your database. Require a failure from more than one region before alerting, and send alerts to a channel someone watches.",
      "url": "https://bugsly.dev/solutions/know-site-is-down-before-customers",
      "markdown_url": "https://bugsly.dev/solutions/know-site-is-down-before-customers.md",
      "updated": "2026-11-13"
    },
    {
      "slug": "which-release-broke-production",
      "problem": "How do I find out which deploy introduced a new production error?",
      "answer": "Tag every error event with a release name, preferably the git commit SHA, and record each deploy from CI. Then compare the issue's first-seen time with the deploy time, check whether it is new or a regression, and use the stack frames with git log and git blame to find the change. Roll back or switch off the feature flag.",
      "url": "https://bugsly.dev/solutions/which-release-broke-production",
      "markdown_url": "https://bugsly.dev/solutions/which-release-broke-production.md",
      "updated": "2026-11-13"
    }
  ]
}