In this article, we'll take a look at
jormungandr and ended up compiling notes, some commonly used commands and other stuff learned while researching how to run a Cardano staking pool. I've turned everything into this post so we could all copy and reuse from if needed.
Ended up becoming a jormungandr cheat sheet of sorts. Or something like a Jormungandr jcli Cryptonomicon - the book of most used commands and other related stuff.
I know this is incomplete, so please refer to the links at the end of this article from some excellent material that'll provide more Cardano technical info than I could ever hope to learn in a lifetime. Hoping this might be useful for other Cardano users!
First of all, read Chris Graffagnino's excellent tutorial which covers everything from setting up the Linux box at a very low level to creating your own staking pool, step by step.
Early pool admins had a very tough time configuring everything that Chris published on this post.
New staking pool admins have it much easier that these excellent tutorials are available.
Join the Cardano Forum if you haven't and follow the Staking and Delegation section.
The Telegram chat can be hard to follow due to the large amount of messages. The Telegram search function is there to help you. Search for keywords like settings, networking, linux, vps, server setup and so on.
When you find something related to these topics, make sure to follow the users who mention them. A large percentage of users are also newbies but some of the folks on that channel are running the top staking pools and can give you extremely valuable advice. Be polite and ask your question clearly and you will get help.
Most of these commands are documented in the jormungandr REST page. (jcli is just a CLI tool for jormungandr). Notice that in most cases I just added my host details so I could copy and paste.
It is assumed you're running these locally on the node's host (127.0.0.1). I wouldn't open the REST api endpoint to remote access for security reasons.
Assume port 3000. Substitute for different port.
netstat -tan | grep 3000
Shows most basic statistics for a node.
jcli rest v0 node stats get --host "http://127.0.0.1:3100/api"
This command shows
jcli rest v0 diagnostic get --host "http://127.0.0.1:3100/api"
jormungandr. Note that there's a bit of house cleaning to do before it completely shuts down. The process remains open for a few seconds after this command returns Success status
jcli rest v0 shutdown get --host "http://127.0.0.1:3100/api"
Shows the node's "mempool". Fragments that are in the volatile memory either generated locally or received from the network.
jcli rest v0 message logs --host "http://127.0.0.1:3100/api"
Get the latest block in your local blockchain. Useful to check if you've forked. If your tip hash is different from everyone else's then you've likely gone down the wrong chain.
jcli rest v0 tip get --host "http://127.0.0.1:3100/api"
jcli rest v0 settings get --host "http://127.0.0.1:3100/api"
jcli rest v0 leaders get --host "http://127.0.0.1:3100/api"
jcli rest v0 leaders logs get --host "http://127.0.0.1:3100/api"
List staking pool ID's
jcli rest v0 stake-pools get --host "http://127.0.0.1:3100/api"
Show stake details
jcli rest v0 stake get --host "http://127.0.0.1:3100/api"
Show pool details. Substitute your pool ID.
jcli rest v0 stake-pool get 57098af716dac3dbfa7e9237d8ba5644f94edf643983eb07429b49a67fa2dce5 --host "http://127.0.0.1:3100/api"
Show network connections and connected host ID's.
jcli rest v0 network stats get --host "http://127.0.0.1:3100/api"
Callea's NACG - Must read Cardano material
Cardano Shelley & StakePool Best Practice Workgroup [Telegram Link]