Как посчитать долю выпущенных блоков валидатора Solana

Валидатор может оставаться на связи и всё же пропускать назначенные слоты. В статистике производства есть и число назначений, и число фактически выпущенных блоков.

Запросите статистику по ключу валидатора

Подставьте публичный ключ идентичности валидатора. Без явного диапазона запрос охватывает текущую эпоху до выбранного уровня подтверждения. Сохраните firstSlot и lastSlot из value.range вместе с записью byIdentity.

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getBlockProduction",
  "params": [
    {
      "commitment": "finalized",
      "identity": "VALIDATOR_IDENTITY"
    }
  ]
}

Прочитайте пару счётчиков

Пара [80,76] означает 80 слотов лидерства и 76 выпущенных блоков. Четыре назначения прошли без блока, доля выпуска составила 95 процентов. При нуле в первом счётчике доля не определена. Для сравнения двух валидаторов используйте один диапазон слотов.

Повторные запросы по текущей эпохе охватывают пересекающиеся периоды. Для нового интервала задавайте непересекающиеся диапазоны либо вычитайте накопительные показания с одинаковым начальным слотом после проверки границ.

Документация