UNPKG

@graphql-mesh/serve-runtime

Version:
29 lines (28 loc) 1.08 kB
import { isAsyncIterable } from 'graphql-yoga'; import { defaultPrintFn } from '@graphql-mesh/transport-common'; export function useSubgraphExecuteDebug(opts) { return { onSubgraphExecute({ executionRequest, logger = opts.logger }) { logger.debug(`subgraph-execute`, () => ({ query: defaultPrintFn(executionRequest.document), variables: executionRequest.variables, })); return function onSubgraphExecuteDone({ result }) { if (isAsyncIterable(result)) { return { onNext(value) { logger.debug(`subgraph-response-next`, value); }, onEnd() { logger.debug(`subgraph-response-end`); }, }; } logger.debug(`subgraph-response`, { data: result.data, errors: result.errors, }); }; }, }; }