The Spanning Demo App is live! Check it out here: https://demo.spanning.network/
We have also published the open-source demo code and related JavaScript utilities.
BOS Monitoring and Metrics
Spanning Labs is tracking a variety of metrics about our network performance and the services we rely on (like node providers) to ensure that we offer enterprise-level solutions and guarantees.
We also want you, the developer, to do more than just take our word for it!
Liveliness Dashboard
Here are our network health metrics where you can see:
- the uptime of BOS in aggregate
- the uptime of each of our Listener nodes per network and node provider
- the uptime of our other nodes
Automation
This is a public access point that you can plug directly into your Dapp frontend user interface to ensure that the Spanning Network is live and healthy in real-time. A good example of this can be seen in the code for our demo token application.
import axios from "axios"; const ENDPOINT = `https://bos-metrics.spanningops.com/api/v1/query?query=up`; export async function isBosUp() { try { const response = await axios.get(ENDPOINT); const result = response.data.data.result; if (!result.length) { return false; } for (var i = 0; i < result.length; i++) { const job = result[i]; if (job.value[1] != "1") { return false; } } return true; } catch (e) { return false; } }
Watchdog Testing
Spanning Labs is constantly testing all of the pathways through our network to further ensure everything is working as expected. We submit a randomized crosschain transaction every five minutes to ensure our network health and also monitor the health of the testnets we support. The following graph shows an uptick each time a transaction settles to a destination chain within 60 seconds of submission.
Test networks that periodically see slowdowns (regardless of the Spanning Network uptime shown above) can easily be identified if they have gone longer than 30 minutes without a transaction settlement. For example, we commonly see failed watchdog alerts involving the Mumbai
testnet as that blockchain often fails to settle a transaction or process a transaction request within our 60 second window.