TorchAPI / Torch

An extensible modding framework and improved client/DS for Space Engineers. Still a work in progress!
Apache License 2.0
146 stars 76 forks source link

InfluxDB.Client Integration for Server Health Monitoring #409

Closed ryo0ka closed 3 years ago

ryo0ka commented 3 years ago

This PR adds dependency to InfluxDB.Client and some bridge classes for easy consumption by plugins such as TorchMonitor.

Screenshot 2020-11-02 025502

Why InfluxDB?

  1. Fank has made a monitoring program with InfluxDB which had familiarized SE admin community with this library.
  2. InfluxDB is a MIT-licensed open-sourced project, with an active body of developers, users and online resource.
  3. Fairly easy to get going and scale later.

Alternative choice of database: Elasticsearch can handle more types and schemes of data. Please ask Kontu's team. Our Torch fork does have Elasticsearch integrated as well (not included in this PR).

Why Integrate Database to Torch?

The admin community's strong interest toward a nice-looking monitoring dashboard. Easy access to database will be the first step forward to everyone's dream. Higher standard of understanding to the game and players shall enlighten our minds...🧙‍♂️

Jimmacle commented 3 years ago

This looks nice, however it seems like a relatively standalone feature that would be better suited as a plugin. Is there any reason besides easy consumption that it should be merged into Torch itself?

ryo0ka commented 3 years ago

@Jimmacle Actually no other reasons. This is just my best effort to share my server's tools for some other admins who want to try it but can't code/build by themselves.

I can turn this into a standalone plugin; it'll only take some tweaking to the libraries, in other words fighting the dependency and keeping it updated somehow. This PR's solution is dump it on MSBuild and call it a day. My defense argument is that the product is somewhat popular in the community and an "easy consumption" of the product is dreamed enough to justify the integration.

Context to this PR (discussion on Discord)

ryo0ka commented 3 years ago

Closed as I implemented a standalone plugin