stanfordnmbl / opencap-api

Apache License 2.0
5 stars 6 forks source link

Sentry common errors #136

Closed antoinefalisse closed 3 months ago

antoinefalisse commented 9 months ago

@olehkorkh-planeks these are the most common issues, could you take a look? Thanks.

olehkorkh-planeks commented 9 months ago

@antoinefalisse

(Different one) TypeError %i format: a number is required, not str Link to issue (Different one) TypeError %i format: a number is required, not str Link to issue

These issues have to be already fixed in dev branch, because I already had similar errors but with other messages. Here you can see the difference between main and dev branches for django.po file. https://share.cleanshot.com/z1jypZS71WdVYRznz66D

As you see, the main version has incorrect format string syntax. The dev branch has fixed version of the .po file and corresponded .mo file as well. So, after merging the branches, error messages should be fixed.

olehkorkh-planeks commented 9 months ago

@antoinefalisse

TypeError Field 'id' expected a number but got <django.contrib.auth.models.AnonymousUser object at 0x7ff74f4c1d10>. Link to issue

This is because the request was sent by non authorized user. I fixed the code a bit. Let me know if it is correct. Also, explain, is it correct behavior that anonymous user is allowed to make such requests?

Session matching query does not exist. Link to issue

It should return the 404 status now, instead of 500.

ValidationError ['“undefined” is not a valid UUID.'] Link to issue

Added additional check

Here is the PR - https://github.com/stanfordnmbl/opencap-api/pull/141/files

antoinefalisse commented 9 months ago

@olehkorkh-planeks @suhlrich @AlbertoCasasOrtiz

We tried to understand this issue with @AlbertoCasasOrtiz:

TypeError Field 'id' expected a number but got <django.contrib.auth.models.AnonymousUser object at 0x7ff74f4c1d10>. Link to issue

Before what we merged yesterday, it was possible for non logged in users to hit new session same setup from a public session not belonging to them (see this issue), which would call this endpoint . And this would create this problem. Bottom line: this should be fixed. So let's no add your fix for now but keep it mind.

I will merge the other one.