Disclaimer: These instructions are made for Ubuntu 20.04. The commands may not match 100% on other distros, nor is there any guarantee that it will work.
Important:
If you use custom pairs
settings in /etc/omnia.conf
, i.e. oracleExpiration
and oracleSpread
, backup your file to be able to restore these settings later.
Upgrade Omnia and Dependencies to version 1.8.2
nix-env --install --verbose --file https://github.com/makerdao/oracles-v2/tarball/stable
Configure Spire, Scuttlebot and Omnia
install-omnia relayer --ssb-caps ~/caps.json --ssb-external <your external ip here>
Restore custom settings
Restore any custom setting in /etc/omnia.conf
, taking care of keeping the new pairs and parameters.
Restart services
sudo systemctl daemon-reload
sudo systemctl restart spire-agent
sudo systemctl restart ssb-server
sudo systemctl restart omnia
[fyi] To stop Omnia and Scuttlebot from starting on system boot
sudo systemctl disable --now ssb-server
sudo systemctl disable --now omnia
sudo systemctl disable --now spire-agent
[fyi] To query spire and confirm that the agent works
spire -c /etc/spire.json pull price WSTETHUSD 0xDA1d2961Da837891f43235FddF66BAD26f41368b
note: if you get the error not enough sources to calculate median, wait two minutes and try again
Check Status of Omnia and Scuttlebot
sudo systemctl status ssb-server
sudo systemctl status omnia
sudo systemctl status spire-agent
Check Omnia logs
sudo journalctl --follow --unit omnia
Here, we want to make sure that omnia is getting messages from both Scuttlebot and Spire. E.g.:
Jul 15 16:34:27 oracle omnia[3087529]: [07/15/21 16:34:27] Polling feed: 0xFbaF3a7eB4Ec2962bd1847687E56aAEE855F5D00
Jul 15 16:34:27 oracle omnia[2583168]: [07/15/21 16:34:27] Pulling ETHUSD price message with transport-ssb
Jul 15 16:34:27 oracle omnia[2583168]: [07/15/21 16:34:27] Pulling ETHUSD price message with transport-spire
Jul 15 16:34:28 oracle omnia[3087529]: [07/15/21 16:34:28] Adding message from 0xFbaF3a7eB4Ec2962bd1847687E56aAEE855F5D00 to catalogue
Optional: Adjust EIP-1559 gas parameters
New parameters in /etc/omnia.conf
:
maxPriceMultiplier
: the estimated maximum gas price is multiplied by this factortipMultiplier
: the maximum estimated priority fee is multiplied by this factorsource
: source for the maximum gas price and priority fee estimate:
node
: obtain the price from the node via rpcethgasstation
: query the EthGasStation API. This API uses legacy estimates and might have unexpected results. not recommendedRecommended: cleanup temporary ssb files
Your /tmp
directory may contain hundreds of thousands of uncessary files that may be safely removed
find /tmp -name "multiserver*" -delete
Monitor
Confirm that the relayer is pushing the prices to the medianizer