Registry /
http-networking / graphql-middleware-error-handler
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslnode 18–226 runs
build_error
glibcnode 18–226 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
errorHandler
✓ import { errorHandler } from 'graphql-middleware-error-handler'
✗ import errorHandler from 'graphql-middleware-error-handler'
The package exports a named function, not a default export. Use named import.
ErrorHandlerOptions
✓ import { ErrorHandlerOptions } from 'graphql-middleware-error-handler'
Type import available if using TypeScript. Useful for type-checking the options object.
ErrorMiddlewareFn
✓ import type { ErrorMiddlewareFn } from 'graphql-middleware-error-handler'
✗ import { ErrorMiddlewareFn } from 'graphql-middleware-error-handler'
In TypeScript, use 'import type' for the type, as it is not a runtime value.
errorHandler
✓ const { errorHandler } = require('graphql-middleware-error-handler')
✗ const errorHandler = require('graphql-middleware-error-handler')
With CommonJS (require), destructure to get the named export. The package is ESM-first but works with CJS via bundlers.
Sets up a GraphQL server with graphql-yoga and errorHandler middleware that logs errors to console instead of throwing.
import { errorHandler } from 'graphql-middleware-error-handler';
import { GraphQLServer } from 'graphql-yoga';
const typeDefs = `
type Query {
hello: String!
error: String!
}
`;
const resolvers = {
Query: {
hello: () => 'Hello',
error: () => { throw new Error('Unexpected error'); }
}
};
const errorHandlerMiddleware = errorHandler({
onError: (error, context) => {
console.error('Captured error:', error.message);
},
captureReturnedErrors: true,
forwardErrors: false
});
const server = new GraphQLServer({
typeDefs,
resolvers,
middlewares: [errorHandlerMiddleware]
});
server.start(() => console.log('Server running'));
Errors
Common errors & fixes
TypeError: (0 , graphql_middleware_error_handler.errorHandler) is not a function
Importing the package incorrectly as a default export instead of a named export.
fixUse named import: import { errorHandler } from 'graphql-middleware-error-handler' errorHandler is not a function (when using require)
Using require('...') without destructuring the named export.
fixUse const { errorHandler } = require('graphql-middleware-error-handler') Cannot find module 'graphql-middleware'
Missing peer dependency 'graphql-middleware'. The package does not install it automatically.
fixRun: npm install graphql-middleware
The 'onError' option is required but was not provided.
Creating the errorHandler without passing the required onError callback.
fixPass an object with an onError property: errorHandler({ onError: (err, ctx) => { /* ... */ } }) Audit
Dependencies
graphql-middlewarerequiredPeer dependency required to use the middleware with graphql-yoga or other compatible servers.