Django backend for GlitchTip https://glitchtip.com/

David Burke c54b10ac17 Added cleanup data script 4 years ago
.vscode d09a0d71d0 Add latest event endpoint 5 years ago
alerts c54b10ac17 Added cleanup data script 4 years ago
bin 68dd12d54c End to end 5 years ago
djstripe_ext 6e2ef3414e Fixes #6 5 years ago
event_store b4748913b6 Add small test event 4 years ago
glitchtip c54b10ac17 Added cleanup data script 4 years ago
issues c54b10ac17 Added cleanup data script 4 years ago
organizations_ext ddb985a7d1 Stripe subscription 5 years ago
projects ea7c391b4f Manual merge of !9 4 years ago
sentry 913088df6b Added go sdk test and workaround for undocumented exception format 4 years ago
teams 5110db1b17 Add more to django admin 4 years ago
test_api db54a9bae5 Start test api 5 years ago
users 7b1e7aa9ec Add alerts to django admin 4 years ago
.gitignore ddb985a7d1 Stripe subscription 5 years ago
.gitlab-ci.yml db54a9bae5 Start test api 5 years ago
CONTRIBUTING.md 4168a6cdc3 Document serializer naming 5 years ago
Dockerfile 184b4b2f9f cache pip maybe 5 years ago
LICENSE 5718e945ba Add license 5 years ago
NOTICE.md 4e14fdf970 Typo 5 years ago
README.md aa2cece587 Add locust 5 years ago
docker-compose.locust.yml bd2444e2ef Fixes #9 5 years ago
docker-compose.yml db54a9bae5 Start test api 5 years ago
locustfile.py fe8353ceaa Send event in locusfile 5 years ago
manage.py 5e245f6ac0 initial commit 5 years ago
poetry.lock 590cb2fca5 Add django anymail 4 years ago
pyproject.toml 590cb2fca5 Add django anymail 4 years ago

README.md

GlitchTip Backend

GlitchTip is an open source, Sentry API compatible error tracking platform. It is a partial fork/partial reimplementation of Sentry's open source codebase before it went proprietary. Its goals are to be a modern, easy-to-develop error tracking platform that respects your freedom to use it any way you wish. Some differences include:

  • A modern development environment with Python 3 and Django 3.0
  • Simplicity over features. We use Postgres to store error data. Our code base is a fraction of the size of Sentry and looks like a typical Django app. We leverage existing open source Django ecosystem apps whenever possible
  • Respects your privacy. No Zendesk. No massive JS bundles. No tracking. Even our marketing site runs Matomo and respects Do Not Track. GlitchTip will never report home. We will never know if you run it yourself
  • Commitment to open source. We use open source tools like GitLab whenever possible. With our MIT license, you can use it for anything you'd like and even sell it. We believe in competition and hope you make GlitchTip even better

Project status: Experimental. Open an issue and say hello if you'd like to help. We are able to process basic error requests from the open source Sentry client tools.

Developing

We use Docker for development. View our Contributing documentation if you'd like to help make GlitchTip better.

Run local dev environment

  1. Ensure docker and docker-compose are installed
  2. docker-compose up
  3. `docker-compose run --rm web ./manage.py migrate

Run tests with docker-compose run --rm web ./manage.py test

VS Code (Optional)

VS Code can do type checking and type inference. However, it requires setting up a virtual environment.

  1. Install Python 3 dependencies. For Ubuntu this is apt install python3-dev python3-venv
  2. Install poetry
  3. Create Python virtual environment python3 -m venv env
  4. Activate environment source env/bin/activate
  5. Install packages poetry install

Load testing

Locust is built into the dev dependencies. To run with locus run docker-compose -f docker-compose.yml -f docker-compose.locust.yml up

Now go to localhost:8089 to run the test.

Locust will not be intalled to production docker images and cannot be run from them.