error-tracker icon indicating copy to clipboard operation
error-tracker copied to clipboard

Record all errors (do not overwrite)

Open barseghyanartur opened this issue 6 years ago • 4 comments

At the moment, errors are overwritten. A better approach would be to simply group similar errors together (Sentry way) and allow to navigate from one to another.

barseghyanartur avatar Jan 08 '20 20:01 barseghyanartur

That's true we do override the existing error, the reason being on high volume errors should be stored in some other database systems. This also imply we need to have relations between errors that may not be possible errors.

sonus21 avatar Jan 09 '20 03:01 sonus21

No need to have relation between errors. You can simply group them by pair of URL, exception type. That's minimal.

As of the database system choice. There are ways to do that. You could also add messages to the queue and process them later on in batch. That would decrease DB writes.

barseghyanartur avatar Jan 09 '20 08:01 barseghyanartur

Exactly, that's the reason it's been built very minimal. There're many idea to improve the libs

  • Provide backend for individual DB systems (MongoDb, Redis Channel, PostgreSQL, MySQL simplified)
  • Provide search capabilities on top of data store (Easily can be supported in PostgreSQL, for higher level)
  • Provide alternative to DB like backend for Elastic search or any other search system.
  • Send data to pipeline and pipeline would push data to respective database system.

sonus21 avatar Jan 14 '20 03:01 sonus21

Hey, perhaps it should be started small. For now, it would be good to record all exceptions and provide an option to use another database (for instance, same driver/same engine, but a different database). It's very simple with Django (a single config in settings). With Flask a little bit more work.

BTW, another way of connecting to MongoDB is using djongo. Integration with MongoDB is then seamless.

barseghyanartur avatar Jan 14 '20 11:01 barseghyanartur