Chain Management
Monitoring
Each Wasp node provides a Grafana dashboard where you can visualize metrics gathered by the node.
You can view the chain state using the dashboard (by default on port :7000
).
You can also set up a client to receive published events to have insights into what's happening in the system.
Lastly, each Wasp node will produce a log file (wasp.log
) where you can investigate the behavior of a node.
Managing Chain Configuration and Validators
You can manage the chain configuration and committee of validators by interacting with the Governance contract.
The “Chain Owner” is the only one who can perform administrative tasks.
Changing Chain Ownership
To change the chain ownership, the current “Chain Owner” must call delegateChainOwnership
specifying the agentID
of
the next owner. The next owner must call claimChainOwnership
to finalize the process.
Changing Access Nodes
For new access nodes to join the network, they need to:
- Be added as a trusted peer to at least 1 of the existing nodes.
- Be added by the administrator to the list of access nodes by calling
changeAccessNodes
. There is a helper in wasp-cli to do so:
wasp-cli chain gov-change-access-nodes accept <pubkey (0x...)>
After this, new nodes should be able to sync the state and execute view queries (call view entry points).
You can remove an access node by calling changeAccessNodes
.
Alternatively, to add any node as an "access node", you can add "non-permissioned" access nodes, without the signature from the chain owner. You can do this by using the following command:
wasp-cli chain access-nodes <add|remove> <pubkey (0x...)>
This node won't be "officially" recognized by the committee, but will still be able to sync the state and provide all regular functionality.
Changing the Set of Validators
You can do this in different ways, depending on whom the governor address of the alias output of the chain is.
- If the chain governor address is the chain itself or another chain, you can perform the rotation by calling
rotateStateController
after adding the next state controller viaaddAllowedStateControllerAddress
. - If the chain governor address is a regular user wallet, you can issue the rotation transaction using wasp-cli:
wasp-cli chain rotate <new controller address>