graphql-core-legacy
graphql-core-legacy copied to clipboard
Exceptions in subscriptions is not logging
Hello!
I've just found that exceptions in subscriptions are not logging, but the message of an exceptions returns to client.
class OrderBookSubscription(graphene.ObjectType):
order_book = graphene.Field(
OrderBook,
pair_id=graphene.Int(required=True)
)
@classmethod
async def resolve_order_book(cls, root, info, pair_id):
listener = info.context['not exists key']
Request:
{"id":"3","type":"start","payload":{"variables":{"pairId":11},"extensions":{},"operationName":"OrderBookWS","query":"subscription OrderBookWS($pairId: Int!) {\n orderBook(pairId: $pairId) {\n buy {\n price\n volume\n share\n __typename\n }\n sell {\n price\n volume\n share\n __typename\n }\n spread\n __typename\n }\n}\n"}}
Response:
{"id": "3", "type": "data", "payload": {"data": {"orderBook": null}, "errors": [{"message": "'not exists key'"}]}}
{"id": "3", "type": "complete"}
Logs:
======== Running on http://0.0.0.0:8080 ========
(Press CTRL+C to quit)
2020-07-08 12:06:15,070 - Rx - DEBUG - CurrentThreadScheduler.schedule(state=None)
2020-07-08 12:06:15,072 - Rx - DEBUG - CurrentThreadScheduler.schedule(state=None)
2020-07-08 12:06:15,072 - Rx - DEBUG - CurrentThreadScheduler.schedule(state=None)
Also i've found exception handler, in which need to log the exception.
https://github.com/graphql-python/graphql-core-legacy/blob/master/graphql/execution/executors/asyncio_utils.py#L28
@Cito could you add this as we also need that thing to be fixed?
@syrusakbary @jhgg @dittos