Fix: Throw errors on specific graphql error messages
Indexer-service presently does not validate the responses from graph-node and forwards them directly to the gateways. The gateway will run its own validation and may find errors in the response and consider the query response incorrect. These conditions are not visible to indexer operator.
This PR logs at the WARN level graph-node responses that contain errors messages. If one of these messages contain one of the throwableErrors defined, a throw happens, which will ensure that the failed query will be logged at a higher level, and reported in the monitoring metrics.
To avoid putting too much strain on the CPU and affecting the performance, only small graphql responses are parsed and analyzed, assuming that larger responses indicate a successful query.
fixes #629