A backend library to log GraphQL query data to Gateway developer portal
npm install gate-logger
This package intrefaces with the GraphQLGate rate-limiting package to log query data for visualization in the Gateway developer portal
1. Signup/login to the Gateway developer portal.
2. Create a new project to recieve a project ID and API key.
3. Import and configure the GraphQLGate rate-limiting package
Install the package
```
npm i gate-logger
Import the package and add the logging middleware to the Express middleware chain BEFORE the GraphQLGate middleware.
ERRORS WILL BE THROWN if the logger is added after the limiter
Copy the project ID and the API key from your project on the Gateway developer portal and include them as middleware arguments.
`javascript
// import package
import gateLogger from 'gate-logger';
import { expressGraphQLRateLimiter } from 'graphql-limiter';
/**
* Import other dependencies
/
// Add the logger middleware into your GraphQL middleware chain
app.use('gql', gateLogger(/ PROJECT ID /, / API KEY / );
//Add the rate limiting middleware
app.use(
'gql',
expressGraphQLRateLimiter(schemaObject, {
rateLimiter: {
type: 'TOKEN_BUCKET',
refillRate: 10,
capacity: 100,
},
}) /* add GraphQL server here /
);
``
And that's it! The logger will now send all query rate-limiting data, blocked or allowed, for you to view in the Gateway developer portal!