ArangoDB v3.10 reached End of Life (EOL) and is no longer supported.

This documentation is outdated. Please see the most recent stable version.

Statistics

Server statistics let you monitor the system but they are superseded by the more detailed server metrics

Get the statistics

GET /_admin/statistics
This endpoint should no longer be used. It is deprecated from version 3.8.0 on. Use /_admin/metrics/v2 instead, which provides the data exposed by this API and a lot more.

Returns the statistics information. The returned object contains the statistics figures grouped together according to the description returned by /_admin/statistics-description. For instance, to access a figure userTime from the group system, you first select the sub-object describing the group stored in system and in that sub-object the value for userTime is stored in the attribute of the same name.

In case of a distribution, the returned object contains the total count in count and the distribution list in counts. The sum (or total) of the individual values is returned in sum.

The transaction statistics show the local started, committed and aborted transactions as well as intermediate commits done for the server queried. The intermediate commit count will only take non zero values for the RocksDB storage engine. Coordinators do almost no local transactions themselves in their local databases, therefor cluster transactions (transactions started on a Coordinator that require DB-Servers to finish before the transactions is committed cluster wide) are just added to their local statistics. This means that the statistics you would see for a single server is roughly what you can expect in a cluster setup using a single Coordinator querying this Coordinator. Just with the difference that cluster transactions have no notion of intermediate commits and will not increase the value.

Responses
  • Statistics were returned successfully.

      Response Body application/json object
    • information about the connected clients and their resource usage

      • number of bytes received from the clients

        • number of values summarized

        • array containing the values

        • summarized value of all counts

      • number of bytes sent to the clients

        • number of values summarized

        • array containing the values

        • summarized value of all counts

      • total connection times

        • number of values summarized

        • array containing the values

        • summarized value of all counts

      • the number of open http connections

      • IO Time

        • number of values summarized

        • array containing the values

        • summarized value of all counts

      • the time requests were queued waiting for processing

        • number of values summarized

        • array containing the values

        • summarized value of all counts

      • the request times

        • number of values summarized

        • array containing the values

        • summarized value of all counts

      • the system time

        • number of values summarized

        • array containing the values

        • summarized value of all counts

    • the HTTP status code - 200 in this case

    • true if the server has the statistics module enabled. If not, don’t expect any values.

    • boolean flag to indicate whether an error occurred (false in this case)

    • a descriptive error message

    • the numbers of requests by Verb

      • total number of asynchronous http requests

      • No of requests using the DELETE-verb

      • No of requests using the GET-verb

      • No of requests using the HEAD-verb

      • No of requests using the OPTIONS-verb

      • No of requests using the none of the above identified verbs

      • No of requests using the PATCH-verb

      • No of requests using the POST-verb

      • No of requests using the PUT-verb

      • total number of http requests

    • statistics of the server

      • available physical memory on the server

      • Statistics about the server worker threads (excluding V8 specific or jemalloc specific threads and system threads)

        • The number of currently busy worker threads

        • The number of jobs queued up waiting for worker threads becoming available

        • The number of spawned worker threads

      • Statistics about transactions

        • the number of aborted transactions

        • the number of committed transactions

        • the number of intermediate commits done

        • the number of started transactions

      • time the server is up and running

      • Statistics about the V8 javascript contexts

        • the number of currently spawned V8 contexts

        • the number of currently active V8 contexts

        • the number of contexts that were previously used, and should now be garbage collected before being re-used

        • the number of V8 contexts that are free to use

        • the maximum number of V8 concurrent contexts we may spawn as configured by --javascript.v8-contexts

        • a list of V8 memory / garbage collection watermarks; Refreshed on every garbage collection run; Preserves min/max memory used at that time for 10 seconds

          • ID of the context this set of memory statistics is from

          • how many times was the garbage collection run in these 10 seconds

          • High watermark of all garbage collection runs in 10 seconds

          • Low watermark of all garbage collection runs in these 10 seconds

          • the timestamp where the 10 seconds interval started

        • the minimum number of V8 contexts that are spawned as configured by --javascript.v8-contexts-minimum

    • metrics gathered from the system about this process; may depend on the host OS

      • pagefaults

      • pagefaults

      • the number of threads in the server

      • RSS of process

      • RSS of process in %

      • the system CPU time used by the server process

      • the user CPU time used by the server process

      • VSS of the process

    • the current server timestamp

  • Statistics are disabled on the instance.

Examples

curl --header 'accept: application/json' --dump - http://localhost:8529/_admin/statistics
Show output

Get the statistics description

GET /_admin/statistics-description
This endpoint should no longer be used. It is deprecated from version 3.8.0 on. Use /_admin/metrics/v2 instead, which provides the data exposed by the statistics API and a lot more.

Returns a description of the statistics returned by /_admin/statistics. The returned objects contains an array of statistics groups in the attribute groups and an array of statistics figures in the attribute figures.

A statistics group is described by

  • group: The identifier of the group.
  • name: The name of the group.
  • description: A description of the group.

A statistics figure is described by

  • group: The identifier of the group to which this figure belongs.
  • identifier: The identifier of the figure. It is unique within the group.
  • name: The name of the figure.
  • description: A description of the figure.
  • type: Either current, accumulated, or distribution.
  • cuts: The distribution vector.
  • units: Units in which the figure is measured.
Responses
  • Description was returned successfully.

      Response Body application/json object
    • the HTTP status code

    • the error, false in this case

    • A statistics figure

      • The distribution vector.

      • A description of the figure.

      • The identifier of the group to which this figure belongs.

      • The identifier of the figure. It is unique within the group.

      • The name of the figure.

      • Either current, accumulated, or distribution.

      • Units in which the figure is measured.

    • A statistics group

      • A description of the group.

      • The identifier of the group.

      • The name of the group.

Examples

curl --header 'accept: application/json' --dump - http://localhost:8529/_admin/statistics-description
Show output