I eventually spent a while reading about Timescale 1 vs 2, and testing the pg_prometheus[1] adapter and started thinking through integrating its schema to our other needs then realizing it's "sunsetted" and then reading about the new timescale-prometheus[2] adapter and reading through its ongoing design doc[3] with updated schema that I'm less a fan of.
I finally wound up mostly-settling on Timescale although I've put the Prometheus extension question on hold, just pulling in metrics data and outputting with ChartJS and some basic queries got me a lot closer to done for now. Our use case may be a little odd regardless, but I think a timescale-prometheus extension with a some ability to customize how the data is persisted would be quite useful.
[1] https://github.com/timescale/pg_prometheus
[2] https://github.com/timescale/timescale-prometheus
[3] https://docs.google.com/document/d/1e3mAN3eHUpQ2JHDvnmkmn_9r...
Because of that and the small scale required, the choice of table-per-metric would be a tough fit and I think a single table with JSONB and maybe some partial indexes is going to work a lot better for us. It would just be nice if we could somehow code in our schema mapping and use the supported extension, but I get it may be too baked-into the implementation.
Anyway, overall we're quite happy with TimescaleDB!
"Why is it difficult, because you're self managed?"
For serious applications, it doesn't cut it. Trying to do more than a few TB a day is a waste of time outside of enterprise, which ain't cheap.
I plopped VictoriaMetrics in place of Influx for my cases and haven't even had a single hiccup.
[1] https://medium.com/@valyala/insert-benchmarks-with-inch-infl...
[1] https://victoriametrics.github.io/#how-to-send-data-from-inf...
If you are looking for a vendor to host, manage, and provide attentive engineering support, check out my company: https://HostedMetrics.com
It's the main reason we decided to use influx in our small team with simple enough timeseries needs