cryptofoundry

Связаться с cryptofoundry

Расскажите, что вы хотите создать или автоматизировать.

Электронная почта
[email protected]
ADAMANT Messenger
Открыть в ADAMANT
Dev Guidelines & Docs

Проверка работоспособности: конечные точки

См. также: Проверка работоспособности: алгоритм, общее описание

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

Конечные точки проверки работоспособности узлов и сервисов

Узел или сервисКонечная точка проверки работоспособностиКомментарии
adm-node (без сервиса/индексатора)https://endless.adamant.im/api/node/statusСодержит версию узла
Сервис Currencyinfohttps://info.adamant.im/statusСодержит версию программного обеспечения
btc-nodeЕдиный RPC-запрос, объединяющий getblockchaininfo и getnetworkinfoСодержит версию узла
btc-indexerhttps://btcnode2.adamant.im/blocks/tip/heightНет конечной точки для получения версии индексатора
eth-nodeЕдиный RPC-запрос, объединяющий eth_blockNumber и web3_clientVersionСодержит версию узла
eth-indexerhttps://ethnode3.adamant.im/max_blockСодержит версию программного обеспечения
doge-nodeЕдиный RPC-запрос, объединяющий getblockchaininfo и getnetworkinfoСодержит версию узла
doge-indexerhttps://dogenode1.adamant.im/api/statusСодержит версию узла (а не сервиса/индексатора)
dash-node (без сервиса/индексатора)RPC getStatus (объединяет getnetworkinfo для версии и getblockchaininfo для высоты)Содержит версию узла
lsk-node (kly-node)RPC system_getNodeInfoСодержит версию узла
lsk-service (kly-service)https://klyservice2.adamant.im/api/v3/network/statusСодержит версию узла (а не сервиса/индексатора)
ipfs-nodehttps://ipfs4.adm.im/api/node/infoСодержит версию узла; дополнительная информация IPFS для проверки работоспособности находится в разработке

Для узлов BTC и Doge единый пакетный RPC-запрос получает информацию о блокчейне и сети, избегая дополнительного кругового обхода. Пример запроса BTC:

curl --data-binary '[{"jsonrpc":"1.0","id":"curltext1","method":"getblockchaininfo","params":[]}, {"jsonrpc":"1.0","id":"curltext2","method":"getnetworkinfo","params":[]}]' -H 'content-type:text/plain;' https://dogenode1.adamant.im

Для узлов ETH аналогичный пакетный вызов объединяет eth_blockNumber и web3_clientVersion:

curl --data '[{"method":"eth_blockNumber","params":[],"id":1,"jsonrpc":"2.0"}, {"method":"web3_clientVersion","params":[],"id":2,"jsonrpc":"2.0"}]' -H "Content-Type: application/json" -X POST localhost:8545

Ответ ETH возвращает номер блока в шестнадцатеричном формате и строку версии клиента, например Geth/v1.13.5-stable-916d6a44/linux-amd64/go1.21.4. Названия клиентов обычно следуют шаблону Geth/v1.13.5 или Nethermind/v1.22.0.

Обратите внимание, что некоторые индексаторы предоставляют только высоту или статус без конечной точки версии, а в случае сервисов Doge и LSK возвращаемая версия отражает базовый узел, а не программное обеспечение индексатора или сервиса.