0.4.2 • Published 3 years ago

@npire/apollo-metrics-agent v0.4.2

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

@npire/apollo-metrics-agent

The GraphQL metrics agent for npire.io The plugin is needed to give insights about your GraphQL server.

Installation

yarn add @npire/apollo-metrics-agent

or

npm install @npire/apollo-metrics-agent

Getting started

Now you only have to add the @npire/apollo-metrics-agent to your Apollo server.

import NpireMetricsAgent from "@npire/apollo-metrics-agent";

const apolloServer = new ApolloServer({
    context: ({ req, res }) => ({ req, res, redis }),
    plugins: [
        NpireMetricsAgent({
            apiKey: "",
        }),
    ],
});

Configuration

const plugin = NpireMetricsAgent({
    apiKey: "api-key",
}),

Configuration may be passed into the metric-agent function to override specific values. The configuration object and all properties are optional. Except for the apiKey. Thats needed for registering the metrics.

  • apiKey An api key is needed to register the metric information.
  • minimumRetryDelayMs: Minimum back-off for retries. Defaults to 100ms.
  • maxAttempts: Reporting is retried with exponential backoff up to this many times (including the original request). Defaults to 5.
  • rewriteError: By default, all errors get reported to Engine servers. You can specify a a filter function to exclude specific errors from being reported by returning an explicit null, or you can mask certain details of the error by modifying it and returning the modified error.

Schema reporting

Schema reporting enables your GraphQL server to register its latest schema with Npire every time it starts up.

To enable this you need a valid NPIRE_API_KEY and set the NPIRE_REPORT_SCHEMA environment variable to true.

NPIRE_API_KEY=YOUR_API_KEY
NPIRE_REPORT_SCHEMA=true

Now every time your server finishes starting up, it waits a random amount of time between zero and ten seconds before automatically registering its schema