Skip to content

2. Configuration

Vincenzo Reina edited this page Apr 21, 2025 · 6 revisions

Configuration

This guide covers all configuration options available in ServerPulse, including metrics settings, InfluxDB connection, tags, and messages.

Configuration File

The main configuration file is located at plugins/ServerPulse/config.yml. Here's the default configuration with explanations:

metrics:
  enabled: true        # Enable/disable metrics collection
  interval: 5          # Collection interval in seconds
  influxdb:
    url: http://localhost:8086  # InfluxDB API URL
    org: my-org               # Organization name
    bucket: metrics_db        # Bucket for storing metrics
    token: my-token          # API token (replace this!)
    table: minecraft_stats   # Measurement name in InfluxDB
  tags:
    server: "bed1"           # Server identifier

Metrics Settings

Main Options

  • metrics.enabled: Enable or disable metrics collection

    • Set to false to completely disable the plugin
    • No metrics will be collected when disabled
  • metrics.interval: How often metrics are collected and sent

    • Value in seconds
    • Minimum: 1 second
    • Recommended: 5-15 seconds
    • Higher values reduce server impact but provide less granular data

InfluxDB Connection

Required Settings

  • metrics.influxdb.url: URL of your InfluxDB instance

    • Format: http://hostname:port
    • Default port is 8086
    • Use localhost if running on same machine
  • metrics.influxdb.org: Organization name in InfluxDB

    • Must match the organization created during InfluxDB setup
    • Default: my-org
  • metrics.influxdb.bucket: Bucket name for metrics storage

    • Must exist in InfluxDB
    • Default: metrics_db
  • metrics.influxdb.token: API token for authentication

    • Generate this in InfluxDB UI
    • Requires read and write permissions
    • Never share this token publicly
  • metrics.influxdb.table: Measurement name

    • Groups all metrics under this name
    • Default: minecraft_stats
    • Change only if you know what you're doing

Tags System

Server Tag

The metrics.tags.server setting is crucial for identifying metrics from different servers:

metrics:
  tags:
    server: "survival-1"  # Unique server identifier

Custom Tags

You can add additional tags to better organize your metrics:

metrics:
  tags:
    server: "survival-1"
    region: "eu-west"    # Geographic location
    type: "survival"     # Server type
    network: "main"      # Network identifier

These tags can be used in Grafana to filter and group metrics.

Messages Configuration

All plugin messages can be customized:

messages:
  noPerms: "&7[&bServer&7Pulse] &7You don't have &bpermission"
  reloadConfig: "&7[&bServer&7Pulse] &7Configuration &breloaded"
  reloadConfigError: "&7[&bServer&7Pulse] &7Error &breloading"
  noArgs: "&7[&bServer&7Pulse] &7You need to specify a &bcommand"
  playerOnly: "&7[&bServer&7Pulse] &7This command can only be used by &bplayers"
  noCommand: "&7[&bServer&7Pulse] &7This command is not &bavailable"
  statusConnected: "&7[&bServer&7Pulse] &7Connected to &bInfluxDB"
  statusNotConnected: "&7[&bServer&7Pulse] &7Not connected to &bInfluxDB"
  • Messages support color codes using & symbol
  • Keep the [ServerPulse] prefix for consistency
  • Messages will be automatically reloaded when using /serverpulse reload

Related Pages

Clone this wiki locally