diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index 95d824c..e261163 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -38,6 +38,6 @@ jobs: - name: Test coverage run: | - vendor/bin/phpunit --coverage-clover clover.xml --whitelist src + composer test:coverage echo "Upload results to Scrutinizer-ci" vendor/bin/ocular code-coverage:upload --format=php-clover clover.xml diff --git a/.github/workflows/fix-code-style.yml b/.github/workflows/fix-code-style.yml index 1c27d16..c27c127 100644 --- a/.github/workflows/fix-code-style.yml +++ b/.github/workflows/fix-code-style.yml @@ -38,7 +38,7 @@ jobs: - name: Fix style if: ${{ always() }} run: | - "${GITHUB_WORKSPACE}/vendor/bin/pint" + composer style - name: Commit changes uses: stefanzweifel/git-auto-commit-action@v5 diff --git a/.github/workflows/quality-assurance.yml b/.github/workflows/quality-assurance.yml index de1146b..9513fea 100644 --- a/.github/workflows/quality-assurance.yml +++ b/.github/workflows/quality-assurance.yml @@ -36,5 +36,4 @@ jobs: - name: Run all QA tests if: ${{ always() }} run: | - chmod +x "${GITHUB_WORKSPACE}/bin/qa.sh" - "${GITHUB_WORKSPACE}/bin/qa.sh" + composer analyse diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index 60c1d47..3e88eb8 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -12,7 +12,7 @@ jobs: fail-fast: true matrix: os: [ubuntu-latest] - arangodb: ["3.10", 3.11] + arangodb: ["3.10", 3.11, 3.12] php: [8.1, 8.2, 8.3] stability: [prefer-stable] diff --git a/.gitignore b/.gitignore index 5f82cfd..7021d1d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,11 +1,13 @@ +.env +.env.backup .idea .php_cs .php_cs.cache .phpunit.result.cache .vscode -.env -.env.backup +clover.xml composer.lock +ray.php /build /coverage /vendor diff --git a/README.md b/README.md index fbc4e02..fb02aa3 100644 --- a/README.md +++ b/README.md @@ -70,6 +70,12 @@ The admin manager manages administrative functions and information retrieval for $client->admin()->version(); ``` +### Monitor manager +The monitor manager manages monitoring functions the server/cluster. +``` +$client->monitor()->getMetrics(); +``` + ### Schema manager The schema manager manages all schema related operations. ``` @@ -86,7 +92,8 @@ $client->transactions()->begin(['write' => ['users', 'teams']]); 1) [ArangoDB PHP client](docs/arangodb-client.md) 2) [AQL query statements](docs/statements.md) 3) [Admin manager](docs/admin-manager.md) -4) Schema manager +4) [Monitor manager](docs/monitor-manager.md) +5Schema manager 1) [Database schema](docs/schema-databases.md) 2) [User schema](docs/schema-users.md) 3) [Collection schema](docs/schema-collections.md) @@ -94,7 +101,7 @@ $client->transactions()->begin(['write' => ['users', 'teams']]); 5) [Graph schema](docs/schema-graphs.md) 6) [View schema](docs/schema-views.md) 7) [Analyzer schema](docs/schema-analyzers.md) -5) [Transaction manager](docs/transaction-manager.md) +6[Transaction manager](docs/transaction-manager.md) ## Related packages * [AQL query builder](https://github.com/LaravelFreelancerNL/fluentaql) diff --git a/bin/qa.sh b/bin/qa.sh deleted file mode 100755 index dd4fde6..0000000 --- a/bin/qa.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/usr/bin/env bash -printf "\nRun PHPMD\n" -# disabled for now @see: https://github.com/pdepend/pdepend/issues/695 -#./vendor/bin/phpmd src/ text phpmd-ruleset.xml - -printf "\nRun PHPStan\n" -composer analyse \ No newline at end of file diff --git a/composer.json b/composer.json index f9c54bc..c9f6469 100644 --- a/composer.json +++ b/composer.json @@ -21,7 +21,8 @@ "ext-json": "*", "guzzlehttp/guzzle": "^7.3", "halaxa/json-machine": "^1.0", - "spatie/data-transfer-object": "^3.9" + "spatie/data-transfer-object": "^3.9", + "spatie/ray": "^1.41" }, "require-dev": { "laravel/pint": "^1.2.1", @@ -45,7 +46,7 @@ "scripts": { "analyse": "vendor/bin/phpstan analyse", "test": "vendor/bin/phpunit", - "test-coverage": "vendor/bin/phpunit --coverage", + "test:coverage": "vendor/bin/phpunit --coverage-clover clover.xml --whitelist src", "style": "vendor/bin/pint" }, "config": { diff --git a/docs/arangodb-client.md b/docs/arangodb-client.md index e738406..fe1e293 100644 --- a/docs/arangodb-client.md +++ b/docs/arangodb-client.md @@ -13,6 +13,7 @@ Upon creation, you can alter the default configuration of the client. The follow * username = null * password = null * database = '_system' +* responseSizeDecoderSwitch = 1 * 1024 * 1024 ``` $config = [ @@ -25,6 +26,15 @@ $config = [ $arangoClient = new ArangoClient($config); ``` +### Speed vs response size +JSON response decoding is normally done by the default json_decode method. This method +is optimized for speed and can take a large amount of memory; up to ~ 20x of the JSON size. + +Therefor we use halaxa/json-machine to stream decode for responses larger than 1MB. +You can alter this cutoff by setting the `responseSizeDecoderSwitch` to a different size in **Bytes**. + +This removed any memory issues at the cost of speed. + ### Support Guzzle configuration In addition to the above mentioned options you can use the following Guzzle 7 specific options: * [version](https://docs.guzzlephp.org/en/stable/request-options.html#version) diff --git a/docs/monitor-manager.md b/docs/monitor-manager.md new file mode 100644 index 0000000..db22c57 --- /dev/null +++ b/docs/monitor-manager.md @@ -0,0 +1,13 @@ +# Monitor manager + +Manages monitoring functions for the server/cluster. + +## Functions +The monitor manager supports the following functions: + +### getMetrics(): Metrics +Get Prometheus metrics of the server + +``` +$arangoClient->monitor()->getMetrics(); +``` \ No newline at end of file diff --git a/phpstan.neon.dist b/phpstan.neon.dist index 1ff472c..73ac76e 100644 --- a/phpstan.neon.dist +++ b/phpstan.neon.dist @@ -2,3 +2,5 @@ parameters: level: 8 paths: - src + universalObjectCratesClasses: + - ArangoClient\Prometheus\Metrics \ No newline at end of file diff --git a/src/Admin/AdminManager.php b/src/Admin/AdminManager.php index 1967cf1..fd392d6 100644 --- a/src/Admin/AdminManager.php +++ b/src/Admin/AdminManager.php @@ -27,7 +27,7 @@ public function getVersion(bool $details = false): stdClass 'query' => [ 'details' => $details, ], - ] + ], ); } diff --git a/src/ArangoClient.php b/src/ArangoClient.php index 26f8c36..9f69e35 100644 --- a/src/ArangoClient.php +++ b/src/ArangoClient.php @@ -25,6 +25,7 @@ */ class ArangoClient { + use HandlesResponses; use HandlesJson; use HasManagers; use SupportsTransactions; @@ -88,7 +89,11 @@ public function request(string $method, string $uri, array|HttpRequestOptions $o $this->handleGuzzleException($e); } - return $this->cleanupResponse($response); + if ($response !== null) { + return $this->cleanupResponse($response); + } + + return new stdClass(); } /** @@ -116,7 +121,7 @@ public function debugRequest( string $method, string $uri, array $options = [], - ?string $database = null + ?string $database = null, ): ResponseInterface { $uri = $this->prependDatabaseToUri($uri, $database); $options['debug'] = true; @@ -142,23 +147,31 @@ protected function handleGuzzleException(Throwable $e): void $code = $e->getCode(); if ($e instanceof RequestException && $e->hasResponse()) { - $decodedResponse = $this->decodeResponse($e->getResponse()); - $message = (string) $decodedResponse->errorMessage; - $code = (int) $decodedResponse->code; + $response = $e->getResponse(); + if ($response !== null) { + $decodedResponse = $this->decodeResponse($response); + } + if (isset($decodedResponse->errorMessage)) { + $message = (string) $decodedResponse->errorMessage; + } + + if (isset($decodedResponse->code)) { + $code = (int) $decodedResponse->code; + } } throw( - new ArangoException( - $code . ' - ' . $message, - $code - ) + new ArangoException( + $code . ' - ' . $message, + $code, + ) ); } /** * @SuppressWarnings(PHPMD.StaticAccess) */ - protected function cleanupResponse(?ResponseInterface $response): stdClass + protected function cleanupResponse(ResponseInterface $response): stdClass { $response = $this->decodeResponse($response); unset($response->error); @@ -175,16 +188,19 @@ protected function cleanupResponse(?ResponseInterface $response): stdClass public function prepare( string $query, array $bindVars = [], - array $options = [] + array $options = [], ): Traversable { return new Statement($this, $query, $bindVars, $options); } /** - * @return array + * @return mixed */ - public function getConfig(): array + public function getConfig(string $value = null): mixed { + if ($value) { + return $this->config->$value; + } return $this->config->toArray(); } diff --git a/src/HandlesJson.php b/src/HandlesJson.php index 8200167..65a299f 100644 --- a/src/HandlesJson.php +++ b/src/HandlesJson.php @@ -35,15 +35,18 @@ public function jsonEncode(mixed $data): string /** * @SuppressWarnings(PHPMD.StaticAccess) */ - protected function decodeResponse(?ResponseInterface $response): stdClass + protected function decodeJsonResponse(ResponseInterface $response): stdClass { - $decodedResponse = new stdClass(); - if (!isset($response)) { - return $decodedResponse; + $contentLength = $response->getHeaderLine('Content-Length'); + $sizeSwitch = $this->getConfig('responseSizeDecoderSwitch'); + if ($contentLength < $sizeSwitch) { + return json_decode($response->getBody()->getContents(), false, 512, JSON_THROW_ON_ERROR); } + $decodedResponse = new stdClass(); + $phpStream = StreamWrapper::getResource($response->getBody()); - $decoder = new ExtJsonDecoder(false); + $decoder = new ExtJsonDecoder(true); $decodedStream = Items::fromStream($phpStream, ['decoder' => $decoder]); foreach ($decodedStream as $key => $value) { diff --git a/src/HandlesResponses.php b/src/HandlesResponses.php new file mode 100644 index 0000000..7b6e6e4 --- /dev/null +++ b/src/HandlesResponses.php @@ -0,0 +1,41 @@ +getHeader('Content-type'); + if (is_array($rawContentType) && sizeOf($rawContentType) > 0) { + $contentType = $rawContentType[0]; + } + + return match ($contentType) { + "application/json; charset=utf-8" => $this->decodeJsonResponse($response), + "text/plain; charset=utf-8" => $this->decodeTextResponse($response), + default => (object) $response->getBody()->getContents(), + }; + } + + /** + * @SuppressWarnings(PHPMD.StaticAccess) + */ + protected function decodeTextResponse(ResponseInterface $response): stdClass + { + $prometheus = new Prometheus(); + return $prometheus->parseStream($response); + } +} diff --git a/src/HasManagers.php b/src/HasManagers.php index da10c67..86e4fa1 100644 --- a/src/HasManagers.php +++ b/src/HasManagers.php @@ -5,12 +5,15 @@ namespace ArangoClient; use ArangoClient\Admin\AdminManager; +use ArangoClient\Monitor\MonitorManager; use ArangoClient\Schema\SchemaManager; trait HasManagers { protected ?AdminManager $adminManager = null; + protected ?MonitorManager $monitorManager = null; + protected ?SchemaManager $schemaManager = null; public function admin(): AdminManager @@ -22,6 +25,15 @@ public function admin(): AdminManager return $this->adminManager; } + public function monitor(): MonitorManager + { + if (!(property_exists($this, 'monitorManager') && $this->monitorManager !== null)) { + $this->monitorManager = new MonitorManager($this); + } + + return $this->monitorManager; + } + public function schema(): SchemaManager { if (!(property_exists($this, 'schemaManager') && $this->schemaManager !== null)) { diff --git a/src/Http/HttpClientConfig.php b/src/Http/HttpClientConfig.php index a6485c2..6197e3f 100644 --- a/src/Http/HttpClientConfig.php +++ b/src/Http/HttpClientConfig.php @@ -37,6 +37,15 @@ class HttpClientConfig extends DataTransferObject public string $database = '_system'; + /** + * Small responses are decoded with json_decode. This is fast but memory intensive. + * Large responses are decoded with Halaxa/json-machine stream decoder. + * $responseSizeDecoderSwitch is the response length cutoff in bytes which determines which decoder is used. + * + * @var int + */ + public int $responseSizeDecoderSwitch = 1 * 1024 * 1024; // Default 1 MB + /** * @return array|string|numeric|bool|null> */ diff --git a/src/Monitor/MonitorManager.php b/src/Monitor/MonitorManager.php new file mode 100644 index 0000000..0ab0f0d --- /dev/null +++ b/src/Monitor/MonitorManager.php @@ -0,0 +1,20 @@ +arangoClient->request('get', $uri); + } +} diff --git a/src/Prometheus/Bucket.php b/src/Prometheus/Bucket.php new file mode 100644 index 0000000..16bc106 --- /dev/null +++ b/src/Prometheus/Bucket.php @@ -0,0 +1,18 @@ +|null $labels + */ + public function __construct( + public int|float|null|string $value, + public array|null $labels, + public int|float|null|string $timestamp, + ) {} +} diff --git a/src/Prometheus/Metric.php b/src/Prometheus/Metric.php new file mode 100644 index 0000000..72a8173 --- /dev/null +++ b/src/Prometheus/Metric.php @@ -0,0 +1,29 @@ +|null $buckets + * @param array|null $labels + */ + public function __construct( + public string $name, + public null|string $type = null, + public null|string $help = null, + public int|float|null $count = null, + public int|float|null $sum = null, + public int|float|null $value = null, + public ?array $buckets = [], + public ?array $labels = [], + ) {} +} diff --git a/src/Prometheus/Metrics.php b/src/Prometheus/Metrics.php new file mode 100644 index 0000000..c7f71d3 --- /dev/null +++ b/src/Prometheus/Metrics.php @@ -0,0 +1,9 @@ +output = new Metrics(); + } + + + public function parseStream(ResponseInterface $from): Metrics + { + $stream = $from->getBody(); + $resource = StreamWrapper::getResource($stream); + + while ($line = stream_get_line($resource, 1000000, "\n")) { + $this->handleLine($line); + } + return $this->output; + } + + public function parseText(string $content): Metrics + { + $fileObject = new \SplFileObject('php://memory', 'r+'); + $fileObject->fwrite($content); + $fileObject->rewind(); + + while ($fileObject->valid()) { + $line = $fileObject->current(); + if (is_string($line)) { + $this->handleLine($line); + } + $fileObject->next(); + } + + return $this->output; + } + + protected function handleLine(string $line): void + { + match (true) { + str_starts_with($line, "# TYPE ") => $this->setType($line), + str_starts_with($line, "# HELP ") => $this->setHelpText($line), + default => $this->setMetric($line), + }; + } + + protected function createMetricIfNew(string $name): void + { + if (!property_exists($this->output, $name)) { + $this->output->$name = new Metric($name); + } + } + + protected function setType(string $line): void + { + $matches = []; + if ( + preg_match( + "/^# TYPE (?'metricName'[a-zA-Z_:][a-zA-Z0-9_:]*) (?'type'counter|gauge|histogram|summary)$/", + $line, + $matches, + ) + ) { + $metricName = $matches['metricName']; + $this->createMetricIfNew($metricName); + + $this->output->$metricName->type = $matches['type']; + } + } + + protected function setHelpText(string $line): void + { + $matches = []; + if ( + preg_match( + "/^# HELP (?'metricName'[a-zA-Z_:][a-zA-Z0-9_:]*) (?'helpText'[\W\w]*)/", + $line, + $matches, + ) + ) { + $metricName = $matches['metricName']; + + $this->createMetricIfNew($metricName); + + $this->output->$metricName->help = $matches['helpText']; + } + } + + protected function setMetric(string $line): void + { + $matches = []; + if ( + preg_match( + "/^(?'rawMetricName'[a-zA-Z_:][a-zA-Z0-9_:]*)(?'rawLabels'{[\W\w]*})? (?'value'[-+.,eE\d]+) ?(?'timestamp'[0-9]+)?$/", + $line, + $matches, + ) + ) { + // The first group contains the metricName and the suffix + [$metricName, $suffix] = $this->extractMetricNameAndSuffix($matches['rawMetricName']); + + $this->createMetricIfNew($metricName); + + // Feed the remaining matches to the suffix dependent parser + match ($suffix) { + "bucket" => $this->setBucket($metricName, $matches), + default => $this->setMetricValues($metricName, $matches, $suffix), + }; + } + } + + /** + * @return string[] + */ + protected function extractMetricNameAndSuffix(string $value): array + { + $nameParticles = explode("_", $value); + $suffix = array_pop($nameParticles); + + if (in_array($suffix, ["bucket", "count", "sum"])) { + $baseName = implode("_", $nameParticles); + return [$baseName, $suffix]; + } + + return [$value, 'value']; + } + + /** + * @param array $matches + */ + protected function setBucket(mixed $metricName, array $matches): void + { + $labels = null; + $timestamp = null; + + $value = is_numeric($matches['value']) ? +$matches['value'] : $matches['value']; + + if (array_key_exists("rawLabels", $matches)) { + $labels = $this->extractLabels((string) $matches['rawLabels']); + } + + if (array_key_exists("timestamp", $matches)) { + $timestamp = is_numeric($matches['timestamp']) ? +$matches['timestamp'] : $matches['timestamp']; + } + + $bucket = new Bucket( + $value, + $labels, + $timestamp, + ); + + $this->output->$metricName->buckets[] = $bucket; + } + + /** + * @param array $matches + */ + protected function setMetricValues(string $metricName, array $matches, string $suffix): void + { + $this->output->$metricName->$suffix = is_numeric($matches['value']) ? +$matches['value'] : $matches['value']; + + $this->setLabels($metricName, $matches); + + $this->setTimestamp($metricName, $matches); + } + + /** + * @param array $matches + */ + protected function setLabels(string $metricName, array $matches): void + { + if (array_key_exists("rawLabels", $matches)) { + $this->output->$metricName->labels = $this->extractLabels($matches['rawLabels']); + } + } + + /** + * @param array $matches + */ + protected function setTimestamp(string $metricName, array $matches): void + { + if (array_key_exists("timestamp", $matches)) { + $this->output->$metricName->timestamp = is_numeric($matches['timestamp']) ? +$matches['timestamp'] : $matches['timestamp']; + } + } + + + /** + * @return array + */ + protected function extractLabels(string $rawLabels): array + { + $labels = []; + $matches = []; + if ( + preg_match_all( + "/(?'label'[a-zA-Z0-9]*)=\"(?'value'[^\"]*)\"/", + $rawLabels, + $matches, + ) + ) { + foreach ($matches['label'] as $key => $label) { + $value = $matches['value'][$key]; + + $labels[(string) $label] = is_numeric($value) ? +$value : $value; + } + } + + return $labels; + } +} diff --git a/src/Schema/ManagesCollections.php b/src/Schema/ManagesCollections.php index e91c393..ea2308c 100644 --- a/src/Schema/ManagesCollections.php +++ b/src/Schema/ManagesCollections.php @@ -31,7 +31,7 @@ public function getCollections(bool $excludeSystemCollections = false): array 'query' => [ 'excludeSystem' => $excludeSystemCollections, ], - ] + ], ); return (array) $results->result; @@ -116,7 +116,7 @@ public function getCollectionStatistics(string $name, bool $details = false): st 'query' => [ 'details' => $details, ], - ] + ], ); } @@ -131,7 +131,7 @@ public function createCollection( string $name, array $config = [], $waitForSyncReplication = null, - $enforceReplicationFactor = null + $enforceReplicationFactor = null, ): stdClass { $options = []; if (isset($waitForSyncReplication)) { @@ -158,7 +158,7 @@ public function createEdgeCollection( string $name, array $config = [], $waitForSyncReplication = null, - $enforceReplicationFactor = null + $enforceReplicationFactor = null, ): stdClass { $config['type'] = 3; diff --git a/src/Schema/ManagesGraphs.php b/src/Schema/ManagesGraphs.php index ba0ba8a..ce090cb 100644 --- a/src/Schema/ManagesGraphs.php +++ b/src/Schema/ManagesGraphs.php @@ -27,7 +27,7 @@ trait ManagesGraphs public function createGraph( string $name, array $config = [], - bool $waitForSync = false + bool $waitForSync = false, ): stdClass { $options = []; $options['query']['waitForSync'] = (int) $waitForSync; @@ -50,7 +50,7 @@ public function getGraphs(): array { $results = $this->arangoClient->request( 'get', - '/_api/gharial' + '/_api/gharial', ); return (array) $results->graphs; @@ -187,7 +187,7 @@ public function replaceGraphEdge( string $edge, array $edgeDefinition, bool $dropCollection = false, - bool $waitForSync = false + bool $waitForSync = false, ): stdClass { $uri = '/_api/gharial/' . $name . '/edge/' . $edge . '#definition'; @@ -210,7 +210,7 @@ public function removeGraphEdge( string $name, string $edge, bool $dropCollection = true, - bool $waitForSync = false + bool $waitForSync = false, ): stdClass { $uri = '/_api/gharial/' . $name . '/edge/' . $edge . '#definition'; diff --git a/src/Transactions/SupportsTransactions.php b/src/Transactions/SupportsTransactions.php index 6b57ff2..127be4b 100644 --- a/src/Transactions/SupportsTransactions.php +++ b/src/Transactions/SupportsTransactions.php @@ -90,7 +90,7 @@ public function transactionAwareRequest( string $uri, array|HttpRequestOptions $options = [], string $database = null, - int $transactionId = null + int $transactionId = null, ): stdClass { if (is_array($options)) { $options = $this->prepareRequestOptions($options); diff --git a/tests/ArangoClientTest.php b/tests/ArangoClientTest.php index d149cde..58fd2c2 100644 --- a/tests/ArangoClientTest.php +++ b/tests/ArangoClientTest.php @@ -31,6 +31,7 @@ public function testGetConfig() 'username' => 'root', 'password' => null, 'database' => $this->testDatabaseName, + 'responseSizeDecoderSwitch' => 1048576, ]; $config = $this->arangoClient->getConfig(); @@ -134,6 +135,7 @@ public function testDatabaseNameIsUsedInRequests() $handlerStack->push($history); $this->arangoClient->setDatabase($database); + $this->arangoClient->request('get', $uri, ['handler' => $handlerStack]); foreach ($container as $transaction) { diff --git a/tests/MonitorManagerTest.php b/tests/MonitorManagerTest.php new file mode 100644 index 0000000..c5cb8fc --- /dev/null +++ b/tests/MonitorManagerTest.php @@ -0,0 +1,84 @@ +arangoClient->monitor()->getMetrics(); + $this->assertIsObject($result); + $this->assertEquals("gauge", $result->arangodb_agency_cache_callback_number->type); + $this->assertCount(1, $result->arangodb_agency_cache_callback_number->labels); + } + + public function testSummaryMetric() + { + $prometheus = new Prometheus(); + + $rawMetrics = '# HELP prometheus_rule_evaluation_duration_seconds The duration for a rule to execute. +# TYPE prometheus_rule_evaluation_duration_seconds summary +prometheus_rule_evaluation_duration_seconds{quantile="0.5"} 6.4853e-05 +prometheus_rule_evaluation_duration_seconds{quantile="0.9"} 0.00010102 +prometheus_rule_evaluation_duration_seconds{quantile="0.99"} 0.000177367 +prometheus_rule_evaluation_duration_seconds_sum 1.623860968846092e+06 +prometheus_rule_evaluation_duration_seconds_count 1.112293682e+09'; + + + $result = $prometheus->parseText($rawMetrics); + $this->assertIsObject($result); + } + + public function testHistorgramParsing() + { + $prometheus = new Prometheus(); + + $rawMetrics = '# HELP arangodb_aql_query_time Execution time histogram for all AQL queries [s] +# TYPE arangodb_aql_query_time histogram +arangodb_aql_query_time_bucket{role="SINGLE",le="0.000095"} 36 2211753600 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.000191"} 157 2211753601 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.000381"} 173 2211753602 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.000763"} 176 2211753603 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.001526"} 176 2211753604 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.003052"} 176 2211753605 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.006104"} 176 2211753606 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.012207"} 177 2211753607 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.024414"} 177 2211753608 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.048828"} 177 2211753609 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.097656"} 177 2211753610 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.195312"} 177 2211753611 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.390625"} 177 2211753612 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.781250"} 177 2211753613 +arangodb_aql_query_time_bucket{role="SINGLE",le="1.562500"} 177 2211753614 +arangodb_aql_query_time_bucket{role="SINGLE",le="3.125000"} 177 2211753615 +arangodb_aql_query_time_bucket{role="SINGLE",le="6.250000"} 177 2211753616 +arangodb_aql_query_time_bucket{role="SINGLE",le="12.500000"} 177 2211753617 +arangodb_aql_query_time_bucket{role="SINGLE",le="25.000000"} 177 2211753618 +arangodb_aql_query_time_bucket{role="SINGLE",le="+Inf"} 177 +arangodb_aql_query_time_count{role="SINGLE"} 177 +arangodb_aql_query_time_sum{role="SINGLE"} 0.035180 +'; + + $result = $prometheus->parseText($rawMetrics); + $this->assertCount(20, $result->arangodb_aql_query_time->buckets); + $this->assertEquals(177, $result->arangodb_aql_query_time->count); + $this->assertEquals(0.03518, $result->arangodb_aql_query_time->sum); + } + + public function testTimestampParsing() + { + $prometheus = new Prometheus(); + + $rawMetrics = '# HELP arangodb_aql_local_query_memory_limit_reached_total Number of local AQL query memory limit violations +# TYPE arangodb_aql_local_query_memory_limit_reached_total counter +arangodb_aql_local_query_memory_limit_reached_total{role="SINGLE"} 0 2211753600'; + + $result = $prometheus->parseText($rawMetrics); + $this->assertIsObject($result); + $this->assertEquals(2211753600, $result->arangodb_aql_local_query_memory_limit_reached_total->timestamp); + } +} diff --git a/tests/SchemaManagerGraphsTest.php b/tests/SchemaManagerGraphsTest.php index 614292a..21b569c 100644 --- a/tests/SchemaManagerGraphsTest.php +++ b/tests/SchemaManagerGraphsTest.php @@ -34,7 +34,7 @@ public function testCreateGraphWithEdges() 'orphanVertices', ], ], - true + true, ); $this->assertEquals(1, is_countable($result->edgeDefinitions) ? count($result->edgeDefinitions) : 0); $this->assertEquals($result->_id, '_graphs/relations'); @@ -117,7 +117,7 @@ public function testGetGraphVertices() 'orphanVertices', ], ], - true + true, ); } @@ -150,7 +150,7 @@ public function testAddGraphVertex() 'orphanVertices', ], ], - false + false, ); } $newVertex = 'houses'; @@ -184,7 +184,7 @@ public function testRemoveGraphVertex() 'orphanVertices', ], ], - false + false, ); } @@ -220,7 +220,7 @@ public function testGetGraphEdges() 'orphanVertices', ], ], - true + true, ); } @@ -249,7 +249,7 @@ public function testAddGraphEdge() ], ], ], - false + false, ); } $newEdge = [ @@ -282,7 +282,7 @@ public function testReplaceGraphEdge() 'to' => ['characters'], ], ], - ] + ], ); } @@ -297,7 +297,7 @@ public function testReplaceGraphEdge() 'children', $newEdge, false, - true + true, ); $this->assertEquals($newEdge['collection'], $result->edgeDefinitions[0]->collection); @@ -326,7 +326,7 @@ public function testRemoveGraphEdge() 'to' => ['houses'], ], ], - ] + ], ); } @@ -334,7 +334,7 @@ public function testRemoveGraphEdge() 'relations', 'children', true, - true + true, ); $this->assertEquals(1, is_countable($result->edgeDefinitions) ? count($result->edgeDefinitions) : 0); diff --git a/tests/StatementTest.php b/tests/StatementTest.php index 53cbb4d..e58cf0c 100644 --- a/tests/StatementTest.php +++ b/tests/StatementTest.php @@ -56,12 +56,6 @@ public function testSetAndGetQuery() $this->assertSame($query, $statement->getQuery()); } - public function testExecuteSuccess() - { - $results = $this->statement->execute(); - $this->assertTrue($results); - } - public function testExplain() { $explanation = $this->statement->explain(); diff --git a/tests/TestCase.php b/tests/TestCase.php index 69eed00..4ae930a 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -6,6 +6,7 @@ use ArangoClient\Admin\AdminManager; use ArangoClient\ArangoClient; +use ArangoClient\Monitor\MonitorManager; use ArangoClient\Schema\SchemaManager; use PHPUnit\Framework\TestCase as PhpUnitTestCase; @@ -13,6 +14,8 @@ abstract class TestCase extends PhpUnitTestCase { protected ArangoClient $arangoClient; + protected MonitorManager $monitorManager; + protected SchemaManager $schemaManager; protected AdminManager $administrationClient; @@ -25,6 +28,7 @@ protected function setUp(): void 'username' => 'root', ]); + $this->monitorManager = new MonitorManager($this->arangoClient); $this->schemaManager = new SchemaManager($this->arangoClient); $this->administrationClient = new AdminManager($this->arangoClient); diff --git a/tests/arangodb-metrics.txt b/tests/arangodb-metrics.txt new file mode 100644 index 0000000..fe45529 --- /dev/null +++ b/tests/arangodb-metrics.txt @@ -0,0 +1,1536 @@ +# HELP arangodb_agency_cache_callback_number Current number of entries in agency cache callbacks table +# TYPE arangodb_agency_cache_callback_number gauge +arangodb_agency_cache_callback_number{role="SINGLE"} 0 +# HELP arangodb_agency_callback_number Current number of agency callbacks registered +# TYPE arangodb_agency_callback_number gauge +arangodb_agency_callback_number{role="SINGLE"} 0 +# HELP arangodb_agency_callback_registered_total Total number of agency callbacks registered +# TYPE arangodb_agency_callback_registered_total counter +arangodb_agency_callback_registered_total{role="SINGLE"} 0 +# HELP arangodb_agencycomm_request_time_msec Request time for Agency requests [ms] +# TYPE arangodb_agencycomm_request_time_msec histogram +arangodb_agencycomm_request_time_msec_bucket{role="SINGLE",le="292"} 0 +arangodb_agencycomm_request_time_msec_bucket{role="SINGLE",le="526"} 0 +arangodb_agencycomm_request_time_msec_bucket{role="SINGLE",le="995"} 0 +arangodb_agencycomm_request_time_msec_bucket{role="SINGLE",le="1932"} 0 +arangodb_agencycomm_request_time_msec_bucket{role="SINGLE",le="3806"} 0 +arangodb_agencycomm_request_time_msec_bucket{role="SINGLE",le="7554"} 0 +arangodb_agencycomm_request_time_msec_bucket{role="SINGLE",le="15050"} 0 +arangodb_agencycomm_request_time_msec_bucket{role="SINGLE",le="30043"} 0 +arangodb_agencycomm_request_time_msec_bucket{role="SINGLE",le="60029"} 0 +arangodb_agencycomm_request_time_msec_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_agencycomm_request_time_msec_count{role="SINGLE"} 0 +arangodb_agencycomm_request_time_msec_sum{role="SINGLE"} 0 +# HELP arangodb_aql_all_query_total Total number of AQL queries finished +# TYPE arangodb_aql_all_query_total counter +arangodb_aql_all_query_total{role="SINGLE"} 177 +# HELP arangodb_aql_current_query Current number of AQL queries executing +# TYPE arangodb_aql_current_query gauge +arangodb_aql_current_query{role="SINGLE"} 18446744073709551439 +# HELP arangodb_aql_cursors_active Total amount of active AQL query results cursors +# TYPE arangodb_aql_cursors_active gauge +arangodb_aql_cursors_active{role="SINGLE"} 0 +# HELP arangodb_aql_cursors_memory_usage Total memory usage of active query result cursors +# TYPE arangodb_aql_cursors_memory_usage gauge +arangodb_aql_cursors_memory_usage{role="SINGLE"} 0 +# HELP arangodb_aql_global_memory_limit Total memory limit for all AQL queries combined [bytes] +# TYPE arangodb_aql_global_memory_limit gauge +arangodb_aql_global_memory_limit{role="SINGLE"} 26578210406 +# HELP arangodb_aql_global_memory_usage Total memory usage of all AQL queries executing [bytes], granularity: 32768 bytes steps +# TYPE arangodb_aql_global_memory_usage gauge +arangodb_aql_global_memory_usage{role="SINGLE"} 0 +# HELP arangodb_aql_global_query_memory_limit_reached_total Number of global AQL query memory limit violations +# TYPE arangodb_aql_global_query_memory_limit_reached_total counter +arangodb_aql_global_query_memory_limit_reached_total{role="SINGLE"} 0 +# HELP arangodb_aql_local_query_memory_limit_reached_total Number of local AQL query memory limit violations +# TYPE arangodb_aql_local_query_memory_limit_reached_total counter +arangodb_aql_local_query_memory_limit_reached_total{role="SINGLE"} 0 +# HELP arangodb_aql_query_time Execution time histogram for all AQL queries [s] +# TYPE arangodb_aql_query_time histogram +arangodb_aql_query_time_bucket{role="SINGLE",le="0.000095"} 36 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.000191"} 157 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.000381"} 173 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.000763"} 176 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.001526"} 176 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.003052"} 176 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.006104"} 176 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.012207"} 177 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.024414"} 177 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.048828"} 177 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.097656"} 177 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.195312"} 177 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.390625"} 177 +arangodb_aql_query_time_bucket{role="SINGLE",le="0.781250"} 177 +arangodb_aql_query_time_bucket{role="SINGLE",le="1.562500"} 177 +arangodb_aql_query_time_bucket{role="SINGLE",le="3.125000"} 177 +arangodb_aql_query_time_bucket{role="SINGLE",le="6.250000"} 177 +arangodb_aql_query_time_bucket{role="SINGLE",le="12.500000"} 177 +arangodb_aql_query_time_bucket{role="SINGLE",le="25.000000"} 177 +arangodb_aql_query_time_bucket{role="SINGLE",le="+Inf"} 177 +arangodb_aql_query_time_count{role="SINGLE"} 177 +arangodb_aql_query_time_sum{role="SINGLE"} 0.035180 +# HELP arangodb_aql_slow_query_time Execution time histogram for slow AQL queries [s] +# TYPE arangodb_aql_slow_query_time histogram +arangodb_aql_slow_query_time_bucket{role="SINGLE",le="4.904297"} 0 +arangodb_aql_slow_query_time_bucket{role="SINGLE",le="8.808594"} 0 +arangodb_aql_slow_query_time_bucket{role="SINGLE",le="16.617188"} 0 +arangodb_aql_slow_query_time_bucket{role="SINGLE",le="32.234375"} 0 +arangodb_aql_slow_query_time_bucket{role="SINGLE",le="63.468750"} 0 +arangodb_aql_slow_query_time_bucket{role="SINGLE",le="125.937500"} 0 +arangodb_aql_slow_query_time_bucket{role="SINGLE",le="250.875000"} 0 +arangodb_aql_slow_query_time_bucket{role="SINGLE",le="500.750000"} 0 +arangodb_aql_slow_query_time_bucket{role="SINGLE",le="1000.500000"} 0 +arangodb_aql_slow_query_time_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_aql_slow_query_time_count{role="SINGLE"} 0 +arangodb_aql_slow_query_time_sum{role="SINGLE"} 0.000000 +# HELP arangodb_aql_total_query_time_msec_total Total execution time of all AQL queries [ms] +# TYPE arangodb_aql_total_query_time_msec_total counter +arangodb_aql_total_query_time_msec_total{role="SINGLE"} 10 +# HELP arangodb_collection_lock_acquisition_micros_total Total amount of collection lock acquisition time [μs] +# TYPE arangodb_collection_lock_acquisition_micros_total counter +arangodb_collection_lock_acquisition_micros_total{role="SINGLE"} 1213 +# HELP arangodb_collection_lock_acquisition_time Collection lock acquisition time histogram [s] +# TYPE arangodb_collection_lock_acquisition_time histogram +arangodb_collection_lock_acquisition_time_bucket{role="SINGLE",le="0.000000"} 0 +arangodb_collection_lock_acquisition_time_bucket{role="SINGLE",le="0.000001"} 7 +arangodb_collection_lock_acquisition_time_bucket{role="SINGLE",le="0.000010"} 563 +arangodb_collection_lock_acquisition_time_bucket{role="SINGLE",le="0.000100"} 563 +arangodb_collection_lock_acquisition_time_bucket{role="SINGLE",le="0.001000"} 563 +arangodb_collection_lock_acquisition_time_bucket{role="SINGLE",le="0.010000"} 563 +arangodb_collection_lock_acquisition_time_bucket{role="SINGLE",le="0.100000"} 563 +arangodb_collection_lock_acquisition_time_bucket{role="SINGLE",le="1.000000"} 563 +arangodb_collection_lock_acquisition_time_bucket{role="SINGLE",le="10.000000"} 563 +arangodb_collection_lock_acquisition_time_bucket{role="SINGLE",le="100.000000"} 563 +arangodb_collection_lock_acquisition_time_bucket{role="SINGLE",le="+Inf"} 563 +arangodb_collection_lock_acquisition_time_count{role="SINGLE"} 563 +arangodb_collection_lock_acquisition_time_sum{role="SINGLE"} 0.001482 +# HELP arangodb_collection_lock_sequential_mode_total Number of transactions using sequential locking of collections to avoid deadlocking +# TYPE arangodb_collection_lock_sequential_mode_total counter +arangodb_collection_lock_sequential_mode_total{role="SINGLE"} 0 +# HELP arangodb_collection_lock_timeouts_exclusive_total Number of timeouts when trying to acquire collection exclusive locks +# TYPE arangodb_collection_lock_timeouts_exclusive_total counter +arangodb_collection_lock_timeouts_exclusive_total{role="SINGLE"} 0 +# HELP arangodb_collection_lock_timeouts_write_total Number of timeouts when trying to acquire collection write locks +# TYPE arangodb_collection_lock_timeouts_write_total counter +arangodb_collection_lock_timeouts_write_total{role="SINGLE"} 0 +# HELP arangodb_connection_pool_connections_created_total Total number of connections created +# TYPE arangodb_connection_pool_connections_created_total counter +arangodb_connection_pool_connections_created_total{role="SINGLE",pool="ClusterComm"} 0 +# HELP arangodb_connection_pool_connections_current Current number of connections in pool +# TYPE arangodb_connection_pool_connections_current gauge +arangodb_connection_pool_connections_current{role="SINGLE",pool="ClusterComm"} 0 +# HELP arangodb_connection_pool_lease_time_hist Time to lease a connection from pool [ms] +# TYPE arangodb_connection_pool_lease_time_hist histogram +arangodb_connection_pool_lease_time_hist_bucket{role="SINGLE",pool="ClusterComm",le="1.953125"} 0 +arangodb_connection_pool_lease_time_hist_bucket{role="SINGLE",pool="ClusterComm",le="3.906250"} 0 +arangodb_connection_pool_lease_time_hist_bucket{role="SINGLE",pool="ClusterComm",le="7.812500"} 0 +arangodb_connection_pool_lease_time_hist_bucket{role="SINGLE",pool="ClusterComm",le="15.625000"} 0 +arangodb_connection_pool_lease_time_hist_bucket{role="SINGLE",pool="ClusterComm",le="31.250000"} 0 +arangodb_connection_pool_lease_time_hist_bucket{role="SINGLE",pool="ClusterComm",le="62.500000"} 0 +arangodb_connection_pool_lease_time_hist_bucket{role="SINGLE",pool="ClusterComm",le="125.000000"} 0 +arangodb_connection_pool_lease_time_hist_bucket{role="SINGLE",pool="ClusterComm",le="250.000000"} 0 +arangodb_connection_pool_lease_time_hist_bucket{role="SINGLE",pool="ClusterComm",le="500.000000"} 0 +arangodb_connection_pool_lease_time_hist_bucket{role="SINGLE",pool="ClusterComm",le="+Inf"} 0 +arangodb_connection_pool_lease_time_hist_count{role="SINGLE",pool="ClusterComm"} 0 +arangodb_connection_pool_lease_time_hist_sum{role="SINGLE",pool="ClusterComm"} 0.000000 +# HELP arangodb_connection_pool_leases_failed_total Total number of failed connection leases +# TYPE arangodb_connection_pool_leases_failed_total counter +arangodb_connection_pool_leases_failed_total{role="SINGLE",pool="ClusterComm"} 0 +# HELP arangodb_connection_pool_leases_successful_total Total number of successful connection leases +# TYPE arangodb_connection_pool_leases_successful_total counter +arangodb_connection_pool_leases_successful_total{role="SINGLE",pool="ClusterComm"} 0 +# HELP arangodb_connection_statistics_memory_usage Memory used by the internal connection statistics +# TYPE arangodb_connection_statistics_memory_usage gauge +arangodb_connection_statistics_memory_usage{role="SINGLE"} 0 +# HELP arangodb_dirty_read_transactions_total Number of read transactions which can do dirty reads +# TYPE arangodb_dirty_read_transactions_total counter +arangodb_dirty_read_transactions_total{role="SINGLE"} 0 +# HELP arangodb_dump_memory_usage Memory usage of currently ongoing dumps +# TYPE arangodb_dump_memory_usage gauge +arangodb_dump_memory_usage{role="SINGLE"} 0 +# HELP arangodb_dump_ongoing Number of dumps currently ongoing +# TYPE arangodb_dump_ongoing gauge +arangodb_dump_ongoing{role="SINGLE"} 0 +# HELP arangodb_dump_threads_blocked_total Number of times a dump thread was blocked because of memory restrictions +# TYPE arangodb_dump_threads_blocked_total counter +arangodb_dump_threads_blocked_total{role="SINGLE"} 0 +# HELP arangodb_file_descriptors_current Number of currently open file descriptors for the arangod process +# TYPE arangodb_file_descriptors_current gauge +arangodb_file_descriptors_current{role="SINGLE"} 27 +# HELP arangodb_file_descriptors_limit Limit for the number of open file descriptors for the arangod process +# TYPE arangodb_file_descriptors_limit gauge +arangodb_file_descriptors_limit{role="SINGLE"} 1048576 +# HELP arangodb_flush_subscriptions Number of active flush subscriptions +# TYPE arangodb_flush_subscriptions gauge +arangodb_flush_subscriptions{role="SINGLE"} 0 +# HELP arangodb_heartbeat_failures_total Counting failed heartbeat transmissions +# TYPE arangodb_heartbeat_failures_total counter +arangodb_heartbeat_failures_total{role="SINGLE"} 0 +# HELP arangodb_heartbeat_send_time_msec Time required to send heartbeat [ms] +# TYPE arangodb_heartbeat_send_time_msec histogram +arangodb_heartbeat_send_time_msec_bucket{role="SINGLE",le="19"} 0 +arangodb_heartbeat_send_time_msec_bucket{role="SINGLE",le="35"} 0 +arangodb_heartbeat_send_time_msec_bucket{role="SINGLE",le="66"} 0 +arangodb_heartbeat_send_time_msec_bucket{role="SINGLE",le="128"} 0 +arangodb_heartbeat_send_time_msec_bucket{role="SINGLE",le="253"} 0 +arangodb_heartbeat_send_time_msec_bucket{role="SINGLE",le="503"} 0 +arangodb_heartbeat_send_time_msec_bucket{role="SINGLE",le="1003"} 0 +arangodb_heartbeat_send_time_msec_bucket{role="SINGLE",le="2003"} 0 +arangodb_heartbeat_send_time_msec_bucket{role="SINGLE",le="4002"} 0 +arangodb_heartbeat_send_time_msec_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_heartbeat_send_time_msec_count{role="SINGLE"} 0 +arangodb_heartbeat_send_time_msec_sum{role="SINGLE"} 0 +# HELP arangodb_http1_connections_total Total number of HTTP/1.1 connections +# TYPE arangodb_http1_connections_total counter +arangodb_http1_connections_total{role="SINGLE"} 1 +# HELP arangodb_http2_connections_total Total number of HTTP/2 connections +# TYPE arangodb_http2_connections_total counter +arangodb_http2_connections_total{role="SINGLE"} 0 +# HELP arangodb_index_estimates_memory_usage Total memory consumed by all index selectivity estimates +# TYPE arangodb_index_estimates_memory_usage gauge +arangodb_index_estimates_memory_usage{role="SINGLE"} 0 +# HELP arangodb_intermediate_commits_total Number of intermediate commits performed in transactions +# TYPE arangodb_intermediate_commits_total counter +arangodb_intermediate_commits_total{role="SINGLE"} 0 +# HELP arangodb_internal_cluster_info_memory_usage Total memory used by internal cluster info data structures +# TYPE arangodb_internal_cluster_info_memory_usage gauge +arangodb_internal_cluster_info_memory_usage{role="SINGLE"} 0 +# HELP arangodb_ioheartbeat_delays_total Total number of delays in IO heartbeat +# TYPE arangodb_ioheartbeat_delays_total counter +arangodb_ioheartbeat_delays_total{role="SINGLE"} 0 +# HELP arangodb_ioheartbeat_duration Time to execute the io heartbeat once [us] +# TYPE arangodb_ioheartbeat_duration histogram +arangodb_ioheartbeat_duration_bucket{role="SINGLE",le="0.100000"} 0 +arangodb_ioheartbeat_duration_bucket{role="SINGLE",le="1.000000"} 0 +arangodb_ioheartbeat_duration_bucket{role="SINGLE",le="10.000000"} 0 +arangodb_ioheartbeat_duration_bucket{role="SINGLE",le="100.000000"} 0 +arangodb_ioheartbeat_duration_bucket{role="SINGLE",le="1000.000000"} 0 +arangodb_ioheartbeat_duration_bucket{role="SINGLE",le="10000.000000"} 3 +arangodb_ioheartbeat_duration_bucket{role="SINGLE",le="100000.000000"} 3 +arangodb_ioheartbeat_duration_bucket{role="SINGLE",le="+Inf"} 3 +arangodb_ioheartbeat_duration_count{role="SINGLE"} 3 +arangodb_ioheartbeat_duration_sum{role="SINGLE"} 7851.000000 +# HELP arangodb_ioheartbeat_failures_total Total number of failures in IO heartbeat +# TYPE arangodb_ioheartbeat_failures_total counter +arangodb_ioheartbeat_failures_total{role="SINGLE"} 0 +# HELP arangodb_license_expires This instance's license will expire in days +# TYPE arangodb_license_expires gauge +arangodb_license_expires{role="SINGLE"} 0 +# HELP arangodb_load_current_runtime Current loading runtimes [ms] +# TYPE arangodb_load_current_runtime histogram +arangodb_load_current_runtime_bucket{role="SINGLE",le="0.308525"} 0 +arangodb_load_current_runtime_bucket{role="SINGLE",le="0.838657"} 0 +arangodb_load_current_runtime_bucket{role="SINGLE",le="2.279705"} 0 +arangodb_load_current_runtime_bucket{role="SINGLE",le="6.196882"} 0 +arangodb_load_current_runtime_bucket{role="SINGLE",le="16.844870"} 0 +arangodb_load_current_runtime_bucket{role="SINGLE",le="45.789104"} 0 +arangodb_load_current_runtime_bucket{role="SINGLE",le="124.467682"} 0 +arangodb_load_current_runtime_bucket{role="SINGLE",le="338.338226"} 0 +arangodb_load_current_runtime_bucket{role="SINGLE",le="919.698608"} 0 +arangodb_load_current_runtime_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_load_current_runtime_count{role="SINGLE"} 0 +arangodb_load_current_runtime_sum{role="SINGLE"} 0.000000 +# HELP arangodb_load_plan_runtime Plan loading runtimes [ms] +# TYPE arangodb_load_plan_runtime histogram +arangodb_load_plan_runtime_bucket{role="SINGLE",le="0.308525"} 0 +arangodb_load_plan_runtime_bucket{role="SINGLE",le="0.838657"} 0 +arangodb_load_plan_runtime_bucket{role="SINGLE",le="2.279705"} 0 +arangodb_load_plan_runtime_bucket{role="SINGLE",le="6.196882"} 0 +arangodb_load_plan_runtime_bucket{role="SINGLE",le="16.844870"} 0 +arangodb_load_plan_runtime_bucket{role="SINGLE",le="45.789104"} 0 +arangodb_load_plan_runtime_bucket{role="SINGLE",le="124.467682"} 0 +arangodb_load_plan_runtime_bucket{role="SINGLE",le="338.338226"} 0 +arangodb_load_plan_runtime_bucket{role="SINGLE",le="919.698608"} 0 +arangodb_load_plan_runtime_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_load_plan_runtime_count{role="SINGLE"} 0 +arangodb_load_plan_runtime_sum{role="SINGLE"} 0.000000 +# HELP arangodb_logger_errors_total Number of errors logged. +# TYPE arangodb_logger_errors_total counter +arangodb_logger_errors_total{role="SINGLE"} 12 +# HELP arangodb_logger_messages_dropped_total Number of log messages dropped. +# TYPE arangodb_logger_messages_dropped_total counter +arangodb_logger_messages_dropped_total{role="SINGLE"} 0 +# HELP arangodb_logger_warnings_total Number of warnings logged. +# TYPE arangodb_logger_warnings_total counter +arangodb_logger_warnings_total{role="SINGLE"} 9 +# HELP arangodb_network_dequeue_duration Time to dequeue a queued network request in fuerte in seconds +# TYPE arangodb_network_dequeue_duration histogram +arangodb_network_dequeue_duration_bucket{role="SINGLE",le="0.000001"} 0 +arangodb_network_dequeue_duration_bucket{role="SINGLE",le="0.000010"} 0 +arangodb_network_dequeue_duration_bucket{role="SINGLE",le="0.000100"} 0 +arangodb_network_dequeue_duration_bucket{role="SINGLE",le="0.001000"} 0 +arangodb_network_dequeue_duration_bucket{role="SINGLE",le="0.010000"} 0 +arangodb_network_dequeue_duration_bucket{role="SINGLE",le="0.100000"} 0 +arangodb_network_dequeue_duration_bucket{role="SINGLE",le="1.000000"} 0 +arangodb_network_dequeue_duration_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_network_dequeue_duration_count{role="SINGLE"} 0 +arangodb_network_dequeue_duration_sum{role="SINGLE"} 0.000000 +# HELP arangodb_network_forwarded_requests_total Number of requests forwarded to another coordinator +# TYPE arangodb_network_forwarded_requests_total counter +arangodb_network_forwarded_requests_total{role="SINGLE"} 0 +# HELP arangodb_network_request_duration_as_percentage_of_timeout Internal request round-trip time as a percentage of timeout [%] +# TYPE arangodb_network_request_duration_as_percentage_of_timeout histogram +arangodb_network_request_duration_as_percentage_of_timeout_bucket{role="SINGLE",le="1.000000"} 0 +arangodb_network_request_duration_as_percentage_of_timeout_bucket{role="SINGLE",le="5.000000"} 0 +arangodb_network_request_duration_as_percentage_of_timeout_bucket{role="SINGLE",le="15.000000"} 0 +arangodb_network_request_duration_as_percentage_of_timeout_bucket{role="SINGLE",le="50.000000"} 0 +arangodb_network_request_duration_as_percentage_of_timeout_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_network_request_duration_as_percentage_of_timeout_count{role="SINGLE"} 0 +arangodb_network_request_duration_as_percentage_of_timeout_sum{role="SINGLE"} 0.000000 +# HELP arangodb_network_request_timeouts_total Number of internal requests that have timed out +# TYPE arangodb_network_request_timeouts_total counter +arangodb_network_request_timeouts_total{role="SINGLE"} 0 +# HELP arangodb_network_requests_in_flight Number of outgoing internal requests in flight +# TYPE arangodb_network_requests_in_flight gauge +arangodb_network_requests_in_flight{role="SINGLE"} 0 +# HELP arangodb_network_response_duration Time to wait for network response after it was sent out in seconds +# TYPE arangodb_network_response_duration histogram +arangodb_network_response_duration_bucket{role="SINGLE",le="0.010000"} 0 +arangodb_network_response_duration_bucket{role="SINGLE",le="0.100000"} 0 +arangodb_network_response_duration_bucket{role="SINGLE",le="1.000000"} 0 +arangodb_network_response_duration_bucket{role="SINGLE",le="10.000000"} 0 +arangodb_network_response_duration_bucket{role="SINGLE",le="100.000000"} 0 +arangodb_network_response_duration_bucket{role="SINGLE",le="1000.000000"} 0 +arangodb_network_response_duration_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_network_response_duration_count{role="SINGLE"} 0 +arangodb_network_response_duration_sum{role="SINGLE"} 0.000000 +# HELP arangodb_network_send_duration Time to send out internal requests in seconds +# TYPE arangodb_network_send_duration histogram +arangodb_network_send_duration_bucket{role="SINGLE",le="0.010000"} 0 +arangodb_network_send_duration_bucket{role="SINGLE",le="0.100000"} 0 +arangodb_network_send_duration_bucket{role="SINGLE",le="1.000000"} 0 +arangodb_network_send_duration_bucket{role="SINGLE",le="10.000000"} 0 +arangodb_network_send_duration_bucket{role="SINGLE",le="100.000000"} 0 +arangodb_network_send_duration_bucket{role="SINGLE",le="1000.000000"} 0 +arangodb_network_send_duration_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_network_send_duration_count{role="SINGLE"} 0 +arangodb_network_send_duration_sum{role="SINGLE"} 0.000000 +# HELP arangodb_network_unfinished_sends_total Number of times the sending of a request remained unfinished +# TYPE arangodb_network_unfinished_sends_total counter +arangodb_network_unfinished_sends_total{role="SINGLE"} 0 +# HELP arangodb_read_transactions_total Number of read transactions +# TYPE arangodb_read_transactions_total counter +arangodb_read_transactions_total{role="SINGLE"} 432 +# HELP arangodb_replication2_leader_in_memory_bytes Size of log entries stored on memory +# TYPE arangodb_replication2_leader_in_memory_bytes gauge +arangodb_replication2_leader_in_memory_bytes{role="SINGLE"} 0 +# HELP arangodb_replication2_leader_in_memory_entries Number of log entries stored on memory +# TYPE arangodb_replication2_leader_in_memory_entries gauge +arangodb_replication2_leader_in_memory_entries{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_append_entries_num_entries Histogram of number of log entries per append-entries request +# TYPE arangodb_replication2_replicated_log_append_entries_num_entries histogram +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="1"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="2"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="4"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="8"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="16"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="32"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="64"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="128"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="256"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="512"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="1024"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="2048"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="4096"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="8192"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="16384"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_count{role="SINGLE"} 0 +arangodb_replication2_replicated_log_append_entries_num_entries_sum{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_append_entries_rtt RTT for AppendEntries requests [us] +# TYPE arangodb_replication2_replicated_log_append_entries_rtt histogram +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="1000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="2000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="4000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="8000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="16000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="32000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="64000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="128000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="256000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="512000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="1024000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="2048000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="4096000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="8192000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="16384000"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_count{role="SINGLE"} 0 +arangodb_replication2_replicated_log_append_entries_rtt_sum{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_append_entries_size Histogram of size of append-entries requests +# TYPE arangodb_replication2_replicated_log_append_entries_size histogram +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="64"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="128"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="256"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="512"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="1024"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="2048"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="4096"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="8192"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="16384"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="32768"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="65536"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="131072"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="262144"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="524288"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="1048576"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="2097152"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="4194304"} 0 +arangodb_replication2_replicated_log_append_entries_size_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_replication2_replicated_log_append_entries_size_count{role="SINGLE"} 0 +arangodb_replication2_replicated_log_append_entries_size_sum{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_creation_total Number of replicated logs created since server start +# TYPE arangodb_replication2_replicated_log_creation_total counter +arangodb_replication2_replicated_log_creation_total{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_deletion_total Number of replicated logs deleted since server start +# TYPE arangodb_replication2_replicated_log_deletion_total counter +arangodb_replication2_replicated_log_deletion_total{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_follower_append_entries_rt RT for AppendEntries call [us] +# TYPE arangodb_replication2_replicated_log_follower_append_entries_rt histogram +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="1000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="2000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="4000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="8000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="16000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="32000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="64000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="128000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="256000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="512000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="1024000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="2048000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="4096000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="8192000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="16384000"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_count{role="SINGLE"} 0 +arangodb_replication2_replicated_log_follower_append_entries_rt_sum{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_follower_entry_drop_total Number of log entries dropped by a follower before appending the log +# TYPE arangodb_replication2_replicated_log_follower_entry_drop_total counter +arangodb_replication2_replicated_log_follower_entry_drop_total{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_follower_number Number of replicated logs this server has, and is currently a follower of +# TYPE arangodb_replication2_replicated_log_follower_number gauge +arangodb_replication2_replicated_log_follower_number{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_inactive_number Number of replicated logs this server has, and is currently neither leader nor follower of +# TYPE arangodb_replication2_replicated_log_inactive_number gauge +arangodb_replication2_replicated_log_inactive_number{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_inserts_bytes Number of bytes per insert in replicated log leader instances on this server [bytes] +# TYPE arangodb_replication2_replicated_log_inserts_bytes histogram +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="1"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="4"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="16"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="64"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="256"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="1024"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="4096"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="16384"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="65536"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="262144"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="1048576"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="4194304"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="16777216"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="67108864"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="268435456"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="1073741824"} 0 +arangodb_replication2_replicated_log_inserts_bytes_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_replication2_replicated_log_inserts_bytes_count{role="SINGLE"} 0 +arangodb_replication2_replicated_log_inserts_bytes_sum{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_inserts_rtt Histogram of round-trip times of replicated log inserts [us] +# TYPE arangodb_replication2_replicated_log_inserts_rtt histogram +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="1000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="2000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="4000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="8000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="16000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="32000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="64000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="128000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="256000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="512000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="1024000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="2048000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="4096000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="8192000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="16384000"} 0 +arangodb_replication2_replicated_log_inserts_rtt_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_replication2_replicated_log_inserts_rtt_count{role="SINGLE"} 0 +arangodb_replication2_replicated_log_inserts_rtt_sum{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_leader_append_entries_error_total Number of failed append-entries requests +# TYPE arangodb_replication2_replicated_log_leader_append_entries_error_total counter +arangodb_replication2_replicated_log_leader_append_entries_error_total{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_leader_number Number of replicated logs this server has, and is currently a leader of +# TYPE arangodb_replication2_replicated_log_leader_number gauge +arangodb_replication2_replicated_log_leader_number{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_leader_took_over_total Number of times a replicated log on this server took over as leader in a term +# TYPE arangodb_replication2_replicated_log_leader_took_over_total counter +arangodb_replication2_replicated_log_leader_took_over_total{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_number Number of replicated logs on this arangodb instance +# TYPE arangodb_replication2_replicated_log_number gauge +arangodb_replication2_replicated_log_number{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_number_accepted_entries_total Number of accepted (not yet committed) log entries +# TYPE arangodb_replication2_replicated_log_number_accepted_entries_total counter +arangodb_replication2_replicated_log_number_accepted_entries_total{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_number_committed_entries_total Number of committed log entries +# TYPE arangodb_replication2_replicated_log_number_committed_entries_total counter +arangodb_replication2_replicated_log_number_committed_entries_total{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_number_compacted_entries_total Number of compacted log entries +# TYPE arangodb_replication2_replicated_log_number_compacted_entries_total counter +arangodb_replication2_replicated_log_number_compacted_entries_total{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_number_meta_entries_total Number of meta log entries +# TYPE arangodb_replication2_replicated_log_number_meta_entries_total counter +arangodb_replication2_replicated_log_number_meta_entries_total{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_log_started_following_total Number of times a replicated log on this server started following a leader in a term +# TYPE arangodb_replication2_replicated_log_started_following_total counter +arangodb_replication2_replicated_log_started_following_total{role="SINGLE"} 0 +# HELP arangodb_replication2_replicated_state_acquire_snapshot_errors_total Number of errors during an acquire snapshot operation +# TYPE arangodb_replication2_replicated_state_acquire_snapshot_errors_total counter +arangodb_replication2_replicated_state_acquire_snapshot_errors_total{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_acquire_snapshot_errors_total{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_applied_entries_total Number of log entries applied to the internal state +# TYPE arangodb_replication2_replicated_state_applied_entries_total counter +arangodb_replication2_replicated_state_applied_entries_total{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_applied_entries_total{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_apply_entries_errors_total Number of errors during an apply entries operation +# TYPE arangodb_replication2_replicated_state_apply_entries_errors_total counter +arangodb_replication2_replicated_state_apply_entries_errors_total{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_apply_entries_errors_total{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_follower_acquire_snapshot_rt RT for AcquireSnapshot call [us] +# TYPE arangodb_replication2_replicated_state_follower_acquire_snapshot_rt histogram +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="1000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="2000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="4000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="8000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="16000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="32000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="64000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="128000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="256000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="512000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="1024000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="2048000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="4096000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="8192000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="16384000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="black-hole",le="+Inf"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_count{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_sum{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="1000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="2000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="4000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="8000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="16000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="32000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="64000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="128000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="256000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="512000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="1024000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="2048000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="4096000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="8192000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="16384000"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_bucket{role="SINGLE",state_impl="document",le="+Inf"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_count{role="SINGLE",state_impl="document"} 0 +arangodb_replication2_replicated_state_follower_acquire_snapshot_rt_sum{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_follower_apply_debt Number of log entries that need to be applied +# TYPE arangodb_replication2_replicated_state_follower_apply_debt gauge +arangodb_replication2_replicated_state_follower_apply_debt{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_follower_apply_debt{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_follower_apply_entries_rt RT for ApplyEntries call [us] +# TYPE arangodb_replication2_replicated_state_follower_apply_entries_rt histogram +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="1000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="2000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="4000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="8000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="16000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="32000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="64000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="128000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="256000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="512000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="1024000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="2048000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="4096000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="8192000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="16384000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="+Inf"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_count{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_sum{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="1000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="2000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="4000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="8000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="16000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="32000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="64000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="128000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="256000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="512000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="1024000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="2048000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="4096000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="8192000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="16384000"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_bucket{role="SINGLE",state_impl="document",le="+Inf"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_count{role="SINGLE",state_impl="document"} 0 +arangodb_replication2_replicated_state_follower_apply_entries_rt_sum{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_follower_number Number of times a replicated states on this server started as a follower +# TYPE arangodb_replication2_replicated_state_follower_number gauge +arangodb_replication2_replicated_state_follower_number{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_follower_number{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_follower_waiting_for_leader_number Number of followers waiting for the leader to acknowledge the current term +# TYPE arangodb_replication2_replicated_state_follower_waiting_for_leader_number gauge +arangodb_replication2_replicated_state_follower_waiting_for_leader_number{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_follower_waiting_for_leader_number{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_follower_waiting_for_snapshot_number Number of followers waiting for a snapshot transfer to complete +# TYPE arangodb_replication2_replicated_state_follower_waiting_for_snapshot_number gauge +arangodb_replication2_replicated_state_follower_waiting_for_snapshot_number{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_follower_waiting_for_snapshot_number{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_leader_number Number of times a replicated states on this server started as a leader +# TYPE arangodb_replication2_replicated_state_leader_number gauge +arangodb_replication2_replicated_state_leader_number{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_leader_number{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_leader_recover_entries_rt RT for RecoverEntries call [us] +# TYPE arangodb_replication2_replicated_state_leader_recover_entries_rt histogram +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="1000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="2000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="4000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="8000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="16000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="32000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="64000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="128000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="256000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="512000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="1024000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="2048000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="4096000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="8192000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="16384000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="black-hole",le="+Inf"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_count{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_sum{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="1000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="2000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="4000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="8000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="16000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="32000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="64000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="128000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="256000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="512000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="1024000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="2048000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="4096000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="8192000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="16384000"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_bucket{role="SINGLE",state_impl="document",le="+Inf"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_count{role="SINGLE",state_impl="document"} 0 +arangodb_replication2_replicated_state_leader_recover_entries_rt_sum{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_leader_waiting_for_recovery_number Number of leaders waiting for recovery to be complete +# TYPE arangodb_replication2_replicated_state_leader_waiting_for_recovery_number gauge +arangodb_replication2_replicated_state_leader_waiting_for_recovery_number{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_leader_waiting_for_recovery_number{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_number Number of times a replicated states on this server +# TYPE arangodb_replication2_replicated_state_number gauge +arangodb_replication2_replicated_state_number{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_number{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_replicated_state_processed_entries_total Number of log entries processed by the follower +# TYPE arangodb_replication2_replicated_state_processed_entries_total counter +arangodb_replication2_replicated_state_processed_entries_total{role="SINGLE",state_impl="black-hole"} 0 +arangodb_replication2_replicated_state_processed_entries_total{role="SINGLE",state_impl="document"} 0 +# HELP arangodb_replication2_rocksdb_num_persistor_worker Number of threads running in the log persistor +# TYPE arangodb_replication2_rocksdb_num_persistor_worker gauge +arangodb_replication2_rocksdb_num_persistor_worker{role="SINGLE",ws="false"} 0 +arangodb_replication2_rocksdb_num_persistor_worker{role="SINGLE",ws="true"} 0 +# HELP arangodb_replication2_rocksdb_queue_length Number of replicated log storage operations queued +# TYPE arangodb_replication2_rocksdb_queue_length gauge +arangodb_replication2_rocksdb_queue_length{role="SINGLE"} 0 +# HELP arangodb_replication2_rocksdb_sync_time Replicated log batches sync time[us] +# TYPE arangodb_replication2_rocksdb_sync_time histogram +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="1000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="2000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="4000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="8000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="16000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="32000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="64000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="128000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="256000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="512000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="1024000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="2048000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="4096000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="8192000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="16384000"} 0 +arangodb_replication2_rocksdb_sync_time_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_replication2_rocksdb_sync_time_count{role="SINGLE"} 0 +arangodb_replication2_rocksdb_sync_time_sum{role="SINGLE"} 0 +# HELP arangodb_replication2_rocksdb_write_batch_size Size of replicated log write batches in bytes +# TYPE arangodb_replication2_rocksdb_write_batch_size histogram +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="1024"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="2048"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="4096"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="8192"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="16384"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="32768"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="65536"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="131072"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="262144"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="524288"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="1048576"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="2097152"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="4194304"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="8388608"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="16777216"} 0 +arangodb_replication2_rocksdb_write_batch_size_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_replication2_rocksdb_write_batch_size_count{role="SINGLE"} 0 +arangodb_replication2_rocksdb_write_batch_size_sum{role="SINGLE"} 0 +# HELP arangodb_replication2_rocksdb_write_time Replicated log batches write time[us] +# TYPE arangodb_replication2_rocksdb_write_time histogram +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="1000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="2000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="4000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="8000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="16000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="32000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="64000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="128000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="256000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="512000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="1024000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="2048000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="4096000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="8192000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="16384000"} 0 +arangodb_replication2_rocksdb_write_time_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_replication2_rocksdb_write_time_count{role="SINGLE"} 0 +arangodb_replication2_rocksdb_write_time_sum{role="SINGLE"} 0 +# HELP arangodb_replication2_storage_operation_latency Replicated log storage operation latency[us] +# TYPE arangodb_replication2_storage_operation_latency histogram +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="1000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="2000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="4000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="8000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="16000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="32000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="64000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="128000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="256000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="512000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="1024000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="2048000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="4096000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="8192000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="16384000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="insert",le="+Inf"} 0 +arangodb_replication2_storage_operation_latency_count{role="SINGLE",op="insert"} 0 +arangodb_replication2_storage_operation_latency_sum{role="SINGLE",op="insert"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="1000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="2000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="4000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="8000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="16000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="32000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="64000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="128000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="256000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="512000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="1024000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="2048000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="4096000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="8192000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="16384000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-back",le="+Inf"} 0 +arangodb_replication2_storage_operation_latency_count{role="SINGLE",op="remove-back"} 0 +arangodb_replication2_storage_operation_latency_sum{role="SINGLE",op="remove-back"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="1000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="2000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="4000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="8000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="16000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="32000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="64000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="128000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="256000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="512000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="1024000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="2048000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="4096000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="8192000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="16384000"} 0 +arangodb_replication2_storage_operation_latency_bucket{role="SINGLE",op="remove-front",le="+Inf"} 0 +arangodb_replication2_storage_operation_latency_count{role="SINGLE",op="remove-front"} 0 +arangodb_replication2_storage_operation_latency_sum{role="SINGLE",op="remove-front"} 0 +# HELP arangodb_replication_clients Number of replication clients connected +# TYPE arangodb_replication_clients gauge +arangodb_replication_clients{role="SINGLE"} 0 +# HELP arangodb_replication_cluster_inventory_requests_total (DC-2-DC only) Number of times the database and collection overviews have been requested. +# TYPE arangodb_replication_cluster_inventory_requests_total counter +arangodb_replication_cluster_inventory_requests_total{role="SINGLE"} 0 +# HELP arangodb_replication_dump_apply_time_total Accumulated time needed to apply asynchronously replicated data on initial synchronization of shards. [ms] +# TYPE arangodb_replication_dump_apply_time_total counter +arangodb_replication_dump_apply_time_total{role="SINGLE"} 0 +# HELP arangodb_replication_dump_bytes_received_total Total number of bytes replicated in initial asynchronous phase. +# TYPE arangodb_replication_dump_bytes_received_total counter +arangodb_replication_dump_bytes_received_total{role="SINGLE"} 0 +# HELP arangodb_replication_dump_documents_total Total number of documents replicated in initial asynchronous phase. +# TYPE arangodb_replication_dump_documents_total counter +arangodb_replication_dump_documents_total{role="SINGLE"} 0 +# HELP arangodb_replication_dump_request_time_total Accumulated wait time for replication requests in initial asynchronous phase. [ms] +# TYPE arangodb_replication_dump_request_time_total counter +arangodb_replication_dump_request_time_total{role="SINGLE"} 0 +# HELP arangodb_replication_dump_requests_total Number of requests used in initial asynchronous replication phase. +# TYPE arangodb_replication_dump_requests_total counter +arangodb_replication_dump_requests_total{role="SINGLE"} 0 +# HELP arangodb_replication_failed_connects_total Number of failed connection attempts and response errors during initial asynchronous replication +# TYPE arangodb_replication_failed_connects_total counter +arangodb_replication_failed_connects_total{role="SINGLE"} 0 +# HELP arangodb_replication_initial_chunks_requests_time_total Wait time for replication key chunks determination requests [ms] +# TYPE arangodb_replication_initial_chunks_requests_time_total counter +arangodb_replication_initial_chunks_requests_time_total{role="SINGLE"} 0 +# HELP arangodb_replication_initial_docs_requests_time_total Time needed to apply replication docs data [ms] +# TYPE arangodb_replication_initial_docs_requests_time_total counter +arangodb_replication_initial_docs_requests_time_total{role="SINGLE"} 0 +# HELP arangodb_replication_initial_insert_apply_time_total Time needed to apply replication initial sync insertions [ms] +# TYPE arangodb_replication_initial_insert_apply_time_total counter +arangodb_replication_initial_insert_apply_time_total{role="SINGLE"} 0 +# HELP arangodb_replication_initial_keys_requests_time_total Wait time for replication keys requests [ms] +# TYPE arangodb_replication_initial_keys_requests_time_total counter +arangodb_replication_initial_keys_requests_time_total{role="SINGLE"} 0 +# HELP arangodb_replication_initial_remove_apply_time_total Time needed to apply replication initial sync removals [ms] +# TYPE arangodb_replication_initial_remove_apply_time_total counter +arangodb_replication_initial_remove_apply_time_total{role="SINGLE"} 0 +# HELP arangodb_replication_initial_sync_bytes_received_total Number of bytes received during replication initial sync +# TYPE arangodb_replication_initial_sync_bytes_received_total counter +arangodb_replication_initial_sync_bytes_received_total{role="SINGLE"} 0 +# HELP arangodb_replication_initial_sync_docs_inserted_total Number of documents inserted by replication initial sync +# TYPE arangodb_replication_initial_sync_docs_inserted_total counter +arangodb_replication_initial_sync_docs_inserted_total{role="SINGLE"} 0 +# HELP arangodb_replication_initial_sync_docs_removed_total Number of documents removed by replication initial sync +# TYPE arangodb_replication_initial_sync_docs_removed_total counter +arangodb_replication_initial_sync_docs_removed_total{role="SINGLE"} 0 +# HELP arangodb_replication_initial_sync_docs_requested_total Number of documents requested by replication initial sync +# TYPE arangodb_replication_initial_sync_docs_requested_total counter +arangodb_replication_initial_sync_docs_requested_total{role="SINGLE"} 0 +# HELP arangodb_replication_initial_sync_docs_requests_total Number of replication initial sync docs requests +# TYPE arangodb_replication_initial_sync_docs_requests_total counter +arangodb_replication_initial_sync_docs_requests_total{role="SINGLE"} 0 +# HELP arangodb_replication_initial_sync_keys_requests_total Number of replication initial sync keys requests +# TYPE arangodb_replication_initial_sync_keys_requests_total counter +arangodb_replication_initial_sync_keys_requests_total{role="SINGLE"} 0 +# HELP arangodb_replication_synchronous_requests_total_number_total Total number of synchronous replication requests +# TYPE arangodb_replication_synchronous_requests_total_number_total counter +arangodb_replication_synchronous_requests_total_number_total{role="SINGLE"} 0 +# HELP arangodb_replication_synchronous_requests_total_time_total Total time needed for all synchronous replication requests [ns] +# TYPE arangodb_replication_synchronous_requests_total_time_total counter +arangodb_replication_synchronous_requests_total_time_total{role="SINGLE"} 0 +# HELP arangodb_replication_tailing_apply_time_total Time needed to apply replication tailing data [ms] +# TYPE arangodb_replication_tailing_apply_time_total counter +arangodb_replication_tailing_apply_time_total{role="SINGLE"} 0 +# HELP arangodb_replication_tailing_bytes_received_total Number of bytes received for replication tailing requests +# TYPE arangodb_replication_tailing_bytes_received_total counter +arangodb_replication_tailing_bytes_received_total{role="SINGLE"} 0 +# HELP arangodb_replication_tailing_documents_total Number of replication tailing document inserts/replaces processed +# TYPE arangodb_replication_tailing_documents_total counter +arangodb_replication_tailing_documents_total{role="SINGLE"} 0 +# HELP arangodb_replication_tailing_follow_tick_failures_total Number of replication tailing failures due to missing tick on leader +# TYPE arangodb_replication_tailing_follow_tick_failures_total counter +arangodb_replication_tailing_follow_tick_failures_total{role="SINGLE"} 0 +# HELP arangodb_replication_tailing_markers_total Number of replication tailing markers processed +# TYPE arangodb_replication_tailing_markers_total counter +arangodb_replication_tailing_markers_total{role="SINGLE"} 0 +# HELP arangodb_replication_tailing_removals_total Number of replication tailing document removals processed +# TYPE arangodb_replication_tailing_removals_total counter +arangodb_replication_tailing_removals_total{role="SINGLE"} 0 +# HELP arangodb_replication_tailing_request_time_total Wait time for replication tailing requests [ms] +# TYPE arangodb_replication_tailing_request_time_total counter +arangodb_replication_tailing_request_time_total{role="SINGLE"} 0 +# HELP arangodb_replication_tailing_requests_total Number of replication tailing requests +# TYPE arangodb_replication_tailing_requests_total counter +arangodb_replication_tailing_requests_total{role="SINGLE"} 0 +# HELP arangodb_request_body_size_http1 Body size of HTTP/1.1 requests +# TYPE arangodb_request_body_size_http1 histogram +arangodb_request_body_size_http1_bucket{role="SINGLE",le="191"} 884 +arangodb_request_body_size_http1_bucket{role="SINGLE",le="319"} 888 +arangodb_request_body_size_http1_bucket{role="SINGLE",le="575"} 888 +arangodb_request_body_size_http1_bucket{role="SINGLE",le="1087"} 888 +arangodb_request_body_size_http1_bucket{role="SINGLE",le="2110"} 888 +arangodb_request_body_size_http1_bucket{role="SINGLE",le="4156"} 888 +arangodb_request_body_size_http1_bucket{role="SINGLE",le="8248"} 888 +arangodb_request_body_size_http1_bucket{role="SINGLE",le="16432"} 888 +arangodb_request_body_size_http1_bucket{role="SINGLE",le="32800"} 888 +arangodb_request_body_size_http1_bucket{role="SINGLE",le="+Inf"} 888 +arangodb_request_body_size_http1_count{role="SINGLE"} 888 +arangodb_request_body_size_http1_sum{role="SINGLE"} 20955 +# HELP arangodb_request_body_size_http2 Body size of HTTP/2 requests +# TYPE arangodb_request_body_size_http2 histogram +arangodb_request_body_size_http2_bucket{role="SINGLE",le="191"} 0 +arangodb_request_body_size_http2_bucket{role="SINGLE",le="319"} 0 +arangodb_request_body_size_http2_bucket{role="SINGLE",le="575"} 0 +arangodb_request_body_size_http2_bucket{role="SINGLE",le="1087"} 0 +arangodb_request_body_size_http2_bucket{role="SINGLE",le="2110"} 0 +arangodb_request_body_size_http2_bucket{role="SINGLE",le="4156"} 0 +arangodb_request_body_size_http2_bucket{role="SINGLE",le="8248"} 0 +arangodb_request_body_size_http2_bucket{role="SINGLE",le="16432"} 0 +arangodb_request_body_size_http2_bucket{role="SINGLE",le="32800"} 0 +arangodb_request_body_size_http2_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_request_body_size_http2_count{role="SINGLE"} 0 +arangodb_request_body_size_http2_sum{role="SINGLE"} 0 +# HELP arangodb_request_statistics_memory_usage Memory used by the internal request statistics +# TYPE arangodb_request_statistics_memory_usage gauge +arangodb_request_statistics_memory_usage{role="SINGLE"} 0 +# HELP arangodb_requests_memory_usage Memory consumed by incoming requests +# TYPE arangodb_requests_memory_usage gauge +arangodb_requests_memory_usage{role="SINGLE"} 6112 +# HELP arangodb_revision_tree_buffered_memory_usage Total memory consumed by buffered updates for all revision trees +# TYPE arangodb_revision_tree_buffered_memory_usage gauge +arangodb_revision_tree_buffered_memory_usage{role="SINGLE"} 19584 +# HELP arangodb_revision_tree_hibernations_total Number of revision tree hibernations +# TYPE arangodb_revision_tree_hibernations_total counter +arangodb_revision_tree_hibernations_total{role="SINGLE"} 4 +# HELP arangodb_revision_tree_memory_usage Total memory consumed by all revision trees +# TYPE arangodb_revision_tree_memory_usage gauge +arangodb_revision_tree_memory_usage{role="SINGLE"} 328722 +# HELP arangodb_revision_tree_rebuilds_failure_total Number of failed revision tree rebuilds +# TYPE arangodb_revision_tree_rebuilds_failure_total counter +arangodb_revision_tree_rebuilds_failure_total{role="SINGLE"} 0 +# HELP arangodb_revision_tree_rebuilds_success_total Number of successful revision tree rebuilds +# TYPE arangodb_revision_tree_rebuilds_success_total counter +arangodb_revision_tree_rebuilds_success_total{role="SINGLE"} 0 +# HELP arangodb_revision_tree_resurrections_total Number of revision tree resurrections +# TYPE arangodb_revision_tree_resurrections_total counter +arangodb_revision_tree_resurrections_total{role="SINGLE"} 1 +# HELP arangodb_rocksdb_write_stalls_total Number of times RocksDB has entered a stalled (slowed) write state +# TYPE arangodb_rocksdb_write_stalls_total counter +arangodb_rocksdb_write_stalls_total{role="SINGLE"} 0 +# HELP arangodb_rocksdb_write_stops_total Number of times RocksDB has entered a stopped write state +# TYPE arangodb_rocksdb_write_stops_total counter +arangodb_rocksdb_write_stops_total{role="SINGLE"} 0 +# HELP arangodb_scheduler_handler_tasks_created_total Number of scheduler tasks created +# TYPE arangodb_scheduler_handler_tasks_created_total counter +arangodb_scheduler_handler_tasks_created_total{role="SINGLE"} 888 +# HELP arangodb_scheduler_high_prio_dequeue_hist High priority deque histogram [µs] +# TYPE arangodb_scheduler_high_prio_dequeue_hist histogram +arangodb_scheduler_high_prio_dequeue_hist_bucket{role="SINGLE",le="0.010000"} 0 +arangodb_scheduler_high_prio_dequeue_hist_bucket{role="SINGLE",le="0.100000"} 0 +arangodb_scheduler_high_prio_dequeue_hist_bucket{role="SINGLE",le="1.000000"} 0 +arangodb_scheduler_high_prio_dequeue_hist_bucket{role="SINGLE",le="10.000000"} 27 +arangodb_scheduler_high_prio_dequeue_hist_bucket{role="SINGLE",le="100.000000"} 135 +arangodb_scheduler_high_prio_dequeue_hist_bucket{role="SINGLE",le="1000.000000"} 135 +arangodb_scheduler_high_prio_dequeue_hist_bucket{role="SINGLE",le="10000.000000"} 135 +arangodb_scheduler_high_prio_dequeue_hist_bucket{role="SINGLE",le="100000.000000"} 135 +arangodb_scheduler_high_prio_dequeue_hist_bucket{role="SINGLE",le="1000000.000000"} 135 +arangodb_scheduler_high_prio_dequeue_hist_bucket{role="SINGLE",le="+Inf"} 135 +arangodb_scheduler_high_prio_dequeue_hist_count{role="SINGLE"} 135 +arangodb_scheduler_high_prio_dequeue_hist_sum{role="SINGLE"} 1709.000000 +# HELP arangodb_scheduler_high_prio_queue_length Current queue length of the high priority queue in the scheduler +# TYPE arangodb_scheduler_high_prio_queue_length gauge +arangodb_scheduler_high_prio_queue_length{role="SINGLE"} 0 +# HELP arangodb_scheduler_jobs_dequeued_total Total number of jobs dequeued +# TYPE arangodb_scheduler_jobs_dequeued_total counter +arangodb_scheduler_jobs_dequeued_total{role="SINGLE"} 1009 +# HELP arangodb_scheduler_jobs_done_total Total number of queue jobs done +# TYPE arangodb_scheduler_jobs_done_total counter +arangodb_scheduler_jobs_done_total{role="SINGLE"} 1007 +# HELP arangodb_scheduler_jobs_submitted_total Total number of jobs submitted to the scheduler +# TYPE arangodb_scheduler_jobs_submitted_total counter +arangodb_scheduler_jobs_submitted_total{role="SINGLE"} 1009 +# HELP arangodb_scheduler_low_prio_dequeue_hist Low priority deque histogram [µs] +# TYPE arangodb_scheduler_low_prio_dequeue_hist histogram +arangodb_scheduler_low_prio_dequeue_hist_bucket{role="SINGLE",le="0.010000"} 4 +arangodb_scheduler_low_prio_dequeue_hist_bucket{role="SINGLE",le="0.100000"} 4 +arangodb_scheduler_low_prio_dequeue_hist_bucket{role="SINGLE",le="1.000000"} 4 +arangodb_scheduler_low_prio_dequeue_hist_bucket{role="SINGLE",le="10.000000"} 384 +arangodb_scheduler_low_prio_dequeue_hist_bucket{role="SINGLE",le="100.000000"} 737 +arangodb_scheduler_low_prio_dequeue_hist_bucket{role="SINGLE",le="1000.000000"} 739 +arangodb_scheduler_low_prio_dequeue_hist_bucket{role="SINGLE",le="10000.000000"} 739 +arangodb_scheduler_low_prio_dequeue_hist_bucket{role="SINGLE",le="100000.000000"} 739 +arangodb_scheduler_low_prio_dequeue_hist_bucket{role="SINGLE",le="1000000.000000"} 739 +arangodb_scheduler_low_prio_dequeue_hist_bucket{role="SINGLE",le="+Inf"} 739 +arangodb_scheduler_low_prio_dequeue_hist_count{role="SINGLE"} 739 +arangodb_scheduler_low_prio_dequeue_hist_sum{role="SINGLE"} 8924.000000 +# HELP arangodb_scheduler_low_prio_queue_last_dequeue_time Last recorded dequeue time for a low priority queue item [ms] +# TYPE arangodb_scheduler_low_prio_queue_last_dequeue_time gauge +arangodb_scheduler_low_prio_queue_last_dequeue_time{role="SINGLE"} 0 +# HELP arangodb_scheduler_low_prio_queue_length Current queue length of the low priority queue in the scheduler +# TYPE arangodb_scheduler_low_prio_queue_length gauge +arangodb_scheduler_low_prio_queue_length{role="SINGLE"} 0 +# HELP arangodb_scheduler_maintenance_prio_dequeue_hist Maintenance priority deque histogram [µs] +# TYPE arangodb_scheduler_maintenance_prio_dequeue_hist histogram +arangodb_scheduler_maintenance_prio_dequeue_hist_bucket{role="SINGLE",le="0.010000"} 0 +arangodb_scheduler_maintenance_prio_dequeue_hist_bucket{role="SINGLE",le="0.100000"} 0 +arangodb_scheduler_maintenance_prio_dequeue_hist_bucket{role="SINGLE",le="1.000000"} 0 +arangodb_scheduler_maintenance_prio_dequeue_hist_bucket{role="SINGLE",le="10.000000"} 30 +arangodb_scheduler_maintenance_prio_dequeue_hist_bucket{role="SINGLE",le="100.000000"} 178 +arangodb_scheduler_maintenance_prio_dequeue_hist_bucket{role="SINGLE",le="1000.000000"} 178 +arangodb_scheduler_maintenance_prio_dequeue_hist_bucket{role="SINGLE",le="10000.000000"} 178 +arangodb_scheduler_maintenance_prio_dequeue_hist_bucket{role="SINGLE",le="100000.000000"} 178 +arangodb_scheduler_maintenance_prio_dequeue_hist_bucket{role="SINGLE",le="1000000.000000"} 178 +arangodb_scheduler_maintenance_prio_dequeue_hist_bucket{role="SINGLE",le="+Inf"} 178 +arangodb_scheduler_maintenance_prio_dequeue_hist_count{role="SINGLE"} 178 +arangodb_scheduler_maintenance_prio_dequeue_hist_sum{role="SINGLE"} 2222.000000 +# HELP arangodb_scheduler_maintenance_prio_queue_length Current queue length of the maintenance priority queue in the scheduler +# TYPE arangodb_scheduler_maintenance_prio_queue_length gauge +arangodb_scheduler_maintenance_prio_queue_length{role="SINGLE"} 0 +# HELP arangodb_scheduler_medium_prio_dequeue_hist Medium priority deque histogram [µs] +# TYPE arangodb_scheduler_medium_prio_dequeue_hist histogram +arangodb_scheduler_medium_prio_dequeue_hist_bucket{role="SINGLE",le="0.010000"} 0 +arangodb_scheduler_medium_prio_dequeue_hist_bucket{role="SINGLE",le="0.100000"} 0 +arangodb_scheduler_medium_prio_dequeue_hist_bucket{role="SINGLE",le="1.000000"} 0 +arangodb_scheduler_medium_prio_dequeue_hist_bucket{role="SINGLE",le="10.000000"} 0 +arangodb_scheduler_medium_prio_dequeue_hist_bucket{role="SINGLE",le="100.000000"} 0 +arangodb_scheduler_medium_prio_dequeue_hist_bucket{role="SINGLE",le="1000.000000"} 0 +arangodb_scheduler_medium_prio_dequeue_hist_bucket{role="SINGLE",le="10000.000000"} 0 +arangodb_scheduler_medium_prio_dequeue_hist_bucket{role="SINGLE",le="100000.000000"} 0 +arangodb_scheduler_medium_prio_dequeue_hist_bucket{role="SINGLE",le="1000000.000000"} 0 +arangodb_scheduler_medium_prio_dequeue_hist_bucket{role="SINGLE",le="+Inf"} 0 +arangodb_scheduler_medium_prio_dequeue_hist_count{role="SINGLE"} 0 +arangodb_scheduler_medium_prio_dequeue_hist_sum{role="SINGLE"} 0.000000 +# HELP arangodb_scheduler_medium_prio_queue_length Current queue length of the medium priority queue in the scheduler +# TYPE arangodb_scheduler_medium_prio_queue_length gauge +arangodb_scheduler_medium_prio_queue_length{role="SINGLE"} 0 +# HELP arangodb_scheduler_num_awake_threads Number of awake worker threads +# TYPE arangodb_scheduler_num_awake_threads gauge +arangodb_scheduler_num_awake_threads{role="SINGLE"} 2 +# HELP arangodb_scheduler_num_detached_threads Number of detached worker threads +# TYPE arangodb_scheduler_num_detached_threads gauge +arangodb_scheduler_num_detached_threads{role="SINGLE"} 0 +# HELP arangodb_scheduler_num_worker_threads Number of worker threads +# TYPE arangodb_scheduler_num_worker_threads gauge +arangodb_scheduler_num_worker_threads{role="SINGLE"} 4 +# HELP arangodb_scheduler_num_working_threads Number of working threads +# TYPE arangodb_scheduler_num_working_threads gauge +arangodb_scheduler_num_working_threads{role="SINGLE"} 2 +# HELP arangodb_scheduler_ongoing_low_prio Total number of ongoing RestHandlers coming from the low prio queue +# TYPE arangodb_scheduler_ongoing_low_prio gauge +arangodb_scheduler_ongoing_low_prio{role="SINGLE"} 2 +# HELP arangodb_scheduler_queue_full_failures_total Tasks dropped and not added to internal queue +# TYPE arangodb_scheduler_queue_full_failures_total counter +arangodb_scheduler_queue_full_failures_total{role="SINGLE"} 0 +# HELP arangodb_scheduler_queue_length Server's internal queue length +# TYPE arangodb_scheduler_queue_length gauge +arangodb_scheduler_queue_length{role="SINGLE"} 0 +# HELP arangodb_scheduler_queue_memory_usage Number of bytes allocated for tasks in the scheduler queue +# TYPE arangodb_scheduler_queue_memory_usage gauge +arangodb_scheduler_queue_memory_usage{role="SINGLE"} 176 +# HELP arangodb_scheduler_queue_time_violations_total Tasks dropped because the client-requested queue time restriction would be violated +# TYPE arangodb_scheduler_queue_time_violations_total counter +arangodb_scheduler_queue_time_violations_total{role="SINGLE"} 0 +# HELP arangodb_scheduler_stack_memory_usage Approximate stack memory usage of worker threads +# TYPE arangodb_scheduler_stack_memory_usage gauge +arangodb_scheduler_stack_memory_usage{role="SINGLE"} 16000000 +# HELP arangodb_scheduler_threads_started_total Number of scheduler threads started +# TYPE arangodb_scheduler_threads_started_total counter +arangodb_scheduler_threads_started_total{role="SINGLE"} 4 +# HELP arangodb_scheduler_threads_stopped_total Number of scheduler threads stopped +# TYPE arangodb_scheduler_threads_stopped_total counter +arangodb_scheduler_threads_stopped_total{role="SINGLE"} 0 +# HELP arangodb_search_columns_cache_size ArangoSearch columns cache usage in bytes +# TYPE arangodb_search_columns_cache_size gauge +arangodb_search_columns_cache_size{role="SINGLE"} 0 +# HELP arangodb_search_execution_threads_demand Number of Arangosearch parallel execution threads requested by queries. +# TYPE arangodb_search_execution_threads_demand gauge +arangodb_search_execution_threads_demand{role="SINGLE"} 0 +# HELP arangodb_search_num_out_of_sync_links Number of arangosearch links/indexes currently out of sync +# TYPE arangodb_search_num_out_of_sync_links gauge +arangodb_search_num_out_of_sync_links{role="SINGLE"} 0 +# HELP arangodb_transactions_aborted_total Number of transactions aborted +# TYPE arangodb_transactions_aborted_total counter +arangodb_transactions_aborted_total{role="SINGLE"} 59 +# HELP arangodb_transactions_committed_total Number of transactions committed +# TYPE arangodb_transactions_committed_total counter +arangodb_transactions_committed_total{role="SINGLE"} 842 +# HELP arangodb_transactions_expired_total Total number of expired transactions +# TYPE arangodb_transactions_expired_total counter +arangodb_transactions_expired_total{role="SINGLE"} 0 +# HELP arangodb_transactions_internal_memory_usage Memory usage of internal transactions +# TYPE arangodb_transactions_internal_memory_usage gauge +arangodb_transactions_internal_memory_usage{role="SINGLE"} 0 +# HELP arangodb_transactions_rest_memory_usage Memory usage of transactions (excl. AQL queries) +# TYPE arangodb_transactions_rest_memory_usage gauge +arangodb_transactions_rest_memory_usage{role="SINGLE"} 0 +# HELP arangodb_transactions_started_total Number of transactions started +# TYPE arangodb_transactions_started_total counter +arangodb_transactions_started_total{role="SINGLE"} 563 +# HELP arangodb_v8_context_created_total V8 contexts created +# TYPE arangodb_v8_context_created_total counter +arangodb_v8_context_created_total{role="SINGLE"} 4 +# HELP arangodb_v8_context_creation_time_msec_total Total time for creating V8 contexts [ms] +# TYPE arangodb_v8_context_creation_time_msec_total counter +arangodb_v8_context_creation_time_msec_total{role="SINGLE"} 18 +# HELP arangodb_v8_context_destroyed_total V8 contexts destroyed +# TYPE arangodb_v8_context_destroyed_total counter +arangodb_v8_context_destroyed_total{role="SINGLE"} 0 +# HELP arangodb_v8_context_enter_failures_total V8 context enter failures +# TYPE arangodb_v8_context_enter_failures_total counter +arangodb_v8_context_enter_failures_total{role="SINGLE"} 0 +# HELP arangodb_v8_context_entered_total V8 context enter events +# TYPE arangodb_v8_context_entered_total counter +arangodb_v8_context_entered_total{role="SINGLE"} 54 +# HELP arangodb_v8_context_exited_total V8 context exit events +# TYPE arangodb_v8_context_exited_total counter +arangodb_v8_context_exited_total{role="SINGLE"} 52 +# HELP arangodb_vocbase_shards_read_only_by_write_concern Number of shards that are in read-only mode because the number of in-sync replicas is lower than the write-concern +# TYPE arangodb_vocbase_shards_read_only_by_write_concern gauge +arangodb_vocbase_shards_read_only_by_write_concern{role="SINGLE",database="Z"} 0 +arangodb_vocbase_shards_read_only_by_write_concern{role="SINGLE",database="_system"} 25 +# HELP rocksdb_archived_wal_files Number of archived RocksDB WAL files +# TYPE rocksdb_archived_wal_files gauge +rocksdb_archived_wal_files{role="SINGLE"} 12 +# HELP rocksdb_archived_wal_files_size Cumulated size of archived RocksDB WAL files +# TYPE rocksdb_archived_wal_files_size gauge +rocksdb_archived_wal_files_size{role="SINGLE"} 7860577 +# HELP rocksdb_cache_auto_refill_dropped_total Total number of dropped items for in-memory cache refilling +# TYPE rocksdb_cache_auto_refill_dropped_total counter +rocksdb_cache_auto_refill_dropped_total{role="SINGLE"} 0 +# HELP rocksdb_cache_auto_refill_loaded_total Total number of auto-refilled in-memory cache items +# TYPE rocksdb_cache_auto_refill_loaded_total counter +rocksdb_cache_auto_refill_loaded_total{role="SINGLE"} 0 +# HELP rocksdb_cache_edge_compressed_inserts_total Number of compressed inserts into the edge cache +# TYPE rocksdb_cache_edge_compressed_inserts_total counter +rocksdb_cache_edge_compressed_inserts_total{role="SINGLE"} 0 +# HELP rocksdb_cache_edge_empty_inserts_total Number of inserts into the edge cache that were an empty array +# TYPE rocksdb_cache_edge_empty_inserts_total counter +rocksdb_cache_edge_empty_inserts_total{role="SINGLE"} 3 +# HELP rocksdb_cache_edge_inserts_effective_entries_size_total Total effective memory size of all edge cache entries ever stored in memory (after compression) +# TYPE rocksdb_cache_edge_inserts_effective_entries_size_total counter +rocksdb_cache_edge_inserts_effective_entries_size_total{role="SINGLE"} 295 +# HELP rocksdb_cache_edge_inserts_total Number of inserts into the edge cache +# TYPE rocksdb_cache_edge_inserts_total counter +rocksdb_cache_edge_inserts_total{role="SINGLE"} 8 +# HELP rocksdb_cache_edge_inserts_uncompressed_entries_size_total Total gross memory size of all edge cache entries ever stored in memory +# TYPE rocksdb_cache_edge_inserts_uncompressed_entries_size_total counter +rocksdb_cache_edge_inserts_uncompressed_entries_size_total{role="SINGLE"} 295 +# HELP rocksdb_cache_full_index_refills_total Total number of completed full index cache refills +# TYPE rocksdb_cache_full_index_refills_total counter +rocksdb_cache_full_index_refills_total{role="SINGLE"} 0 +# HELP rocksdb_live_wal_files Number of live RocksDB WAL files +# TYPE rocksdb_live_wal_files gauge +rocksdb_live_wal_files{role="SINGLE"} 1 +# HELP rocksdb_live_wal_files_size Cumulated size of live RocksDB WAL files +# TYPE rocksdb_live_wal_files_size gauge +rocksdb_live_wal_files_size{role="SINGLE"} 136069 +# HELP rocksdb_prunable_wal_files Number of prunable RocksDB WAL files +# TYPE rocksdb_prunable_wal_files gauge +rocksdb_prunable_wal_files{role="SINGLE"} 0 +# HELP rocksdb_wal_pruning_active Whether or not RocksDB WAL file pruning is active +# TYPE rocksdb_wal_pruning_active gauge +rocksdb_wal_pruning_active{role="SINGLE"} 0 +# HELP rocksdb_wal_released_tick_flush Released tick for RocksDB WAL deletion (flush-induced) +# TYPE rocksdb_wal_released_tick_flush gauge +rocksdb_wal_released_tick_flush{role="SINGLE"} 181143 +# HELP rocksdb_wal_released_tick_replication Released tick for RocksDB WAL deletion (replication-induced) +# TYPE rocksdb_wal_released_tick_replication gauge +rocksdb_wal_released_tick_replication{role="SINGLE"} 181149 +# HELP rocksdb_wal_sequence_lower_bound RocksDB WAL sequence number until which background thread has caught up +# TYPE rocksdb_wal_sequence_lower_bound gauge +rocksdb_wal_sequence_lower_bound{role="SINGLE"} 180166 +# HELP arangodb_process_statistics_minor_page_faults_total The number of minor faults the process has made which have not required loading a memory page from disk +# TYPE arangodb_process_statistics_minor_page_faults_total counter +arangodb_process_statistics_minor_page_faults_total{role="SINGLE"} 133080 +# HELP arangodb_process_statistics_major_page_faults_total This figure contains the number of major faults the process has made which have required loading a memory page from disk +# TYPE arangodb_process_statistics_major_page_faults_total counter +arangodb_process_statistics_major_page_faults_total{role="SINGLE"} 0 +# HELP arangodb_process_statistics_user_time Amount of time that this process has been scheduled in user mode, measured in seconds +# TYPE arangodb_process_statistics_user_time gauge +arangodb_process_statistics_user_time{role="SINGLE"} 6.650000 +# HELP arangodb_process_statistics_system_time Amount of time that this process has been scheduled in kernel mode, measured in seconds +# TYPE arangodb_process_statistics_system_time gauge +arangodb_process_statistics_system_time{role="SINGLE"} 2.150000 +# HELP arangodb_process_statistics_number_of_threads Number of threads in the arangod process +# TYPE arangodb_process_statistics_number_of_threads gauge +arangodb_process_statistics_number_of_threads{role="SINGLE"} 63 +# HELP arangodb_process_statistics_resident_set_size The total size of the number of pages the process has in real memory. This is just the pages which count toward text, data, or stack space. This does not include pages which have not been demand-loaded in, or which are swapped out. The resident set size is reported in bytes +# TYPE arangodb_process_statistics_resident_set_size gauge +arangodb_process_statistics_resident_set_size{role="SINGLE"} 313597952 +# HELP arangodb_process_statistics_resident_set_size_percent The relative size of the number of pages the process has in real memory compared to system memory. This is just the pages which count toward text, data, or stack space. This does not include pages which have not been demand-loaded in, or which are swapped out. The value is a ratio between 0.00 and 1.00 +# TYPE arangodb_process_statistics_resident_set_size_percent gauge +arangodb_process_statistics_resident_set_size_percent{role="SINGLE"} 0.009557 +# HELP arangodb_process_statistics_virtual_memory_size This figure contains The size of the virtual memory the process is using +# TYPE arangodb_process_statistics_virtual_memory_size gauge +arangodb_process_statistics_virtual_memory_size{role="SINGLE"} 3399888896 +# HELP arangodb_server_statistics_physical_memory Physical memory in bytes +# TYPE arangodb_server_statistics_physical_memory gauge +arangodb_server_statistics_physical_memory{role="SINGLE"} 32812605440 +# HELP arangodb_server_statistics_server_uptime_total Number of seconds elapsed since server start +# TYPE arangodb_server_statistics_server_uptime_total counter +arangodb_server_statistics_server_uptime_total{role="SINGLE"} 41.112624 +# HELP arangodb_server_statistics_cpu_cores Number of CPU cores visible to the arangod process +# TYPE arangodb_server_statistics_cpu_cores gauge +arangodb_server_statistics_cpu_cores{role="SINGLE"} 8 +# HELP arangodb_server_statistics_user_percent Percentage of time that the system CPUs have spent in user mode +# TYPE arangodb_server_statistics_user_percent gauge +arangodb_server_statistics_user_percent{role="SINGLE"} 5.515174 +# HELP arangodb_server_statistics_system_percent Percentage of time that the system CPUs have spent in kernel mode +# TYPE arangodb_server_statistics_system_percent gauge +arangodb_server_statistics_system_percent{role="SINGLE"} 2.465018 +# HELP arangodb_server_statistics_idle_percent Percentage of time that the system CPUs have been idle +# TYPE arangodb_server_statistics_idle_percent gauge +arangodb_server_statistics_idle_percent{role="SINGLE"} 90.641135 +# HELP arangodb_server_statistics_iowait_percent Percentage of time that the system CPUs have been waiting for I/O +# TYPE arangodb_server_statistics_iowait_percent gauge +arangodb_server_statistics_iowait_percent{role="SINGLE"} 1.213444 +# HELP arangodb_client_connection_statistics_client_connections The number of client connections that are currently open +# TYPE arangodb_client_connection_statistics_client_connections gauge +arangodb_client_connection_statistics_client_connections{role="SINGLE"} 1 +# HELP arangodb_client_connection_statistics_connection_time Total connection time of a client +# TYPE arangodb_client_connection_statistics_connection_time histogram +arangodb_client_connection_statistics_connection_time_bucket{le="0.01",role="SINGLE"} 0 +arangodb_client_connection_statistics_connection_time_bucket{le="1.0",role="SINGLE"} 0 +arangodb_client_connection_statistics_connection_time_bucket{le="60.0",role="SINGLE"} 0 +arangodb_client_connection_statistics_connection_time_bucket{le="+Inf",role="SINGLE"} 0 +arangodb_client_connection_statistics_connection_time_count{role="SINGLE"} 0 +arangodb_client_connection_statistics_connection_time_sum{role="SINGLE"} 0.000000 +# HELP arangodb_client_connection_statistics_total_time Total time needed to answer a request +# TYPE arangodb_client_connection_statistics_total_time histogram +arangodb_client_connection_statistics_total_time_bucket{le="0.01",role="SINGLE"} 872 +arangodb_client_connection_statistics_total_time_bucket{le="0.05",role="SINGLE"} 879 +arangodb_client_connection_statistics_total_time_bucket{le="0.1",role="SINGLE"} 881 +arangodb_client_connection_statistics_total_time_bucket{le="0.2",role="SINGLE"} 881 +arangodb_client_connection_statistics_total_time_bucket{le="0.5",role="SINGLE"} 882 +arangodb_client_connection_statistics_total_time_bucket{le="1.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_total_time_bucket{le="5.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_total_time_bucket{le="15.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_total_time_bucket{le="30.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_total_time_bucket{le="+Inf",role="SINGLE"} 882 +arangodb_client_connection_statistics_total_time_count{role="SINGLE"} 882 +arangodb_client_connection_statistics_total_time_sum{role="SINGLE"} 0.851063 +# HELP arangodb_client_connection_statistics_request_time Request time needed to answer a request +# TYPE arangodb_client_connection_statistics_request_time histogram +arangodb_client_connection_statistics_request_time_bucket{le="0.01",role="SINGLE"} 872 +arangodb_client_connection_statistics_request_time_bucket{le="0.05",role="SINGLE"} 879 +arangodb_client_connection_statistics_request_time_bucket{le="0.1",role="SINGLE"} 881 +arangodb_client_connection_statistics_request_time_bucket{le="0.2",role="SINGLE"} 881 +arangodb_client_connection_statistics_request_time_bucket{le="0.5",role="SINGLE"} 882 +arangodb_client_connection_statistics_request_time_bucket{le="1.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_request_time_bucket{le="5.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_request_time_bucket{le="15.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_request_time_bucket{le="30.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_request_time_bucket{le="+Inf",role="SINGLE"} 882 +arangodb_client_connection_statistics_request_time_count{role="SINGLE"} 882 +arangodb_client_connection_statistics_request_time_sum{role="SINGLE"} 0.778827 +# HELP arangodb_client_connection_statistics_queue_time Request time needed to answer a request +# TYPE arangodb_client_connection_statistics_queue_time histogram +arangodb_client_connection_statistics_queue_time_bucket{le="0.01",role="SINGLE"} 882 +arangodb_client_connection_statistics_queue_time_bucket{le="0.05",role="SINGLE"} 882 +arangodb_client_connection_statistics_queue_time_bucket{le="0.1",role="SINGLE"} 882 +arangodb_client_connection_statistics_queue_time_bucket{le="0.2",role="SINGLE"} 882 +arangodb_client_connection_statistics_queue_time_bucket{le="0.5",role="SINGLE"} 882 +arangodb_client_connection_statistics_queue_time_bucket{le="1.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_queue_time_bucket{le="5.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_queue_time_bucket{le="15.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_queue_time_bucket{le="30.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_queue_time_bucket{le="+Inf",role="SINGLE"} 882 +arangodb_client_connection_statistics_queue_time_count{role="SINGLE"} 882 +arangodb_client_connection_statistics_queue_time_sum{role="SINGLE"} 0.012891 +# HELP arangodb_client_connection_statistics_io_time Request time needed to answer a request +# TYPE arangodb_client_connection_statistics_io_time histogram +arangodb_client_connection_statistics_io_time_bucket{le="0.01",role="SINGLE"} 882 +arangodb_client_connection_statistics_io_time_bucket{le="0.05",role="SINGLE"} 882 +arangodb_client_connection_statistics_io_time_bucket{le="0.1",role="SINGLE"} 882 +arangodb_client_connection_statistics_io_time_bucket{le="0.2",role="SINGLE"} 882 +arangodb_client_connection_statistics_io_time_bucket{le="0.5",role="SINGLE"} 882 +arangodb_client_connection_statistics_io_time_bucket{le="1.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_io_time_bucket{le="5.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_io_time_bucket{le="15.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_io_time_bucket{le="30.0",role="SINGLE"} 882 +arangodb_client_connection_statistics_io_time_bucket{le="+Inf",role="SINGLE"} 882 +arangodb_client_connection_statistics_io_time_count{role="SINGLE"} 882 +arangodb_client_connection_statistics_io_time_sum{role="SINGLE"} 0.059345 +# HELP arangodb_client_connection_statistics_bytes_sent Bytes sent for responses +# TYPE arangodb_client_connection_statistics_bytes_sent histogram +arangodb_client_connection_statistics_bytes_sent_bucket{le="250",role="SINGLE"} 6 +arangodb_client_connection_statistics_bytes_sent_bucket{le="1000",role="SINGLE"} 792 +arangodb_client_connection_statistics_bytes_sent_bucket{le="2000",role="SINGLE"} 855 +arangodb_client_connection_statistics_bytes_sent_bucket{le="5000",role="SINGLE"} 882 +arangodb_client_connection_statistics_bytes_sent_bucket{le="10000",role="SINGLE"} 882 +arangodb_client_connection_statistics_bytes_sent_bucket{le="+Inf",role="SINGLE"} 882 +arangodb_client_connection_statistics_bytes_sent_count{role="SINGLE"} 882 +arangodb_client_connection_statistics_bytes_sent_sum{role="SINGLE"} 659555 +# HELP arangodb_client_connection_statistics_bytes_received Bytes received for requests +# TYPE arangodb_client_connection_statistics_bytes_received histogram +arangodb_client_connection_statistics_bytes_received_bucket{le="250",role="SINGLE"} 657 +arangodb_client_connection_statistics_bytes_received_bucket{le="1000",role="SINGLE"} 882 +arangodb_client_connection_statistics_bytes_received_bucket{le="2000",role="SINGLE"} 882 +arangodb_client_connection_statistics_bytes_received_bucket{le="5000",role="SINGLE"} 882 +arangodb_client_connection_statistics_bytes_received_bucket{le="10000",role="SINGLE"} 882 +arangodb_client_connection_statistics_bytes_received_bucket{le="+Inf",role="SINGLE"} 882 +arangodb_client_connection_statistics_bytes_received_count{role="SINGLE"} 882 +arangodb_client_connection_statistics_bytes_received_sum{role="SINGLE"} 197611 +# HELP arangodb_client_user_connection_statistics_bytes_sent Bytes sent for responses, only user traffic +# TYPE arangodb_client_user_connection_statistics_bytes_sent histogram +arangodb_client_user_connection_statistics_bytes_sent_bucket{le="250",role="SINGLE"} 6 +arangodb_client_user_connection_statistics_bytes_sent_bucket{le="1000",role="SINGLE"} 792 +arangodb_client_user_connection_statistics_bytes_sent_bucket{le="2000",role="SINGLE"} 855 +arangodb_client_user_connection_statistics_bytes_sent_bucket{le="5000",role="SINGLE"} 882 +arangodb_client_user_connection_statistics_bytes_sent_bucket{le="10000",role="SINGLE"} 882 +arangodb_client_user_connection_statistics_bytes_sent_bucket{le="+Inf",role="SINGLE"} 882 +arangodb_client_user_connection_statistics_bytes_sent_count{role="SINGLE"} 882 +arangodb_client_user_connection_statistics_bytes_sent_sum{role="SINGLE"} 659555 +# HELP arangodb_client_user_connection_statistics_bytes_received Bytes received for requests, only user traffic +# TYPE arangodb_client_user_connection_statistics_bytes_received histogram +arangodb_client_user_connection_statistics_bytes_received_bucket{le="250",role="SINGLE"} 657 +arangodb_client_user_connection_statistics_bytes_received_bucket{le="1000",role="SINGLE"} 882 +arangodb_client_user_connection_statistics_bytes_received_bucket{le="2000",role="SINGLE"} 882 +arangodb_client_user_connection_statistics_bytes_received_bucket{le="5000",role="SINGLE"} 882 +arangodb_client_user_connection_statistics_bytes_received_bucket{le="10000",role="SINGLE"} 882 +arangodb_client_user_connection_statistics_bytes_received_bucket{le="+Inf",role="SINGLE"} 882 +arangodb_client_user_connection_statistics_bytes_received_count{role="SINGLE"} 882 +arangodb_client_user_connection_statistics_bytes_received_sum{role="SINGLE"} 197611 +# HELP arangodb_http_request_statistics_async_requests_total Number of asynchronously executed HTTP requests +# TYPE arangodb_http_request_statistics_async_requests_total counter +arangodb_http_request_statistics_async_requests_total{role="SINGLE"} 6 +# HELP arangodb_http_request_statistics_http_delete_requests_total Number of HTTP DELETE requests +# TYPE arangodb_http_request_statistics_http_delete_requests_total counter +arangodb_http_request_statistics_http_delete_requests_total{role="SINGLE"} 95 +# HELP arangodb_http_request_statistics_http_get_requests_total Number of HTTP GET requests +# TYPE arangodb_http_request_statistics_http_get_requests_total counter +arangodb_http_request_statistics_http_get_requests_total{role="SINGLE"} 318 +# HELP arangodb_http_request_statistics_http_head_requests_total Number of HTTP HEAD requests +# TYPE arangodb_http_request_statistics_http_head_requests_total counter +arangodb_http_request_statistics_http_head_requests_total{role="SINGLE"} 0 +# HELP arangodb_http_request_statistics_http_options_requests_total Number of HTTP OPTIONS requests +# TYPE arangodb_http_request_statistics_http_options_requests_total counter +arangodb_http_request_statistics_http_options_requests_total{role="SINGLE"} 0 +# HELP arangodb_http_request_statistics_http_patch_requests_total Number of HTTP PATCH requests +# TYPE arangodb_http_request_statistics_http_patch_requests_total counter +arangodb_http_request_statistics_http_patch_requests_total{role="SINGLE"} 3 +# HELP arangodb_http_request_statistics_http_post_requests_total Number of HTTP POST requests +# TYPE arangodb_http_request_statistics_http_post_requests_total counter +arangodb_http_request_statistics_http_post_requests_total{role="SINGLE"} 439 +# HELP arangodb_http_request_statistics_http_put_requests_total Number of HTTP PUT requests +# TYPE arangodb_http_request_statistics_http_put_requests_total counter +arangodb_http_request_statistics_http_put_requests_total{role="SINGLE"} 27 +# HELP arangodb_http_request_statistics_other_http_requests_total Number of other HTTP requests +# TYPE arangodb_http_request_statistics_other_http_requests_total counter +arangodb_http_request_statistics_other_http_requests_total{role="SINGLE"} 0 +# HELP arangodb_http_request_statistics_total_requests_total Total number of HTTP requests +# TYPE arangodb_http_request_statistics_total_requests_total counter +arangodb_http_request_statistics_total_requests_total{role="SINGLE"} 882 +# HELP arangodb_http_request_statistics_superuser_requests_total Total number of HTTP requests executed by superuser/JWT +# TYPE arangodb_http_request_statistics_superuser_requests_total counter +arangodb_http_request_statistics_superuser_requests_total{role="SINGLE"} 0 +# HELP arangodb_http_request_statistics_user_requests_total Total number of HTTP requests executed by clients +# TYPE arangodb_http_request_statistics_user_requests_total counter +arangodb_http_request_statistics_user_requests_total{role="SINGLE"} 882 +# HELP arangodb_v8_context_alive Number of V8 contexts currently alive +# TYPE arangodb_v8_context_alive gauge +arangodb_v8_context_alive{role="SINGLE"} 4 +# HELP arangodb_v8_context_busy Number of V8 contexts currently busy +# TYPE arangodb_v8_context_busy gauge +arangodb_v8_context_busy{role="SINGLE"} 2 +# HELP arangodb_v8_context_dirty Number of V8 contexts currently dirty +# TYPE arangodb_v8_context_dirty gauge +arangodb_v8_context_dirty{role="SINGLE"} 0 +# HELP arangodb_v8_context_free Number of V8 contexts currently free +# TYPE arangodb_v8_context_free gauge +arangodb_v8_context_free{role="SINGLE"} 2 +# HELP arangodb_v8_context_min Minimum number of concurrent V8 contexts +# TYPE arangodb_v8_context_min gauge +arangodb_v8_context_min{role="SINGLE"} 1 +# HELP arangodb_v8_context_max Maximum number of concurrent V8 contexts +# TYPE arangodb_v8_context_max gauge +arangodb_v8_context_max{role="SINGLE"} 28 +# HELP rocksdb_num_files_at_level0 rocksdb_num_files_at_level0 +# TYPE rocksdb_num_files_at_level0 gauge +rocksdb_num_files_at_level0{role="SINGLE"} 3 +# HELP rocksdb_compression_ratio_at_level0 rocksdb_compression_ratio_at_level0 +# TYPE rocksdb_compression_ratio_at_level0 gauge +rocksdb_compression_ratio_at_level0{role="SINGLE"} 0 +# HELP rocksdb_num_files_at_level1 rocksdb_num_files_at_level1 +# TYPE rocksdb_num_files_at_level1 gauge +rocksdb_num_files_at_level1{role="SINGLE"} 0 +# HELP rocksdb_compression_ratio_at_level1 rocksdb_compression_ratio_at_level1 +# TYPE rocksdb_compression_ratio_at_level1 gauge +rocksdb_compression_ratio_at_level1{role="SINGLE"} 0 +# HELP rocksdb_num_files_at_level2 rocksdb_num_files_at_level2 +# TYPE rocksdb_num_files_at_level2 gauge +rocksdb_num_files_at_level2{role="SINGLE"} 0 +# HELP rocksdb_compression_ratio_at_level2 rocksdb_compression_ratio_at_level2 +# TYPE rocksdb_compression_ratio_at_level2 gauge +rocksdb_compression_ratio_at_level2{role="SINGLE"} 0 +# HELP rocksdb_num_files_at_level3 rocksdb_num_files_at_level3 +# TYPE rocksdb_num_files_at_level3 gauge +rocksdb_num_files_at_level3{role="SINGLE"} 0 +# HELP rocksdb_compression_ratio_at_level3 rocksdb_compression_ratio_at_level3 +# TYPE rocksdb_compression_ratio_at_level3 gauge +rocksdb_compression_ratio_at_level3{role="SINGLE"} 0 +# HELP rocksdb_num_files_at_level4 rocksdb_num_files_at_level4 +# TYPE rocksdb_num_files_at_level4 gauge +rocksdb_num_files_at_level4{role="SINGLE"} 0 +# HELP rocksdb_compression_ratio_at_level4 rocksdb_compression_ratio_at_level4 +# TYPE rocksdb_compression_ratio_at_level4 gauge +rocksdb_compression_ratio_at_level4{role="SINGLE"} 0 +# HELP rocksdb_num_files_at_level5 rocksdb_num_files_at_level5 +# TYPE rocksdb_num_files_at_level5 gauge +rocksdb_num_files_at_level5{role="SINGLE"} 0 +# HELP rocksdb_compression_ratio_at_level5 rocksdb_compression_ratio_at_level5 +# TYPE rocksdb_compression_ratio_at_level5 gauge +rocksdb_compression_ratio_at_level5{role="SINGLE"} 0 +# HELP rocksdb_num_files_at_level6 rocksdb_num_files_at_level6 +# TYPE rocksdb_num_files_at_level6 gauge +rocksdb_num_files_at_level6{role="SINGLE"} 4 +# HELP rocksdb_compression_ratio_at_level6 rocksdb_compression_ratio_at_level6 +# TYPE rocksdb_compression_ratio_at_level6 gauge +rocksdb_compression_ratio_at_level6{role="SINGLE"} 1 +# HELP rocksdb_total_sst_files rocksdb_total_sst_files +# TYPE rocksdb_total_sst_files gauge +rocksdb_total_sst_files{role="SINGLE"} 7 +# HELP rocksdb_num_immutable_mem_table rocksdb_num_immutable_mem_table +# TYPE rocksdb_num_immutable_mem_table gauge +rocksdb_num_immutable_mem_table{role="SINGLE"} 0 +# HELP rocksdb_num_immutable_mem_table_flushed rocksdb_num_immutable_mem_table_flushed +# TYPE rocksdb_num_immutable_mem_table_flushed gauge +rocksdb_num_immutable_mem_table_flushed{role="SINGLE"} 4 +# HELP rocksdb_mem_table_flush_pending rocksdb_mem_table_flush_pending +# TYPE rocksdb_mem_table_flush_pending gauge +rocksdb_mem_table_flush_pending{role="SINGLE"} 0 +# HELP rocksdb_compaction_pending rocksdb_compaction_pending +# TYPE rocksdb_compaction_pending gauge +rocksdb_compaction_pending{role="SINGLE"} 0 +# HELP rocksdb_background_errors rocksdb_background_errors +# TYPE rocksdb_background_errors gauge +rocksdb_background_errors{role="SINGLE"} 0 +# HELP rocksdb_cur_size_active_mem_table rocksdb_cur_size_active_mem_table +# TYPE rocksdb_cur_size_active_mem_table gauge +rocksdb_cur_size_active_mem_table{role="SINGLE"} 63983616 +# HELP rocksdb_cur_size_all_mem_tables rocksdb_cur_size_all_mem_tables +# TYPE rocksdb_cur_size_all_mem_tables gauge +rocksdb_cur_size_all_mem_tables{role="SINGLE"} 63983616 +# HELP rocksdb_size_all_mem_tables rocksdb_size_all_mem_tables +# TYPE rocksdb_size_all_mem_tables gauge +rocksdb_size_all_mem_tables{role="SINGLE"} 93355064 +# HELP rocksdb_num_entries_active_mem_table rocksdb_num_entries_active_mem_table +# TYPE rocksdb_num_entries_active_mem_table gauge +rocksdb_num_entries_active_mem_table{role="SINGLE"} 3483 +# HELP rocksdb_num_entries_imm_mem_tables rocksdb_num_entries_imm_mem_tables +# TYPE rocksdb_num_entries_imm_mem_tables gauge +rocksdb_num_entries_imm_mem_tables{role="SINGLE"} 0 +# HELP rocksdb_num_deletes_active_mem_table rocksdb_num_deletes_active_mem_table +# TYPE rocksdb_num_deletes_active_mem_table gauge +rocksdb_num_deletes_active_mem_table{role="SINGLE"} 1407 +# HELP rocksdb_num_deletes_imm_mem_tables rocksdb_num_deletes_imm_mem_tables +# TYPE rocksdb_num_deletes_imm_mem_tables gauge +rocksdb_num_deletes_imm_mem_tables{role="SINGLE"} 0 +# HELP rocksdb_estimate_num_keys rocksdb_estimate_num_keys +# TYPE rocksdb_estimate_num_keys gauge +rocksdb_estimate_num_keys{role="SINGLE"} 1363 +# HELP rocksdb_estimate_table_readers_mem rocksdb_estimate_table_readers_mem +# TYPE rocksdb_estimate_table_readers_mem gauge +rocksdb_estimate_table_readers_mem{role="SINGLE"} 13608 +# HELP rocksdb_num_snapshots rocksdb_num_snapshots +# TYPE rocksdb_num_snapshots gauge +rocksdb_num_snapshots{role="SINGLE"} 2 +# HELP rocksdb_oldest_snapshot_time rocksdb_oldest_snapshot_time +# TYPE rocksdb_oldest_snapshot_time gauge +rocksdb_oldest_snapshot_time{role="SINGLE"} 1724776427 +# HELP rocksdb_num_live_versions rocksdb_num_live_versions +# TYPE rocksdb_num_live_versions gauge +rocksdb_num_live_versions{role="SINGLE"} 10 +# HELP rocksdb_min_log_number_to_keep rocksdb_min_log_number_to_keep +# TYPE rocksdb_min_log_number_to_keep gauge +rocksdb_min_log_number_to_keep{role="SINGLE"} 130 +# HELP rocksdb_estimate_live_data_size rocksdb_estimate_live_data_size +# TYPE rocksdb_estimate_live_data_size gauge +rocksdb_estimate_live_data_size{role="SINGLE"} 77091 +# HELP rocksdb_live_sst_files_size rocksdb_live_sst_files_size +# TYPE rocksdb_live_sst_files_size gauge +rocksdb_live_sst_files_size{role="SINGLE"} 87044 +# HELP rocksdb_num_running_compactions rocksdb_num_running_compactions +# TYPE rocksdb_num_running_compactions gauge +rocksdb_num_running_compactions{role="SINGLE"} 0 +# HELP rocksdb_num_running_flushes rocksdb_num_running_flushes +# TYPE rocksdb_num_running_flushes gauge +rocksdb_num_running_flushes{role="SINGLE"} 0 +# HELP rocksdb_is_file_deletions_enabled rocksdb_is_file_deletions_enabled +# TYPE rocksdb_is_file_deletions_enabled gauge +rocksdb_is_file_deletions_enabled{role="SINGLE"} 1 +# HELP rocksdb_estimate_pending_compaction_bytes rocksdb_estimate_pending_compaction_bytes +# TYPE rocksdb_estimate_pending_compaction_bytes gauge +rocksdb_estimate_pending_compaction_bytes{role="SINGLE"} 0 +# HELP rocksdb_base_level rocksdb_base_level +# TYPE rocksdb_base_level gauge +rocksdb_base_level{role="SINGLE"} 6 +# HELP rocksdb_block_cache_capacity rocksdb_block_cache_capacity +# TYPE rocksdb_block_cache_capacity gauge +rocksdb_block_cache_capacity{role="SINGLE"} 9199536537 +# HELP rocksdb_block_cache_usage rocksdb_block_cache_usage +# TYPE rocksdb_block_cache_usage gauge +rocksdb_block_cache_usage{role="SINGLE"} 650928 +# HELP rocksdb_block_cache_pinned_usage rocksdb_block_cache_pinned_usage +# TYPE rocksdb_block_cache_pinned_usage gauge +rocksdb_block_cache_pinned_usage{role="SINGLE"} 524576 +# HELP rocksdb_total_sst_files_size rocksdb_total_sst_files_size +# TYPE rocksdb_total_sst_files_size gauge +rocksdb_total_sst_files_size{role="SINGLE"} 87044 +# HELP rocksdb_actual_delayed_write_rate rocksdb_actual_delayed_write_rate +# TYPE rocksdb_actual_delayed_write_rate gauge +rocksdb_actual_delayed_write_rate{role="SINGLE"} 0 +# HELP rocksdb_is_write_stopped rocksdb_is_write_stopped +# TYPE rocksdb_is_write_stopped gauge +rocksdb_is_write_stopped{role="SINGLE"} 0 +# HELP rocksdb_cache_limit rocksdb_cache_limit +# TYPE rocksdb_cache_limit gauge +rocksdb_cache_limit{role="SINGLE"} 7666280448 +# HELP rocksdb_cache_allocated rocksdb_cache_allocated +# TYPE rocksdb_cache_allocated gauge +rocksdb_cache_allocated{role="SINGLE"} 1347120 +# HELP rocksdb_cache_peak_allocated rocksdb_cache_peak_allocated +# TYPE rocksdb_cache_peak_allocated gauge +rocksdb_cache_peak_allocated{role="SINGLE"} 1380208 +# HELP rocksdb_cache_active_tables rocksdb_cache_active_tables +# TYPE rocksdb_cache_active_tables gauge +rocksdb_cache_active_tables{role="SINGLE"} 0 +# HELP rocksdb_cache_unused_memory rocksdb_cache_unused_memory +# TYPE rocksdb_cache_unused_memory gauge +rocksdb_cache_unused_memory{role="SINGLE"} 264256 +# HELP rocksdb_cache_unused_tables rocksdb_cache_unused_tables +# TYPE rocksdb_cache_unused_tables gauge +rocksdb_cache_unused_tables{role="SINGLE"} 8 +# HELP rocksdb_cache_migrate_tasks_total rocksdb_cache_migrate_tasks_total +# TYPE rocksdb_cache_migrate_tasks_total counter +rocksdb_cache_migrate_tasks_total{role="SINGLE"} 0 +# HELP rocksdb_cache_free_memory_tasks_total rocksdb_cache_free_memory_tasks_total +# TYPE rocksdb_cache_free_memory_tasks_total counter +rocksdb_cache_free_memory_tasks_total{role="SINGLE"} 0 +# HELP rocksdb_cache_migrate_tasks_duration_total rocksdb_cache_migrate_tasks_duration_total +# TYPE rocksdb_cache_migrate_tasks_duration_total counter +rocksdb_cache_migrate_tasks_duration_total{role="SINGLE"} 0 +# HELP rocksdb_cache_free_memory_tasks_duration_total rocksdb_cache_free_memory_tasks_duration_total +# TYPE rocksdb_cache_free_memory_tasks_duration_total counter +rocksdb_cache_free_memory_tasks_duration_total{role="SINGLE"} 0 +# HELP rocksdb_cache_edge_compression_ratio rocksdb_cache_edge_compression_ratio +# TYPE rocksdb_cache_edge_compression_ratio gauge +rocksdb_cache_edge_compression_ratio{role="SINGLE"} 0 +# HELP rocksdb_cache_hit_rate_lifetime rocksdb_cache_hit_rate_lifetime +# TYPE rocksdb_cache_hit_rate_lifetime gauge +rocksdb_cache_hit_rate_lifetime{role="SINGLE"} 0 +# HELP rocksdb_cache_hit_rate_recent rocksdb_cache_hit_rate_recent +# TYPE rocksdb_cache_hit_rate_recent gauge +rocksdb_cache_hit_rate_recent{role="SINGLE"} 0 +# HELP rocksdb_engine_throttle_bps rocksdb_engine_throttle_bps +# TYPE rocksdb_engine_throttle_bps gauge +rocksdb_engine_throttle_bps{role="SINGLE"} 0 +# HELP rocksdb_free_disk_space rocksdb_free_disk_space +# TYPE rocksdb_free_disk_space gauge +rocksdb_free_disk_space{role="SINGLE"} 138898845696 +# HELP rocksdb_total_disk_space rocksdb_total_disk_space +# TYPE rocksdb_total_disk_space gauge +rocksdb_total_disk_space{role="SINGLE"} 155897610240 +# HELP rocksdb_free_inodes rocksdb_free_inodes +# TYPE rocksdb_free_inodes gauge +rocksdb_free_inodes{role="SINGLE"} 18878939 +# HELP rocksdb_total_inodes rocksdb_total_inodes +# TYPE rocksdb_total_inodes gauge +rocksdb_total_inodes{role="SINGLE"} 19353600 +# HELP rocksdb_read_only rocksdb_read_only +# TYPE rocksdb_read_only gauge +rocksdb_read_only{role="SINGLE"} 0 +# HELP rocksdb_wal_sequence rocksdb_wal_sequence +# TYPE rocksdb_wal_sequence gauge +rocksdb_wal_sequence{role="SINGLE"} 183649 +# HELP arangodb_agency_node_memory_usage Memory used by agency store/cache +# TYPE arangodb_agency_node_memory_usage gauge +arangodb_agency_node_memory_usage{role="SINGLE"} 72