Merge branch '16039-fuse-forward-slash-sub'
[arvados.git] / doc / admin / metrics.html.textile.liquid
1 ---
2 layout: default
3 navsection: admin
4 title: Metrics
5 ...
6
7 {% comment %}
8 Copyright (C) The Arvados Authors. All rights reserved.
9
10 SPDX-License-Identifier: CC-BY-SA-3.0
11 {% endcomment %}
12
13 Some Arvados services publish Prometheus/OpenMetrics-compatible metrics at @/metrics@. Metrics can help you understand how components perform under load, find performance bottlenecks, and detect and diagnose problems.
14
15 To access metrics endpoints, services must be configured with a "management token":management-token.html. When accessing a metrics endpoint, prefix the management token with @"Bearer "@ and supply it in the @Authorization@ request header.
16
17 <pre>curl -sfH "Authorization: Bearer your_management_token_goes_here" "https://0.0.0.0:25107/metrics"
18 </pre>
19
20 The plain text export format includes "help" messages with a description of each reported metric.
21
22 When configuring Prometheus, use a @bearer_token@ or @bearer_token_file@ option to authenticate requests.
23
24 <pre>scrape_configs:
25   - job_name: keepstore
26     bearer_token: your_management_token_goes_here
27     static_configs:
28     - targets:
29       - "keep0.ClusterID.example.com:25107"
30 </pre>
31
32 table(table table-bordered table-condensed table-hover).
33 |_. Component|_. Metrics endpoint|
34 |arvados-api-server||
35 |arvados-controller|✓|
36 |arvados-dispatch-cloud|✓|
37 |arvados-git-httpd||
38 |arvados-node-manager||
39 |arvados-ws||
40 |composer||
41 |keepproxy||
42 |keepstore|✓|
43 |keep-balance|✓|
44 |keep-web|✓|
45 |sso-provider||
46 |workbench1||
47 |workbench2||
48
49 h2. Node manager
50
51 The node manager does not export prometheus-style metrics, but its @/status.json@ endpoint provides a snapshot of internal status at the time of the most recent wishlist update.
52
53 <pre>curl -sfH "Authorization: Bearer your_management_token_goes_here" "http://0.0.0.0:8989/status.json"
54 </pre>
55
56 table(table table-bordered table-condensed).
57 |_. Attribute|_. Type|_. Description|
58 |nodes_booting|int|Number of nodes in booting state|
59 |nodes_unpaired|int|Number of nodes in unpaired state|
60 |nodes_busy|int|Number of nodes in busy state|
61 |nodes_idle|int|Number of nodes in idle state|
62 |nodes_fail|int|Number of nodes in fail state|
63 |nodes_down|int|Number of nodes in down state|
64 |nodes_shutdown|int|Number of nodes in shutdown state|
65 |nodes_wish|int|Number of nodes in the current wishlist|
66 |node_quota|int|Current node count ceiling due to cloud quota limits|
67 |config_max_nodes|int|Configured max node count|
68
69 h3. Example
70
71 <pre>
72 {
73   "actor_exceptions": 0,
74   "idle_times": {
75     "compute1": 0,
76     "compute3": 0,
77     "compute2": 0,
78     "compute4": 0
79   },
80   "create_node_errors": 0,
81   "destroy_node_errors": 0,
82   "nodes_idle": 0,
83   "config_max_nodes": 8,
84   "list_nodes_errors": 0,
85   "node_quota": 8,
86   "Version": "1.1.4.20180719160944",
87   "nodes_wish": 0,
88   "nodes_unpaired": 0,
89   "nodes_busy": 4,
90   "boot_failures": 0
91 }
92 </pre>