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

David Burke fddbd52e7d Update poetry. Fix celery scheduler issue where too many background 4 лет назад
.vscode 64d976e6d1 Show isMember on organizations projects serializer. Related to 4 лет назад
alerts 680f2d3c44 Fix email and stripe return links 4 лет назад
api_tokens 2d9c120057 API tokens have no permissions to view/modify API tokens 4 лет назад
assets 7b290b5349 HTML emails! 4 лет назад
bin 2531aee1d1 Added dyno env var check for running migrations and workers in Heroku 4 лет назад
djstripe_ext 680f2d3c44 Fix email and stripe return links 4 лет назад
environments 9291afe61b Save transaction events (still not used) 4 лет назад
events 2859f4d2da Add support for message.formatted 4 лет назад
glitchtip fddbd52e7d Update poetry. Fix celery scheduler issue where too many background 4 лет назад
issues f5ba937db2 Derp left debug things in 4 лет назад
organizations_ext 680f2d3c44 Fix email and stripe return links 4 лет назад
performance aea843845a Move transaction events to own model for performance reasons 4 лет назад
projects d0bf62cf69 Fixes #68 raise configuration error if glitchtip domain does not include 4 лет назад
releases f0846eb5c5 Create releases on event store and link to event 4 лет назад
sentry 66292de7f9 Semi support malformed incoming event exception values that aren't 4 лет назад
teams cd13f1d1a5 Added scoped permissions to teams 4 лет назад
templates c6cac71b79 Fixes #74 4 лет назад
test_api 0ea194b509 Ignore bandit tests for dummy test data 4 лет назад
user_reports ef2b80bcdc Move events model to own app 4 лет назад
users e792a54e4b Fixes #67 technically allow user creation without open registration. No 4 лет назад
.dockerignore 9291afe61b Save transaction events (still not used) 4 лет назад
.gitignore 91dc852b4e GET js for error report embed works 4 лет назад
.gitlab-ci.yml fddbd52e7d Update poetry. Fix celery scheduler issue where too many background 4 лет назад
.pylintrc 248d915ceb Add pylintrc 4 лет назад
CONTRIBUTING.md 4168a6cdc3 Document serializer naming 5 лет назад
Dockerfile fddbd52e7d Update poetry. Fix celery scheduler issue where too many background 4 лет назад
LICENSE 5718e945ba Add license 5 лет назад
NOTICE.md 8b3a243b24 Add environment tag creation 4 лет назад
README.md 8b3a243b24 Add environment tag creation 4 лет назад
docker-compose.locust.yml 199dbcc672 Update docker compose version 4 лет назад
docker-compose.yml 691cb1d0c1 Make console email backend not the default to simplify installation 4 лет назад
locustfile.py ef2b80bcdc Move events model to own app 4 лет назад
manage.py 5e245f6ac0 initial commit 5 лет назад
poetry.lock fddbd52e7d Update poetry. Fix celery scheduler issue where too many background 4 лет назад
pyproject.toml 85232db61e Minor package updates 4 лет назад

README.md

Gitter

GlitchTip Backend

GlitchTip is an open source, Sentry API compatible error tracking platform. It is a partial fork/mostly 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.1.
  • 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 massive JS bundles. No invasive tracking. No third party spying. 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: Stable. 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. More features are on the way.

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.

Acknowledgements

  • Thank you to the Sentry team for their ongoing open source SDK work and formerly open source backend of which this project is based on.
  • We use Rocket Chat for embedded support on glitchtip.com and in app
  • Matomo is used for analytics and is not shared with any third party