Choose your setup
DBGorilla reads metrics from your infrastructure through the DBGorilla Collector. Wherever you
run it, the collector needs the same three things: a database login with the right grants, a
collector.toml file, and outbound network access. Then pick the page for where your database runs.
The grants and statistics prerequisite on Prepare PostgreSQL are PostgreSQL’s. MySQL needs different ones, so for MySQL read MySQL as well.
The collector reads PostgreSQL statistics directly and, for host statistics, talks to the Prometheus
node_exporter. You need one collector per network segment, and node_exporter on each database
host you want host metrics from.
On managed platforms such as AWS RDS, where you have no access to the database host, the collector
reads equivalent metrics from CloudWatch and node_exporter is not required.
What the collector is
Section titled “What the collector is”The collector is a custom OpenTelemetry collector, shipped as a Docker image, that runs anywhere a Linux container runs. You configure it with a single file mounted into the container. The app shows you that file when you add a collector.
The image runs on both amd64 and arm64 machines.
A collector reads from one or more components. A component is a logical database endpoint: a
single server, a cluster with readers and writers, or a cloud database endpoint. The collector must
be able to reach each component on the database port (5432 for PostgreSQL) and, for physical hosts,
the node_exporter port (9100 by default).
The collector needs outbound access to otlp.dbgorilla.com and auth.dbgorilla.com on port 443,
and nothing else. It listens on no inbound port. Metrics travel over the
OpenTelemetry Protocol (OTLP); management traffic uses the Open Agent
Management Protocol (OpAMP).
See Database grants and pg_stat_statements in Prepare PostgreSQL, Configuration in Collector configuration, and Commands in Collector commands.