graphql-python / graphql-python/graphene

Can there be a way to mute stacktraces coming from certain exceptions?

Aperta
#1,265 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
✨ enhancement
Lingua principale
Python
Stelle
8.2k
Fork
818
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

**Is your feature request related to a problem? Please describe.**
Currently I'd get a stacktrace for every single validation that occurs:

```
2020-09-16 03:31:18.459 ERROR graphql.execution.utils 127.0.0.1 c7b7f54e-299d-478d-b3e3-ae2b5112921f : Traceback (most recent call last):
File "/Users/blei/myproject/venv/lib/python3.8/site-packages/promise/promise.py", line 489, in _resolve_from_executor
executor(resolve, reject)
File "/Users/blei/myproject/venv/lib/python3.8/site-packages/promise/promise.py", line 756, in executor
return resolve(f(*args, **kwargs))
File "/Users/blei/myproject/venv/lib/python3.8/site-packages/graphql/execution/middleware.py", line 75, in make_it_promise
return next(*args, **kwargs)
File "/usr/local/Cellar/python@3.8/3.8.5/Frameworks/Python.framework/Versions/3.8/lib/python3.8/contextlib.py", line 75, in inner
return func(*args, **kwds)
File "/Users/blei/myproject/my_app/graphql.py", line 14, in wrapper_decorator
return func(*args, **kwargs)
File "/Users/blei/myproject/my_app/graphql.py", line 310, in mutate
raise MyAppError('Something')
graphql.error.located_error.GraphQLLocatedError: Something

```

Which seems like it would take up a LOT of disk space if someone were malicious + spammed the same endpoint many times and thus taking up all the disk space on my server.

**Describe the solution you'd like**
I would like the ability to mute exceptions (or specifically, stacktraces) coming from certain exceptions.

**Describe alternatives you've considered**
I've tried adding in my own `errors` field it seems like Graphene just mutes it.

**Additional context**
I can alternatively just create an `error` field or something, but then in the frontend I have to write in logic to handle the `error`/et. al and the `errors` field.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.