* Add per-chain aggregate software/hardware telemetry
* Fix tests' compilation
* Add extra comments for the `Counter` struct
* Replace the boolean argument with an enum
* Rename `replace_hwbench` to `update_hwbench`
* Move `Counter` into a separate file
* Move `ChainStatsCollator` to `chain_stats.rs`
* Fix incorrect key on the unknown table
* Improve types for the stats component; get rid of `any`
* Remove consensus-tab related stuff, and unused messages, from the telemetry backend
* also remove AfgAuthoritySet feed message, and handle same from node
* Blat everything consensus related that I can find in the UI
* cargo fmt
* README: had -> has
Co-authored-by: David <dvdplm@gmail.com>
Co-authored-by: David <dvdplm@gmail.com>
* If messageId changes and network ID doesn't, remove 'old' message_id
* Boot nodes/connection when no recent messages received for it
* Separate task needed for soketto recv to avoid cancel-safety issues with new interval
* Wee tidy up
* cargo fmt
* Add some logging around node adding/removing
* Another log info msg
* a bit of tidy up
* bump stale node timeout to 60s
* A second attempt to avoid the flume memory leak, since the first didn't actually work
* No luck with second flume fix, so revert to futures::mpsc in a few places)
* cargo fmt
* Add a comment to cover use of into_stream
* Tweak rolling_total test to also confirm capacity doesn't go nuts
* Use Jemalloc
* Avoid flume's into_stream and use a workaround for now
* cargo fmt
* Improve comments now that there's an issue to point to
* Only remove the feed that disconnected to not break the rest...
* use multimap struct to avoid sync issues between feed and chain
* add a remove test, too
* cargo fmt
* fix name of test
* move multimap to common so we can doctest it and add 'unique' to name
* cargo fmt
* Return old key if value moved to make uniqueness more obvious