HN user

sohooo

150 karma
Posts1
Comments48
View on HN

We also started with the typical kube-prometheus-stack, but we don’t like Prometheus/PromQL. Moreover, it only solves the „metrics“ part - to handle logs and traces, more quite heavy and complex components have to be added to the observability stack.

This didn‘t feel right, so we looked around and found greptimedb https://github.com/GreptimeTeam/greptimedb, which simplifies the whole stack. It‘s designed to handle metrics, logs, and traces. We collect metrics and logs via OpenTelemetry, and visualize them with Grafana. It provides endpoints for Postgres, MySQL, PromQL; we‘re happy to be able to build dashboards using SQL as that’s where we have the most knowledge.

The benchmarks look promising, but our k8s clusters aren’t huge anyway. As a platform engineer, we appreciate the simplicity of our observability stack.

Any other happy greptimedb users around here? Together with OTel, we think we can handle all future obs needs.

I also heart about lakeFS for data versioning on S3 object stores. Is DVC a contender in this area?

I recommend using your preferred flavor of configuration management tool. It is tricky, especially when you want to provision multiple users in different Grafana organizations, data sources, and their dashboards, but it can be done (I prefer Puppet because of its flexible language, but Ansible should also work).

I also started with that stack, but swapped out InfluxDB for Postgres + TimescaleDB extension, which adds timeseries workflows (transparent partitioning, compression, data retention, continuous aggregates, …).

I found InfluxDB to be lacking in terms of permissions management, flexibility regarding queries (SQL, joins), data retention, ability to debug problems. In Postgres, for example, I can look into the execution plan of a statement, log long running queries, and so on.

Telegraf as an agent is very flexible; it has input plugins for every task I could want, and besides it’s default „pull workflow“ (checks on defined interval) I also like to push new metrics directly to the Telegraf inputs.socket plugin from my scripts (backup stats, …).

In the meantime, you could use the version shipped with macOS:

    ▶ ruby -v
    ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.arm64e-darwin20]
On Ansible 13 years ago

The widespread use of Puppet also has some benefits:

- lots of documentation

- Foreman ( http://theforeman.org/ , backed by Redhat) as a great alternative to Puppet Enterprise

- projects like GitHub's Boxen ( http://boxen.github.com/ ) to bootstrap your devel machine

- a large repository of modules available: https://forge.puppetlabs.com/

- a couple of books, training, conference, if you like those things

However, I'm very aware of those ugly warts, so there's a lot of potential for a successor.

Vim anti-patterns 14 years ago

I'm also a fan of Pathogen (and tpope's stuff in general), but now I would recommend Vundle. It's like Ruby's Bundler for Vim. The difference is that you define the bundles (plugins) you want to use right in your .vimrc. With :BundleInstall/:BundleUpdate clones/updates these plugins.

https://github.com/gmarik/vundle