@talabes/apollo-prometheus-plugin
TypeScript icon, indicating that this package has built-in type declarations

3.0.0 • Public • Published

Apollo Prometheus Plugin

Fork with support for latest prom-client versions.

Install

npm install @talabes/apollo-prometheus-plugin

yarn add @talabes/apollo-prometheus-plugin

Usage

import { ApolloServer, gql } from 'apollo-server-express';
import { prometheusPlugin } from 'apollo-prometheus-plugin';
import { Registry } from 'prom-client';
import { prometheusPlugin } from '@talabes/apollo-prometheus-plugin';

const register = new Registry();

const app = express();

app.get('/metrics', (_, res) => res.send(register.metrics()));

const server = new ApolloServer({
  typeDefs,
  resolvers,
  plugins: [prometheusPlugin(register, { enableNodeMetrics: true })],
});

server.applyMiddleware({ app, path: '/' });
app.listen({ port: 8080 }, () => {
  console.log('Listening');
});

Available metrics and labels

metric type labels
errors_encountered Counter operationName
operation
error
requests_resolved Counter operationName
operation
attributes_requested Counter fieldName
parentType
resolver_time Histogram fieldName
parentType
returnType
total_request_time Histogram operationName
operation

Package Sidebar

Install

npm i @talabes/apollo-prometheus-plugin

Weekly Downloads

193

Version

3.0.0

License

MIT

Unpacked Size

343 kB

Total Files

25

Last publish

Collaborators

  • talabes