A newer version of this documentation is available.
View Latest (v2.2)

Prometheus Integration

The default Gluesync installation kit already includes Prometheus and Grafana. For this kit, you do not install or configure a second Prometheus or Grafana.

In the Control Plane, Metrics and insights (gauge icon, left menu) is that included Grafana. The default Grafana login is admin / password.

On Windows, Gluesync itself is under C:\Program Files\Gluesync. A path such as C:\Program Files\GrafanaLabs is a separate Grafana Labs installation, not the Gluesync kit.

The service definition on this page is the Prometheus included in the kit. A Prometheus you run yourself is optional. Keep the included Prometheus unless your platform requires an external metrics store.

Overview

Prometheus serves as the primary metrics collection and storage system for Gluesync. The default kit includes it. Retention and storage on this page are adjustments to that included Prometheus.

For a complete list of available metrics and their descriptions, see the Metrics Reference.

Default configuration

The kit includes this Prometheus service in its Docker Compose stack:

services:
  prometheus:
    image: prom/prometheus
    restart: 'unless-stopped'
    volumes:
      - ./prometheus-gs2.yml:/etc/prometheus/prometheus.yml
      - ./data:/prometheus
    command:
      - '--config.file=/etc/prometheus/prometheus.yml'
      - '--storage.tsdb.retention.size=10GB'
      - '--storage.tsdb.retention.time=7d'
    ports:
      - 9090:9090

Configuration Options

Core Settings

Setting Default Description

retention.size

10GB

Maximum storage size for metrics data. Increase for larger deployments or longer history.

retention.time

7d

Duration to retain metrics. Adjust based on your compliance and analysis needs.

scrape_interval

15s

Frequency of metrics collection. This directly affects how often Core Hub updates its metrics.

ports

9090

Prometheus web interface and API port. Can be modified for security or port conflicts.

The scrape_interval setting directly affects Core Hub metrics sampling. When you modify this value, you’re changing how frequently Core Hub updates its metrics. For example:

  • A 15s scrape interval means Core Hub metrics are updated every 15 seconds

  • A 5s scrape interval provides more frequent updates but increases system load

  • A 30s scrape interval reduces system load but provides less granular data

Choose an interval that balances your monitoring needs with system performance.

Security Considerations

HTTPS Configuration

To enable HTTPS for secure metrics collection:

command:
  - '--web.config.file=/etc/prometheus/web-config.yml'

volumes:
  - ./web-config.yml:/etc/prometheus/web-config.yml
  - ./certificates:/etc/prometheus/certs

Example web-config.yml:

tls_server_config:
  cert_file: /etc/prometheus/certs/prometheus.crt
  key_file: /etc/prometheus/certs/prometheus.key

Core Hub Address Configuration

To modify the Core Hub scrape target:

  1. Edit prometheus-gs2.yml:

    scrape_configs:
      - job_name: 'gluesync'
        static_configs:
          - targets: ['Core Hub:8080']  # Default
          # - targets: ['custom-address:port']

Available Metrics

For a complete list of available metrics and their descriptions, see the Metrics Reference.

Performance Tuning

Storage Optimization

For high-throughput environments:

command:
  - '--storage.tsdb.retention.size=200GB'  # Increased storage
  - '--storage.tsdb.retention.time=30d'   # Extended retention
  - '--storage.tsdb.wal-compression'      # Compress write-ahead log
  - '--query.max-samples=100000000'       # Larger query limit

Scrape Configuration

Adjust scrape intervals based on your needs:

global:
  scrape_interval: 15s     # Default collection interval
  scrape_timeout: 10s      # Timeout for each scrape
  evaluation_interval: 15s  # Rule evaluation interval
For production environments, consider increasing scrape_interval to reduce system load, or decreasing it for more granular metrics.

Troubleshooting

Common Issues

  • Connection Refused: Verify Core Hub address and port configuration

  • Data Storage Full: Adjust retention settings or increase storage capacity

  • High Memory Usage: Consider reducing retention period or increasing query timeout

Monitoring Prometheus Itself

Enable self-monitoring:

scrape_configs:
  - job_name: 'prometheus'
    static_configs:
      - targets: ['localhost:9090']