Dogfooding Bugsink

Dogfooding is the practice of a company using its own product. If you’re an early adopter of Bugsink, you might want to use Bugsink to monitor Bugsink itself. This way you can provide feedback to us about the product and also ensure that you’re getting the most out of Bugsink. There are basically two ways to do this:

1. Using your own instance

Since Bugsink is built to be self-hosted, you can just point your Bugsink instance to itself.

  • Advantages: You’ll have full control over your data and will not have to worry about privacy issues.
  • Disadvantages: In the case of a catastrophic failure, there may not be a Bugsink instance to report the failure to. Also: in the case of a bug in the ingestion/digestion process, you might run into infinite recursion, because each attempt to report the bug will itself be reported as a bug.

2. Sending us your data

If you want the avoid the risks of infinite recursion, you can send your data to our instance. Reach out to us and we’ll set up a project for you on our instance. You can then use the API key for that project in your Bugsink configuration.

Configuration

Set the SENTRY_DSN environment variable to the DSN of the project you want to use. Depending on your setup:

Docker

In Docker, this is done in as an environment variable

docker run -e SENTRY_DSN="YOUR_VALUE_GOES_HERE" ...

bugsink_conf.py

In the bugsink_conf based setups look for the SENTRY_DSN variable:

# bugsink_conf.py

from bugsink.utils import eat_your_own_dogfood

# Set SENTRY_DSN to track any errors in the Bugsink code itself ("eating your own dogfood").
SENTRY_DSN = "YOUR_VALUE_GOES_HERE"
eat_your_own_dogfood(SENTRY_DSN)