MetPX / sarracenia

https://MetPX.github.io/sarracenia
GNU General Public License v2.0
44 stars 22 forks source link

Node Graph #562

Open MagikEh opened 1 year ago

MagikEh commented 1 year ago

Currently, the only visualization aid to the data flow of a sarracenia node is that made by whoever set it up.

sr3 deals with all the configuration files (on a per-node basis) at once in memory, so it'd be a case of dumping that in-memory structure to some form of a graph that would enable this vision.

@reidsunderland has already done some work with a custom python script that scrapes configs and dumps to mermaid graphs, however, that work has also shown the limits of gitlab's and github's ability to parse more than 5,000 characters

andreleblanc11 commented 1 year ago

This issue has resurfaced while talking with the day pager guys.

Lots of times, when modifying/adding new configs to sarra or when there's a page related to sarra, the route from the source to the destination is either unknown or not well defined (especially when it connects to sundew once or twice). Having a continuously updated diagram which shows connections in the network would help.

Reid already wrote his script with mermaid but it has its limitations. Python graphing libraries shows other graphing library options. Networkx looks interesting

petersilva commented 1 year ago

it would be great to take the result of sr3 dump and use that to build graphs. especially sr3 dump from multiple machines. One thing that would make that work easier is to complete #634

petersilva commented 1 year ago

note: sr dump also exists... but it is even further from JSON.

reidsunderland commented 1 year ago

yes, we definitely need to use the sr3 config parser to ensure that configs and include files are parsed correctly.

My rough script from last year only looked at the exchange and post_exchange in .conf files, ignoring brokers, include files and and configs that don't explicitly define which exchange is used.

petersilva commented 1 year ago

Good news! @Rehouma63 is working on #634