Need help with PostQL?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

oslabs-beta
190 Stars 4 Forks 304 Commits 24 Opened issues

Description

Web app to visualize your GraphQL metrics and provide historical analytics

Services available

!
?

Need anything else?

Contributors list

PostQL

Build Status

PostQL is a web application that specializes in providing metrics for your GraphQL endpoint and then utilizing that data further to provide detailed, historic analytical data. We help you implement structured automatic testing on your GraphQL endpoint as well as giving you all the data you need to make your application more performant.

Try it live on our website: https://postql.io

How to use:

  1. After logging in or registering, you'll be brought to a GraphQL Playground page. You can enter in your specific GraphQL endpoint URL to begin writing queries.

For any valid query written, Playground will display detailed resolver data on the specific timings of each relevant subquery. These metrics are then logged for future use.

Note: for metrics to appear, your GraphQL implementation will need to have Apollo tracing enabled.

  1. Click on the

    Analytics
    tab on the top. This screen will show you all previous queries you've run organized by the last runtime. The searchbar gives you a quick way to navigate through your queries.
  2. Click on

    More Details
    to see all the details about every time you've ran this particular query.

4. On this page, you'll see time stamps for every query runtime along with total duration. This lets you see how well you've optimized this query over time.

5. Click on

Resolver Breakdown
to see a Gantt Chart showing time in nanoseconds for each subresolver request.

Upcoming functionality

  1. Automated testing: PostQL has the functionality of automatically sending a query that includes all non-parameterized query types. This will populate the

    Analytics
    page with all the relevant information to see the performance of your GraphQL endpoint at a glance. Coming soon.
  2. Automated querying for parameterized queries. These query types will be first displayed to the user in our GUI so they can enter in a valid parameter.

  3. CRUD functionality test: PostQL will ask what order your mutations should run in order to test full CRUD functionality. Any necessary parameters will be requested from the user.

Installation

To run this locally, pull down from this repo and you can run in development mode.

npm install
  1. After installing dependencies, make sure Docker is running.
  2. For the local server to work, you'll need your own .env file and plug in the following variables:
USER_DATABASE="PostgreSQL URI"
JWT_SECRET="JWT secret"
LOGS_DATABASE="MongoDB URI"
  1. Project will run on your localhost/Docker IP.

Note: testing will automatically install an instance of MongoDB for mock DB testing purposes.

Credits

Jason H. @jason-heinowitz, Lisa H.@hjjinnie, David Z. @davidzhang8828, Mario D.@mariodandrea, Joshua P.@paganjoshua

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.