Performance monitoring Lighthouse with GraphQL Hive.

Overview

Lighthouse GraphQL Hive

Latest Version Software License Build Status Total Downloads

GraphQL Hive can measure and collect data against all your GraphQL operations and generate analytics on them.

This package aims to integrate GraphQL Hive with Lighthouse, a GraphQL server for Laravel.

Installation

composer require stayallive/lighthouse-graphql-hive

Add the following snippet to your config/services.php file:

    'graphqlhive' => [
        'enabled'   => env('GRAPHQL_HIVE_ENABLED', false),
        'token'     => env('GRAPHQL_HIVE_TOKEN'),
        'submitter' => env('GRAPHQL_HIVE_SUBMITTER'),
        'queue'     => env('GRAPHQL_HIVE_QUEUE'),
    ],

In your .env configure at least the following:

GRAPHQL_HIVE_ENABLED=true
GRAPHQL_HIVE_TOKEN=<your GraphQL Hive token>

Read more about how to obtain a GraphQL Hive token here.

Submitters

A submitter is the code that runs to aggregate and/or send the operation data collected to the GraphQL Hive API.

There are 2 submitters currently supported, we default to using the Queue submitter if none is configured:

Queue (default)

GRAPHQL_HIVE_SUBMITTER=Stayallive\Lighthouse\GraphQLHive\Submitter\Queue\Submitter

This submitter will push every operation to a queued job, the job will send every operation to GraphQL Hive.

You can configure the queue used to dispatch the jobs too by setting the GRAPHQL_HIVE_QUEUE environment variable to the name of the queue.

Note: On high volumes this might cause issues with many queued jobs being pushed and being rate limited by the GraphQL Hive server.

Redis

GRAPHQL_HIVE_SUBMITTER=Stayallive\Lighthouse\GraphQLHive\Submitter\Redis\Submitter

This submitter will push every operation to a Redis list, a scheduled command will run every minut to batch send the operation to GraphQL Hive.

Note: This submitter requires a configured Redis connection.

Usage

You should only have to install this package to benefit, unless you have disabled package auto discovery, in that case you will need to add the service provider to your config/app.php manually.

You can optionally add the graphql-client header to your requests in the format name:version (like: my-app:1.2.3) to see client stats in the GraphQL Hive dashboard. You can also opt to set x-graphql-client-name and x-graphql-client-version headers instead.

Security Vulnerabilities

If you discover a security vulnerability within this package, please send an e-mail to Alex Bouma at [email protected]. All security vulnerabilities will be swiftly addressed.

License

This package is open-sourced software licensed under the MIT license.

You might also like...
🍞🧑‍🍳 An on-the-fly GraphQL Schema generator from Eloquent models for Laravel.

An on-the-fly GraphQL Schema generator from Eloquent models for Laravel. Installation Quickstart Model schemas Installation This package requires PHP

Test your PHP GraphQL server in style, with Pest!

Pest GraphQL Plugin Test your GraphQL API in style, with Pest! Installation Simply install through Composer! composer require --dev miniaturebase/pest

GraphQL implementation with power of Laravel

Laravel GraphQL Use Facebook GraphQL with Laravel 5.2 =. It is based on the PHP implementation here. You can find more information about GraphQL in t

Add Price Including tax for Magento's "cart" GraphQl query

Comwrap_GraphQlCartPrices Add Price Including tax for Magento's "cart" GraphQl query Query will looks like following: items { id __typenam

GraPHPinator ⚡ 🌐 ⚡ Easy-to-use & Fast GraphQL server implementation for PHP

Easy-to-use & Fast GraphQL server implementation for modern PHP. Includes features from latest draft, middleware directives and modules with extra functionality.

A Statamic Pro addon that provides alternative GraphQL queries for collections, entries and global sets.

Statamic Enhanced GraphQL A Statamic CMS GraphQL Addon that provides alternative GraphQL queries for collections, entries and global sets. ⚠️ This is

Place where I record all knowledge gained for GraphQL from Laracasts & other tutorials.

Knowledge from Laracasts series: https://laracasts.com/series/graphql-with-laravel-and-vue What is GraphQL It is a query language for your API, and it

Pure PHP realization of GraphQL protocol
Pure PHP realization of GraphQL protocol

Looking for Maintainers! Unfortunatelly, we cannot longer support this package and are looking for someone to take the ownership. Currently Only PRs w

A PHP port of GraphQL reference implementation

graphql-php This is a PHP implementation of the GraphQL specification based on the reference implementation in JavaScript. Installation Via composer:

Releases(v1.0.0)
Owner
Alex Bouma
PHP artisan, full stack dev and server wrangler | Building chief.app @irongate | Laravel / PHP SDK dev @getsentry
Alex Bouma
Syntax to query GraphQL through URL params, which grants a GraphQL API the capability to be cached on the server.

Field Query Syntax to query GraphQL through URL params, which grants a GraphQL API the capability to be cached on the server. Install Via Composer com

PoP 4 Jan 7, 2022
Monorepo of the PoP project, including: a server-side component model in PHP, a GraphQL server, a GraphQL API plugin for WordPress, and a website builder

PoP PoP is a monorepo containing several projects. The GraphQL API for WordPress plugin GraphQL API for WordPress is a forward-looking and powerful Gr

Leonardo Losoviz 265 Jan 7, 2023
Symfony Health Check Bundle Monitoring Project Status

Symfony Health Check Bundle Version Build Status Code Coverage master develop Installation Step 1: Download the Bundle Open a command console, enter y

MacPaw Inc. 27 Jul 7, 2022
Create REST and GraphQL APIs, scaffold Jamstack webapps, stream changes in real-time.

API Platform is a next-generation web framework designed to easily create API-first projects without compromising extensibility and flexibility: Desig

API Platform 7.7k Jan 7, 2023
This bundle provides tools to build a complete GraphQL server in your Symfony App.

OverblogGraphQLBundle This Symfony bundle provides integration of GraphQL using webonyx/graphql-php and GraphQL Relay. It also supports: batching with

Webedia - Overblog 720 Dec 25, 2022
Pure PHP implementation of GraphQL Server – Symfony Bundle

Symfony GraphQl Bundle This is a bundle based on the pure PHP GraphQL Server implementation This bundle provides you with: Full compatibility with the

null 283 Dec 15, 2022
GraphQL Bundle for Symfony 2.

Symfony 2 GraphQl Bundle Use Facebook GraphQL with Symfony 2. This library port laravel-graphql. It is based on the PHP implementation here. Installat

Sergey Varibrus 35 Nov 17, 2022
Laravel wrapper for Facebook's GraphQL

Laravel GraphQL Use Facebook's GraphQL with Laravel 6.0+. It is based on the PHP port of GraphQL reference implementation. You can find more informati

Mikk Mihkel Nurges 1.9k Dec 31, 2022
A framework for serving GraphQL from Laravel

Lighthouse A framework for serving GraphQL from Laravel Lighthouse is a GraphQL framework that integrates with your Laravel application. It takes the

NuWave Commerce 3.1k Jan 6, 2023
EXPERIMENTAL plugin extending WPGraphQL to support querying (Gutenberg) Blocks as data, using Server Side Block registries to map Blocks to the GraphQL Schema.

WPGraphQL Block Editor This is an experimental plugin to work toward compatiblity between the WordPress Gutenberg Block Editor and WPGraphQL, based on

WPGraphQL 29 Nov 18, 2022