This repository was archived by the owner on Sep 5, 2025. It is now read-only.
examples(latency): Add example to calculate client and server latency. #50
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is for CLOUD-260.
This adds an example to get the client-side and the server-side latency of a query.
The important bit is the following snippet:
dgraph-js-http/examples/latency/index-async-await.js
Lines 112 to 115 in 88ffe94
Client-side latency is calculated using
console.timeandconsole.timeEndaround a query call to capture the client-side latency.Server-side latency is calculated by Dgraph itself. This example prints it out from the query response
res.extensions.server_latency.Example command and output:
$ node index-async-await.js --addr https://$MY_DGRAPH_CLOUD_ENDPOINT --api-key $MY_API_KEY --drop-all Created person named "Alice" with uid = 0xbd All created nodes (map from blank node names to uids): blank-0 => 0xbd dg.3043386991.125 => 0xbe dg.3043386991.126 => 0xbf dg.3043386991.127 => 0xc0 Query: query all($a: string) { all(func: eq(name, $a)) { uid name age married loc dob friend { name age } school { name } } } Vars: { '$a': 'Alice' } Query client latency: 39.371ms Query server latency: {"parsing_ns":299313,"processing_ns":1606551,"encoding_ns":361067,"assign_timestamp_ns":1389885,"total_ns":3770262} Number of people named "Alice": 1 { uid: '0xbd', name: 'Alice', age: 26, married: true, loc: { type: 'Point', coordinates: [ 1.1, 2 ] }, dob: '1980-02-02T07:00:00Z', friend: [ { name: 'Bob', age: 24 }, { name: 'Charlie', age: 29 } ], school: [ { name: 'Crown Public School' } ] } DONE!The following flags are available in this example:
--addr: The Dgraph address. Can be a Dgraph Cloud endpoint following the instructions: https://github.com/dgraph-io/dgraph-js-http#create-a-client-for-dgraph-cloud-endpoint. Defaults tohttp://localhost:8080.--api-key: The Dgraph Cloud API Key. Required if the--addris a Dgraph Cloud endpoint.--drop-all: Call DropAll on Dgraph before loading the data for this example.This change is