community icon indicating copy to clipboard operation
community copied to clipboard

Add nginx-module-vts to this community

Open u5surf opened this issue 9 months ago • 2 comments

Hi, I’m a collaborator of nginx-module-vts which can be provided virtual host traffic status information. its output can be supported the prometheus format.

https://github.com/vozlt/nginx-module-vts

As you can see github stars, this module is used widely all over the world, I assume that in these users also use the prometheus for their services observability with such a following exporter.

https://github.com/sysulq/nginx-vts-exporter

However the author of this module has no longer maintain it, I and @SuperQ had autorities of collaborator for a several years. The develop of new feature is not active, we'd rather force to maintain the legacy like a html dashboard, some nit bugs. A certain contributor who is willing to add new feature but the legacy code support is to be difficult that.

https://github.com/vozlt/nginx-module-vts/pull/317

We had discuss about this module in the future. We concluded following that.

  • Drop JSON and HTML export; keep only Prometheus export.
  • Remove stats dump to file, as Prometheus makes it unnecessary.
  • Remove nginx_vts_server_requests_total{host="*",} metrics in favor of using the sum aggregator.
  • Remove the control API, as containers don’t need it.
  • Create shared functions that third-party modules can use to create counters, gauges, and histograms.

We should focus on provide a simple and powerful /metrics endpoint that could be extensible and help to achieve a great observability.

For that achievement, We have to fork this repository, and legacy side will be entered maintenance mode which no longer add new feature, only maintains bug fix and vulnerability care.

The reason why we'd like to fork that the module have many users all over the world, it is quite impact for them to accept our achievements, it is necessary for them to make a decision whether pulling out of the legacy or not themselves.

Once the fork is created in this community, we can have public issues discussions about the various breaking feature removals and focus on providing simple and powerful features.

u5surf avatar Mar 11 '25 14:03 u5surf

I willing to collaborate with you @u5surf, let's do it together

wpjunior avatar Mar 11 '25 20:03 wpjunior

As a Prometheus Team member, I am willing to sponsor this project.

SuperQ avatar Mar 11 '25 21:03 SuperQ

Hi @SuperQ and @u5surf how can we proceed with this initiative ?

wpjunior avatar May 23 '25 20:05 wpjunior

@SuperQ We'd like to proceed the initiative. What should we do next? And could you tell us if we have any issue?

u5surf avatar May 25 '25 23:05 u5surf

@SuperQ I made some commits to revamp the module to be only prometheus like here: https://github.com/wpjunior/nginx-module-vts/pull/1/files

wpjunior avatar Jun 06 '25 01:06 wpjunior

@SuperQ Hi, sorry for longtime no see there. Is there any progress? Can I anything to help proceeding this project?

u5surf avatar Sep 28 '25 07:09 u5surf