With the latest, I get 14 Elders and the rest unknown on a 40 node testnet
NODE_COUNT=40 RUST_LOG=sn_node=trace cargo run --release --bin testnet
So it works fine on a split. It takes a while but the Chunk storage bar and figure eventually appear and look correct but the bar is at 100% as above.
Space available is always zero and space free unknown. THe time line works well and the i and o zoom keys work OK, likewise the arrow keys.
I’ll leave it uploading overnight and look at it again tomorrow.
In anticipation of JoshNet, vdash 0.8.1 is available, over to you MaidSafe
To update:
cargo install vdash
With a local testnet this shows basic status (top left), timelines of PUTS, GETS and ERRORS (middle band) and the end of the logfile (bottom band) for one or more node logilfes, and updates in real time.
The top right window doesn’t show anything useful as the logfiles not longer provide that information, but perhaps this will be added later.
I won’t add display of Network status (e.g. storage pricing, transactions etc) until I can see that working.
For newbies or general information about vdash, see the OP
Im seeing that if I repeatedly edit a register
like this
willie@gagarin:~$ safe register edit todo "get rear wiper blade for Janets car"
Trying to retrieve Register from 48c701(01001000).., 3006
Successfully retrieved Register 'todo' from 48c701.., 3006!
Editing Register 'todo' with: get rear wiper blade for Janets car
willie@gagarin:~$ safe register edit todo "get rear wiper blade for Janets car"
Trying to retrieve Register from 48c701(01001000).., 3006
Successfully retrieved Register 'todo' from 48c701.., 3006!
Editing Register 'todo' with: get rear wiper blade for Janets car
willie@gagarin:~$ safe register edit todo "get rear wiper blade for Janets car"
Trying to retrieve Register from 48c701(01001000).., 3006
Successfully retrieved Register 'todo' from 48c701.., 3006!
Editing Register 'todo' with: get rear wiper blade for Janets car
willie@gagarin:~$ safe register edit todo "get rear wiper blade for Janets car"
Trying to retrieve Register from 48c701(01001000).., 3006
Successfully retrieved Register 'todo' from 48c701.., 3006!
Editing Register 'todo' with: get rear wiper blade for Janets car
willie@gagarin:~$ safe register edit todo "get rear wiper blade for Janets car"
Trying to retrieve Register from 48c701(01001000).., 3006
Successfully retrieved Register 'todo' from 48c701.., 3006!
Editing Register 'todo' with: get rear wiper blade for Janets car
Yes definitely worth experimenting with the colour themes if you are on Ubuntu. Also noting that prviously vdash was quite memory hungry. No such problem with the latest version – which is nice.
Glad you like it and thanks for saying so. It isn’t that complex but was my learn some Rust project so a few weeks I guess, I’m not sure.
Let me know if you have suggestions for what metrics to show and how. I don’t have much time to poke around to see what is available in logfiles or think about improvements but can make tweaks here and there.
I’ve just published vdash v0.8.6 which adds display of chunk storage fee which is available since ThePriceIsRightNet, and fixes a progressive memory leak.
Poll for anyone who has ever run a Safe Network node about vdash to help gauge interest and usefulness:
What’s vdash? (see below)
I run nodes but never used it
I’ve used it but no longer
I use it now and again
I use it most times I run a node
I’d use it more if… (please explain)
0voters
vdash is a terminal based graphical dashboard which provides information about one or more nodes you are running as part of a test network. See: Vdash - Node dashboard for Safe Network
For interest it has been downloaded 24 times since I last updated on Tuesday and 3,967 times since May 2022. Stats here: https://crates.io/crates/vdash
Is this still needed? Monitor and display max node age · Issue #17 · happybeing/vdash · GitHub I’m asking because I’m trying to get a developer started exploring the Safe Network but trying not to blow the bank while doing so. I thought this might be a great small task to get someone started and not break me at the same time.
Honestly anything you can think of? Just trying to get someone poking around on something the community needs. I originally started asking about creating a separate client but not sure the visibility at this point. Fiverr has tons of talent hungry for work and the one i’m working with I found there. He mentioned Polkadot and how he is already involved with that as well. One of his suggestions was some cross project with Polkadot. I then mentioned starting a way to backup the bitcoin blockchain as a way to show the Safe Networks capabilities. Mind you all these are ideas have no real research to back them and are merely ideas bouncing around my head.
For anyone interested I’ve just outlined a design to support an arbitrary number timelines in vdash, including a new type which will display min, mean or max value of a statistic which will debut as a node storage fee timeline.
Once payment received is in the log I’ll also add a node earnings timeline.
It is a significant piece of work and I’m not sure how long it will take. More below.
It was interesting to watch the design evolve over time purely in my head over about two weeks. Normally I’d have hit the keyboard much sooner and it would have changed in the same way, but during the coding phase. This time it kept being refined all the way until I began itemising the structs in the list below, and I hope, will be pretty close to the actual code. We’ll see!
Add to and enhance vdash Timeline display
Notes on:
adding timelines for Store Price and Token Earnings
enhance Store Price timeline to show min, mean, max (press ‘m’?) per timeslot
Implementation
[x] FIGURE OUT DESIGN (SEE BELOW) to allow token price to support min/mean/average per slot
[x] elaborate Options
[x] read up about Traits to refine option 2
[x] Choose from option 1 and 2 (not shown in this post)
[x] Elaborate these steps based on Option 2
[x] Rework the following for an arbitrary number of timelines (see below)
[x] consider UI mode, timeline naming, min/mean/max mode for access and label of timeline (maybe use TL index to access these?)
[ ] implement timelines module in parallel with existing code
[ ] define Structs, Traits and Enums
[ ] Buckets - as now, an array of scalar values
[ ] MinMeanMaxBucket - a struct to hold a min/mean/max value bucket
[ ] BucketsMMM - is a new array of struct MinMeanMax with a Buckets array for min, mean and max values (for access by UI)
[ ] BucketsType - enum for gets|puts|storage_fee
[ ] MMMType - enum for min|mean|max
[ ] BucketSet - map? of Buckets by active_timeline_name (scale)
[ ] BucketSetMMM - map? of BucketsMMM by active_timeline_name (scale)
[ ] TimelinesSet - struct which holds app timelines for gets, puts, storage_fee
Implements Trait - methods to bump Buckets and BucketsMMM, and for access Buckets
[x] think about implementation from UI access to buckets (e.g. access to immutable array of values, inc for min/mean/max)
Ideally: get_timeline( enum gets|puts|storage_fee, min|mean|max).get_bucket_set(active_timeline_name)
[ ] Implement app TimelinesSet struct to hold the required NUM_TIMELINES timelines, with access by index (enum?) for UI
[ ] holds timeline UI state: min/mean/max (enum) and irst_timeline index of first on display (1-NUM_TIMELINES)
[ ] holds app timeline state and each timeline's data as a BucketSet or BucketSetMMM
[ ] method to access UI label, for ex. "Storage Fee (Max)", and Buckets by numeric index (enum?) from 1 to NUM_TIMELINES
[ ] method per timeline to update puts, gets etc
[ ] keyboard input 't' increases first_timeline, 'T' decreases (starts at 1, wrapping at NUM_TIMELINES)
[ ] Add token price timeline for now stores minimum token price
[ ] select and test new code
[ ] eliminate old code
[ ] keyboard input 'm' rotates 0->1->2, 'M' 2->1->0 (or enum) to determine mmm_display
[ ] Modify UI to display min/mean/max of any TimelineSetMMM based on mmm_display
[ ] LATER: add earnings timeline
I’ve just published vdash v0.8.8 which restores collection of Storage Cost and adds a new timeline for it, including the ability to display the minimum, mean and maximum Storage Cost values as timelines.
Here’s a summary of keyboard commands including new ones to show all four timelines (three at a time) and cycle through the min, mean and max displays when the Storage Cost timeline is visible.
I’ll add an Earnings timeline as soon as this is available in the log file.
Keyboard commands:
‘<-’ and ‘->’: When monitoring multiple safenode logfiles you can cycle through the different nodes using left/right arrow keys.
‘i’ and ‘o’: Zoom the timeline scale in/out using ‘i’ and ‘o’ (or ‘+’ and ‘-’).
‘t’ and ‘T’: Three timelines are visible at any one time but you can cycle through all timelines to bring them all into view by pressing ‘t’ (forward) and ‘T’ (backward).
‘m’ or ‘M’: The Storage Cost timeline displays minimum, mean and maximum values in each time-slot. To cycle through the min, mean and max displays press ‘m’ or ‘M’.