Метрики встроенного хранилища
Телеметрия хранилища Raft предоставляет информацию о встроенном хранилище StarVault.
1. Стандартные метрики
Далее в таблице перечислены стандартные метрики и их описания:
| Название метрики | Тип метрики | Единицы измерения | Описание | Примечание |
|---|---|---|---|---|
vault.raft.apply |
счетчик |
число |
Количество транзакций в настроенном интервале |
Метрика |
vault.raft.barrier |
счетчик |
число |
Количество раз, когда узел начал барьер |
Узел начинает барьер, выполняя блокирующий вызов, когда хочет убедиться, что все ожидающие операции, которые должны быть применены к конечному автомату, правильно поставлены в очередь. |
vault.raft.candidate.electSelf |
сводная |
мс |
Время, необходимое узлу для отправки запроса на голосование на другой узел |
--- |
vault.raft.commitNumLogs |
vault.raft.commitNumLogs |
число |
Количество журналов, обработанных для применения к конечному автомату в одной партии |
--- |
vault.raft.commitTime |
сводная |
мс |
Время, необходимое для фиксации новой записи в журнале Raft на узле-лидере. |
--- |
vault.raft.compactLogs |
сводная |
мс |
Время, необходимое для обрезки ненужных журналов |
--- |
vault.raft.fsm.apply |
сводная |
число |
Количество журналов, примененных конечным автоматом с момента последнего интервала |
--- |
vault.raft.fsm.applyBatch |
сводная |
мс |
Время, необходимое конечному автомату для применения последней партии журналов |
--- |
vault.raft.fsm.applyBatchNum |
счетчик |
число |
Количество журналов, примененных в последней партии |
--- |
vault.raft.fsm.enqueue |
сводная |
мс |
Время, необходимое для постановки партии журналов в очередь для применения конечным автоматом |
--- |
vault.raft.fsm.restore |
сводная |
мс |
Время, необходимое конечному автомату для завершения операции восстановления из снимка |
--- |
vault.raft.fsm.snapshot |
сводная |
мс |
Время, необходимое конечному автомату для записи информации о состоянии для текущего снимка |
--- |
vault.raft.fsm.store_config |
сводная |
мс |
Время, необходимое для сохранения последней конфигурации Raft |
--- |
vault.raft.get |
сводная |
мс |
Время, необходимое для получения записи из базового хранилища |
--- |
vault.raft.leader.dispatchLog |
timer |
мс |
Время, необходимое узлу-лидеру для записи записи журнала на диск |
--- |
vault.raft.leader.dispatchNumLogs |
датчик |
число |
Количество журналов, зафиксированных на диске в последней партии |
--- |
vault.raft.leader.lastContact |
сводная |
мс |
Время с момента последнего контакта лидера с резервными узлами при проверке аренды лидерства |
--- |
vault.raft.list |
сводная |
мс |
Время, необходимое для получения списка ключей из базового хранилища |
--- |
vault.raft.peers |
guage |
число |
Количество узлов в конфигурации кластера Raft |
--- |
vault.raft.replication.appendEntries.log |
сводная |
число |
Количество журналов, реплицированных на узел для установления паритета с журналами лидера |
--- |
vault.raft.replication.appendEntries.rpc |
timer |
мс |
Время, необходимое для репликации записей журнала узла-лидера на все резервные узлы с помощью |
--- |
vault.raft.replication.heartbeat |
timer |
мс |
Время, необходимое для вызова appendEntries на узле, чтобы узел не вышел из времени ожидания |
--- |
vault.raft.replication.installSnapshot |
timer |
мс |
Время, необходимое для обработки вызова RPC |
Только узлы, находящиеся в состоянии |
vault.raft.restore |
счетчик |
число |
Количество раз, когда узел выполнил операцию восстановления |
В контексте хранилища Raft операция восстановления относится к процессу, при котором Raft потребляет внешний снимок для восстановления своего состояния. |
vault.raft.restoreUserSnapshot |
timer |
мс |
Время, необходимое для восстановления конечного автомата из пользовательского снимка |
--- |
vault.raft.rpc.appendEntries |
timer |
мс |
Время, необходимое для обработки удаленного вызова |
--- |
vault.raft.rpc.appendEntries.processLogs |
timer |
мс |
Время, необходимое для полной обработки ожидающих журналов для данного узла |
--- |
vault.raft.rpc.appendEntries.storeLogs |
timer |
мс |
Время, необходимое для записи любых ожидающих журналов с момента последнего запроса на добавление записей для данного узла |
--- |
vault.raft.rpc.installSnapshot |
timer |
мс |
Время, необходимое для обработки вызова RPC |
Только узлы, находящиеся в состоянии follower, сообщают метрики |
vault.raft.rpc.processHeartbeat |
timer |
мс |
Время, необходимое для обработки запроса на проверку активности |
--- |
vault.raft.rpc.requestVote |
сводная |
мс |
Время, необходимое для завершения вызова |
--- |
vault.raft.snapshot.create |
timer |
мс |
Время, необходимое для создания нового снимка |
--- |
vault.raft.snapshot.persist |
timer |
мс |
Время, необходимое для записи метаинформации снимка на диск при создании снимков |
--- |
vault.raft.snapshot.takeSnapshot |
timer |
мс |
Общее время, необходимое для создания и сохранения текущего снимка |
В большинстве случаев |
vault.raft.state.candidate |
счетчик |
число |
Количество раз, когда сервер Raft инициировал выборы |
--- |
vault.raft.state.follower |
сводная |
число |
Количество раз в настроенном интервале, когда сервер Raft стал резервным узлом |
Узлы переходят в состояние follower в следующих случаях: * узел присоединяется к кластеру; * выбирается лидер, но узел не был выбран лидером. |
vault.raft.state.leader |
счетчик |
число |
Количество раз, когда сервер Raft стал лидером |
--- |
vault.raft.transition.heartbeat_timeout |
сводная |
число |
Количество раз, когда узел перешел в состояние candidate после того, как не получил сообщение о проверке активности от последнего известного лидера |
--- |
vault.raft.transition.leader_lease_timeout |
счетчик |
число |
Количество раз, когда лидер не смог связаться с кворумом узлов и поэтому отступился от полномочий |
--- |
vault.raft.verify_leader |
счетчик |
число |
Количество раз в настроенном интервале, когда узел подтвердил, что он все еще является лидером |
--- |
2. Метрики автопилота
|
Автопилот работает только на активном узле, поэтому метрики автопилота снимаются только для текущего активного узла. |
| Название метрики | Тип метрики | Единицы измерения | Описание | Примечание |
|---|---|---|---|---|
vault.autopilot.failure_tolerance |
датчик |
узлы |
Количество здоровых узлов, превышающих кворум |
Допустимый уровень отказов указывает, сколько текущих здоровых узлов может выйти из строя без потери кворума. |
vault.autopilot.healthy |
датчик |
логическое значение |
Указывает, все ли узлы здоровы |
|
vault.autopilot.node.healthy |
датчик |
логическое значение |
Указывает, здоров ли активный узел |
|
3. Метрики изменения лидерства
Метрики изменения лидерства указывают на общую производительность интегрированного хранилища на серверах Raft и сетевого соединения между узлами Raft.
Далее в таблице представлены метрики изменения лидерства и их описания:
| Название метрики | Тип метрики | Единицы измерения | Описание | Примечание |
|---|---|---|---|---|
vault.raft.leader.dispatchLog |
timer |
мс |
Время, необходимое узлу-лидеру для записи записи журнала на диск |
--- |
vault.raft.leader.dispatchNumLogs |
датчик |
число |
Количество журналов, зафиксированных на диске в последней партии |
--- |
vault.raft.leader.lastContact |
сводная |
мс |
Время с момента последнего контакта лидера с резервными узлами при проверке аренды лидерства |
--- |
4. Метрики репликации Raft
Далее в таблице представлены метрики репликации Raft и их описания
| Название метрики | Тип метрики | Единицы измерения | Описание | Примечание |
|---|---|---|---|---|
vault.raft.replication.appendEntries.log |
сводная |
число |
Количество журналов, реплицированных на узел для установления паритета с журналами лидера |
--- |
vault.raft.replication.appendEntries.rpc |
timer |
мс |
Время, необходимое для репликации записей журнала узла-лидера на все резервные узлы с помощью |
--- |
vault.raft.replication.heartbeat |
timer |
мс |
Время, необходимое для вызова appendEntries на узле, чтобы узел не вышел из времени ожидания |
--- |
vault.raft.replication.installSnapshot |
timer |
мс |
Время, необходимое для обработки вызова RPC |
Только узлы, находящиеся в состоянии follower, сообщают метрики |
5. Метрики хранения данных
| Название метрики | Тип метрики | Единицы измерения | Описание | Примечание |
|---|---|---|---|---|
vault.raft_storage.bolt.cursor.count |
датчик |
число |
Количество курсоров, созданных в базе данных Bolt |
--- |
vault.raft_storage.bolt.freelist.allocated_bytes |
датчик |
байты |
Общее пространство, выделенное для списка свободных страниц в базе данных Bolt |
--- |
vault.raft_storage.bolt.freelist.free_pages |
датчик |
число |
Количество свободных страниц в списке свободных страниц базы данных Bolt |
--- |
vault.raft_storage.bolt.freelist.pending_pages |
датчик |
число |
Количество ожидающих страниц в списке свободных страниц базы данных Bolt |
|
vault.raft_storage.bolt.freelist.used_bytes |
датчик |
байты |
Общее пространство, используемое списком свободных страниц в базе данных Bolt |
--- |
vault.raft_storage.bolt.node.count |
датчик |
число |
Количество выделений узлов для базы данных Bolt |
--- |
vault.raft_storage.bolt.node.dereferences |
датчик |
число |
Общее количество разыменований узлов базой данных Bolt |
--- |
vault.raft_storage.bolt.page.bytes_allocated |
датчик |
байты |
Общее пространство, выделенное для базы данных Bolt |
--- |
vault.raft_storage.bolt.page.count |
датчик |
число |
Количество выделений страниц в базе данных Bolt |
--- |
vault.raft_storage.bolt.rebalance.count |
датчик |
число |
Количество перебалансировок узлов, выполненных базой данных Bolt |
--- |
vault.raft_storage.bolt.rebalance.time |
сводная |
мс |
Время, необходимое базе данных Bolt для перебалансировки узлов |
--- |
vault.raft_storage.bolt.spill.count |
датчик |
число |
Количество узлов, сброшенных базой данных Bolt |
--- |
vault.raft_storage.bolt.spill.time |
сводная |
мс |
Общее время, затраченное на сброс базой данных Bolt |
--- |
vault.raft_storage.bolt.split.count |
датчик |
число |
Количество узлов, разделенных базой данных Bolt |
--- |
vault.raft_storage.bolt.transaction.currently_open_read_transactions |
датчик |
число |
Количество текущих транзакций чтения для базы данных Bolt |
--- |
vault.raft_storage.bolt.transaction.started_read_transactions |
датчик |
число |
Количество начатых транзакций чтения базой данных Bolt |
--- |
vault.raft_storage.bolt.write.count |
датчик |
число |
Количество операций записи, выполненных базой данных Bolt |
--- |
vault.raft_storage.bolt.write.time |
счетчик |
мс |
Общее кумулятивное время, затраченное базой данных Bolt на запись на диск |
--- |
vault.raft_storage.follower.applied_index_delta |
датчик |
число |
Разница между индексом, примененным лидером, и индексом, примененным резервным узлом, как сообщается эхо-запросами |
--- |
vault.raft_storage.follower.last_heartbeat_ms |
датчик |
мс |
Время с момента последнего получения запроса на проверку активности резервным узлом |
--- |
vault.raft_storage.stats.applied_index |
датчик |
число |
Наивысший индекс журнала Raft, примененный к конечному автомату или добавленный в очередь |
--- |
vault.raft_storage.stats.commit_index |
датчик |
число |
Индекс последнего журнала Raft, зафиксированного на диске на узле |
--- |
vault.raft_storage.stats.fsm_pending |
датчик |
число |
Количество журналов Raft, поставленных в очередь узлом для применения конечным автоматом |
--- |
vault.raft-storage.delete |
timer |
мс |
Время, необходимое для вставки записи журнала для удаления пути |
--- |
vault.raft-storage.entry_size |
сводная |
байты |
Общий размер записи Raft во время применения журнала |
--- |
vault.raft-storage.get |
timer |
мс |
Время, необходимое для получения значения по указанному пути из конечного автомата |
--- |
vault.raft-storage.list |
timer |
мс |
Время, необходимое для перечисления всех записей по префиксу из конечного автомата |
--- |
vault.raft-storage.put |
timer |
мс |
Время, необходимое для вставки записи журнала для сохранения пути |
--- |
vault.raft-storage.transaction |
timer |
мс |
Время, необходимое для вставки операций в один журнал |
--- |