Introduce Prometheus as a Service that can be configured at the Project level
Description
We will need to offer a way to control whether Prometheus features should be enabled for a given project. There are a number of reasons for this, but most critically we need to know if we should present any Prometheus related UI in the project.
Proposal
We should add Prometheus as a new "Integration" at the project level. On the integration screen, we should have:
- Checkbox for active/inactive
- Have a field for the URL of the Prometheus server
- Have a note at the top, with an overview of how it works
This should be off by default.
Suggested content:
Title: Prometheus
Description: Display performance data captured by Prometheus
Checkbox Name: "Active"
URL Field Name: "API URL"
URL Field Default Value: "Root URL of Prometheus, like http://prometheus.example.com:9090"
Note Content:
This service displays performance data for applications monitored by a Prometheus server. The metrics retrieved are
container_cpu_usage_seconds_totalandcontainer_memory_usage_bytes. Anenvironmentlabel is required on each metric to determine the Environment. If you are utilizing the bundled Prometheus service with Auto-Deploy, this is created automatically.