[Feature Request] Volumes or Extendable Metrics Monitoring
T
Travis
( asked to make a ticket here rather than a "Feature Request" support ticket )
I was attempting to build the following infrastructure:
* static webpages
* RESTful api backend
* background workers
And then I wanted to monitor it - I happened to use Prometheus for monitoring; but Prometheus, Telegraf, any time-series-style monitoring would do. From my local dev, I was using prom + grafana, so I'm going to talk about that, here.
To use them, I would need
* prometheus to scrape logs
* grafana to read the logs
Per a separate ticket, I was told the "best route" would be to put grafana and prometheus inside the same AppPlatform App, so I tried. I had originally wanted to put Grafana inside a VPC so I would need a VPN to access it; but, if it was going to be in AppPlatform, it would need to be exposed to the public internet. This should be fine enough if I have a good password. But, to have a password, I need to be able to persist that password information across deployments, otherwise each time my containers restart, the password goes back to admin/admin, exposing myself and my potential customers to risk.
Okay then, so I need to put Grafana in a Droplet to protect it; but now Grafana needs to access Prometheus Data. This platform does not support any timeseries databases, as far as I can tell; and, all existing Prometheus to PostgreSQL exporters are deprecated and/or otherwise no longer maintained, so that's out.
Okay then, so I need to put Prometheus in a Droplet, as well. Well, to do that, I'm going to need to expose all of my services, including backend services and other internal services' /metrics points to the open internet, where they'll need to be hardened and could unintentionally expose my customers' data.
As a result, AppPlatform, which should have been a wonderful and very usable system for me to use to not need to dive into unnecessary complexity required by kubernetes, is a non-starter.
Personally, I feel that some form of basic monitoring solution (and one that isn't as robust as OpenSearch / ElasticSearch) is a basic need for any production service; and it feels like AppPlatform is lacking any way to meaningfully provide that service; so, my request is as follows:
Please either sell/provide a standard Grafana+(Prometheus/Telegraf/whatever) service which could even be internal-only for improved security for AppPlatform; or, please provide volumes inside AppPlatform so that we can do it ourselves.
Thanks!