Author Topic: BitShares delegate tools - build, run and monitor the bts client for delegates  (Read 5936 times)

0 Members and 1 Guest are viewing this topic.

Offline wackou

Updated to 0.1.2 which fixes some issues after the rebranding BitSharesX -> BitShares (0.4.24RC1 and above)

I will probably rename the project from bitshares_delegate_tools to bts_tools, it's a bit shorter to type, hope no one is against it :)

I was also thinking about getting a new delegate at 50% initial pay rate when the new system sets in and wanted to ask the community whether that seemed like a reasonable amount for funding of the development of the tools.

Cheers!
Please vote for witness wackou! More info at http://digitalgaia.io


Offline cass

  • Hero Member
  • *****
  • Posts: 4311
  • /(┬.┬)\
    • View Profile
I've glanced over the scripts when you initially announced it and I didn't see anything harmful or malicious.
I see you've started something that might benefit everyone.
I was thinking of something like an widged for android that receives notification about nodes' status and I might use part of your work if I'm to implement that (free time is precious commodity).
Good Job!

 +5%
█║▌║║█  - - -  The quieter you become, the more you are able to hear  - - -  █║▌║║█

Offline wackou

Thanks!

I just released 0.1.1 which adds a view with the list of peers you have connected to and another one with the list of potential peers (what the rpc commands get_peer_info and network_list_potential_peers return).
Please vote for witness wackou! More info at http://digitalgaia.io


Offline nethyb

  • Full Member
  • ***
  • Posts: 197
    • View Profile
  • BitShares: nethyb
Nice work, I'll be spinning this up, look like it provides all the additional info needed to keep any eye on my delegates, seed nodes and pool wallet and ensuring they are in sync...  +5%

Offline emski

  • Hero Member
  • *****
  • Posts: 1282
    • View Profile
    • http://lnkd.in/nPbhxG
I've glanced over the scripts when you initially announced it and I didn't see anything harmful or malicious.
I see you've started something that might benefit everyone.
I was thinking of something like an widged for android that receives notification about nodes' status and I might use part of your work if I'm to implement that (free time is precious commodity).
Good Job!

Offline wackou

Ah, and something else: there is not a lot of doc available, but I tried to comment the config.yaml file as much as possible so that just by reading it you should be able to configure the tools for you (this is also the reason I switched from json to yaml for the config file, as yaml allows comments while json doesn't).

And a last note about security: people not wanting to run the monitoring webapp might still find the tools useful just to build the client (it doesn't get easier than "bts build"!)
Please vote for witness wackou! More info at http://digitalgaia.io

Offline wackou

no offense taken, I agree with you, in this new crypto world, "better safe than sorry" seem like wise words  ;)
If people want to do code reviews, then I'd be more than happy.

Although it is possible to monitor remote node, the setup is still a bit complicated (and you need ssh access to the machine where the delegate is running). I intended the monitor to be run on the same host as the delegate, and using the remote to monitor a delegate which is taken down while recompiling to upgrade to a new version.

Note that the tools do not unlock wallets, you still need to do this manually. The passwords in the config file are only the rpc passwords, you should never put your wallet password near the tools.

Another use case is to monitor seed nodes, which allows to get a central view of multiple seed nodes on different hosts easily.
Please vote for witness wackou! More info at http://digitalgaia.io

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
I really really need to look into this .. looks like awesome work ..

however, as one probably requires to connect to the (privatekey carrying) machines via RPC to monitor them I'd recommend everyone to go over the code first ..
(please don't take this personally)

Offline wackou

I just released the 0.1 version of the tools, this is the first public release and is available on pypi. That means it is now much easier to install.

Notably, I also fixed quite a number of bugs, the tools can now:
 - monitor seed nodes and delegate nodes
 - monitor one or more of them, either on the same machine or on a remote one
 - build DNS nodes, although that's probably gonna be the shortest-lived feature ever  :-\  At least, the infrastructure is in place to support more DACs in the future :)
 - iOS notifications are now sent to the Boxcar app, much easier to configure than the previous hand-crafted solution

You can either
Code: [Select]
pip install bitshares_delegate_tools or get the source code from github: https://github.com/wackou/bitshares_delegate_tools

And if you use those tools/like them, don't forget to vote for my delegate for funding further development: http://digitalgaia.io/wackou.html

Cheers!
Please vote for witness wackou! More info at http://digitalgaia.io

Offline svk

Looks awesome, might check it out this weekend if I have time.  +5%
Worker: dev.bitsharesblocks

Offline wackou

Hi all,

after having worked on my monitoring tools for the BitShares client for the last couple of months, I feel
that it has now reached a level where it can be useful for other people, and that I don't feel ashamed to
show it to the public  :)

It is obviously far from perfect, and there are still features missing, but understand that this is a
work in progress, and I am very open to comments, suggestions, critics, and pull requests of course ;)

It is written in python, the github link is here: https://github.com/wackou/bitshares_delegate_tools

and although there is no downloadable release yet, it shouldn't be too much work to release it on pypi
(this means for now that a fully proper installation (ie: wsgi behind a webserver) requires a bit of python
experience, but it isn't too hard either)

Let me know what you think,

Cheers,

Wackou.

PS: it doesn't support BitShares DNS yet but work is underway
Please vote for witness wackou! More info at http://digitalgaia.io