1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
|
.. _cephfs_metrics:
Metrics
=======
CephFS uses :ref:`Perf Counters` to track metrics. The counters can be labeled (:ref:`Labeled Perf Counters`).
Client Metrics
--------------
CephFS exports client metrics as :ref:`Labeled Perf Counters`, which could be used to monitor the client performance. CephFS exports the below client metrics.
.. list-table:: Client Metrics
:widths: 25 25 75
:header-rows: 1
* - Name
- Type
- Description
* - num_clients
- Gauge
- Number of client sessions
* - cap_hits
- Gauge
- Percentage of file capability hits over total number of caps
* - cap_miss
- Gauge
- Percentage of file capability misses over total number of caps
* - avg_read_latency
- Gauge
- Mean value of the read latencies
* - avg_write_latency
- Gauge
- Mean value of the write latencies
* - avg_metadata_latency
- Gauge
- Mean value of the metadata latencies
* - dentry_lease_hits
- Gauge
- Percentage of dentry lease hits handed out over the total dentry lease requests
* - dentry_lease_miss
- Gauge
- Percentage of dentry lease misses handed out over the total dentry lease requests
* - opened_files
- Gauge
- Number of opened files
* - opened_inodes
- Gauge
- Number of opened inodes
* - pinned_icaps
- Gauge
- Number of pinned Inode Caps
* - total_inodes
- Gauge
- Total number of Inodes
* - total_read_ops
- Gauge
- Total number of read operations generated by all process
* - total_read_size
- Gauge
- Number of bytes read in input/output operations generated by all process
* - total_write_ops
- Gauge
- Total number of write operations generated by all process
* - total_write_size
- Gauge
- Number of bytes written in input/output operations generated by all processes
Getting Metrics
===============
The metrics could be scraped from the MDS admin socket as well as using the tell interface. The ``mds_client_metrics-<fsname>`` section in the output of ``counter dump`` command displays the metrics for each client as shown below::
"mds_client_metrics": [
{
"labels": {
"fs_name": "<fsname>",
"id": "14213"
},
"counters": {
"num_clients": 2
}
}
],
"mds_client_metrics-<fsname>": [
{
"labels": {
"client": "client.0",
"rank": "0"
},
"counters": {
"cap_hits": 5149,
"cap_miss": 1,
"avg_read_latency": 0.000000000,
"avg_write_latency": 0.000000000,
"avg_metadata_latency": 0.000000000,
"dentry_lease_hits": 0,
"dentry_lease_miss": 0,
"opened_files": 1,
"opened_inodes": 2,
"pinned_icaps": 2,
"total_inodes": 2,
"total_read_ops": 0,
"total_read_size": 0,
"total_write_ops": 4836,
"total_write_size": 633864192
}
},
{
"labels": {
"client": "client.1",
"rank": "0"
},
"counters": {
"cap_hits": 3375,
"cap_miss": 8,
"avg_read_latency": 0.000000000,
"avg_write_latency": 0.000000000,
"avg_metadata_latency": 0.000000000,
"dentry_lease_hits": 0,
"dentry_lease_miss": 0,
"opened_files": 1,
"opened_inodes": 2,
"pinned_icaps": 2,
"total_inodes": 2,
"total_read_ops": 0,
"total_read_size": 0,
"total_write_ops": 3169,
"total_write_size": 415367168
}
}
]
|