Ask a Question

More about Dgraph Alpha

Dgraph Alpha provides several HTTP endpoints for administrators, as follows:

  • /health?all returns information about the health of all the servers in the cluster.
  • /admin/shutdown initiates a proper shutdown of the Alpha.
  • /admin/export initiates a data export. The exported data will be encrypted if the alpha instance was configured with an encryption key file.

By default the Alpha listens on localhost for admin actions (the loopback address only accessible from the same machine). The --bindall=true option binds to 0.0.0.0 and thus allows external connections.

Tip Set max file descriptors to a high value like 10000 if you are going to load a lot of data.

Querying Health

You can query the /admin graphql endpoint with a query like the one below to get a JSON consisting of basic information about health of all the servers in the cluster.

query {
  health {
    instance
    address
    version
    status
    lastEcho
    group
    uptime
    ongoing
    indexing
  }
}

Here’s an example of JSON returned from the above query:

{
  "data": {
    "health": [
      {
        "instance": "zero",
        "address": "localhost:5080",
        "version": "v2.0.0-rc1",
        "status": "healthy",
        "lastEcho": 1582827418,
        "group": "0",
        "uptime": 1504
      },
      {
        "instance": "alpha",
        "address": "localhost:7080",
        "version": "v2.0.0-rc1",
        "status": "healthy",
        "lastEcho": 1582827418,
        "group": "1",
        "uptime": 1505,
        "ongoing": ["opIndexing"],
        "indexing": ["name", "age"]
      }
    ]
  }
}
  • instance: Name of the instance. Either alpha or zero.
  • status: Health status of the instance. Either healthy or unhealthy.
  • version: Version of Dgraph running the Alpha or Zero server.
  • uptime: Time in nanoseconds since the Alpha or Zero server is up and running.
  • address: IP_ADDRESS:PORT of the instance.
  • group: Group assigned based on the replication factor. Read more here.
  • lastEcho: Last time, in Unix epoch, when the instance was contacted by another Alpha or Zero server.
  • ongoing: List of ongoing operations in the background.
  • indexing: List of predicates for which indexes are built in the background. Read more here.

The same information (except ongoing and indexing) is available from the /health and /health?all endpoints of Alpha server.