PalisadoesFoundation / switchmap-ng

A Python 3 inventory system that tabulates the status of network ports.
Apache License 2.0
16 stars 7 forks source link

Switchmap-NG new features - Input welcome #129

Open palisadoes opened 1 year ago

palisadoes commented 1 year ago

I'm working on switchmap-ng v2 with broadly planned features that include:

  1. Storing all data in a MySQL database
  2. Creating an API that allows programmatic queries of the data for use in other dashboards

There would be three daemons:

  1. switchmap_poller: Similar to the existing poller, but it would post data to the API instead of the various YAML files
  2. switchmap_api: The API supporting GraphQL queries
  3. switchmap_dashboard: The existing web UI that would query the API instead of the YAML files

This architecture has these advantages:

  1. The possibility of historically tracking changes in the network. A way to trim the history tables would need to be found. (At the moment I'm only tracking the most recent
  2. Having multiple pollers posting to a central API server over a well known TCP port. This allows pollers to be located in remote sites.

The database poller and GraphQL code is almost complete. I need to figure out how to integrate the dashboard.

Please let me know your thoughts on features that could be added.

chrisgerman commented 1 year ago

Been monitoring and keeping an eye on this project. You're doing amazing work! It may have been asked, but I will ask as you're adding a DB. Will there be a way to add a login screen to keep this information behind a secure portal? Again, thank you for all your hard work.

palisadoes commented 1 year ago

Thanks,

  1. I just pushed the v2 code to the v2 branch. Please test and report any issues with either the documentation or code.
  2. Over the next few weeks I'll be focusing on adding documentation on how to use the GraphQL API for accessing the historical data programmatically.
  3. Login credentials would be a good next step, Any assistance any lurkers want to provide is welcome. We need to diversify the contributor base. I'll add it to the ideas list.
chrisgerman commented 1 year ago

Sorry for being late on testing, but I have some time to test this out. With v2, what are the steps for installing it correctly and getting it up and running?

palisadoes commented 1 year ago

Please check the V2 branch. The instructions are there.

I will make the V2 code the default branch next week.