Xitoring Document
Home
FAQ
Support
Register
Home
FAQ
Support
Register
  • Xitoring

    • Introduction
    • Release Notes
    • Xitoring Release Notes
    • Linux Xitogent Release Notes
    • Windows Xitogent Release Notes
    • Xitoring Mobile App Release Notes
    • Account Management
    • API Access & Automation
    • Team Management & Collaboration
    • Billing & Subscription Management
  • Getting Started

    • Getting Started with Xitoring
    • Workflows & Guides
    • Monitor Your First Server
    • Import / Migration
    • Migrate from UptimeRobot to Xitoring
    • Migrate from Pingdom to Xitoring
    • Migrate from Uptime.com to Xitoring
    • Migrate from BetterStack to Xitoring
  • Help & Support

    • FAQ & Troubleshooting
    • Glossary
  • Server Monitoring

    • Server Monitoring
    • Graphs
    • Live Statistics
    • Monitor Services
    • Auto-Triggers
  • Xitogent on Linux

    • Install Xitogent on Linux
    • Update Xitogent on Linux
    • Uninstall Xitogent on Linux
  • Xitogent on Windows

    • Install Xitogent on Windows
    • Uninstall Xitogent on Windows
    • Xitogent Service
    • Update Xitogent on Windows
    • Disk Performance (I/O)
  • Xitogent on Azure

    • Xitogent on Azure
    • Monitor Azure Linux VM
    • Monitor Azure Windows VM
  • Xitogent CLI

    • Xitogent CLI
    • Xitogent Pause/Unpause
    • Xitogent Status
    • Xitogent debug
    • Xitogent Diagnosis
    • Which data we collect
  • Xitoring CLI

    • Xitoring CLI
  • Uptime Monitoring

    • What is Uptime Monitoring
    • Monitoring Nodes (Geographic Locations)
    • What is Check
    • Auto-Discovery
    • Auto Fault Tolerance
    • Heartbeat Check
    • Ping Check
    • HTTP(S) Check
    • DNS Check
    • FTP Check
    • SMTP Check
    • IMAP Check
    • POP3 Check
    • TCP Check
    • UDP Check
  • SSL Monitoring

    • SSL Monitoring
  • Incidents

    • Incidents
    • Incident's Root Cause
    • Incidents Notification
    • Incident Notes
    • Resolving Incidents Manually
    • Incident Policy
  • Maintenance Schedule

    • Maintenance Schedule
  • Email Reports

    • Email Reports
  • Integrations

    • Integrations
    • Apache Integration
    • CoreDNS Integration
    • CouchDB Integration
    • Disk Health Integration
    • Docker Integration
    • Dovecot Integration
    • Exim Integration
    • HAProxy Integration
    • IIS Integration
    • InfluxDB Integration
    • Kafka Integration
    • KeyDB Integration
    • LiteSpeed Integration
    • MongoDB Integration
    • MySQL Integration
    • Netstat Integration
    • Nginx Integration
    • OpenLiteSpeed Integration
    • OpenVPN Integration
    • PHP-FPM Integration
    • Postfix Integration
    • PostgreSQL Integration
    • RabbitMQ integration
    • Redis Integration
    • MS SQL Server Integration
    • Supervisor Integration
    • Varnish Integration
    • Wireguard Integration
  • Notifications

    • Notifications
    • Creating Notification Roles
    • Email Integration
    • Mobile Push Notifications
    • SMS Integration
    • Phone call Integration
    • Webhook Integration
    • Integration for Slack
    • Telegram Integration
    • WhatsApp Integration
    • Mattermost Integration
    • Discord Integration
    • Google Chat Integration
    • Microsoft Teams Integration
    • Atlassian Opsgenie Integration
    • Splunk On-Call Integration
    • Pushover Integration
    • Pushbullet Integration
    • Gotify Integration
    • Ntfy Integration
    • Spike.sh Integration
    • PagerDuty Integration
    • Zapier Integration
    • AlertOps Integration
  • Status Page

    • Status page
  • 3rd Party Status Pages

    • Using 3rd party Status Pages
    • Atlassian Status Page Integration with Xitoring
    • Status.io Integration with Xitoring
    • Statuspal Integration with Xitoring
    • Instatus Integration with Xitoring
  • Dashboards

    • Main Dashboard
    • Custom Dashboards
  • Metrics

    • Metrics
  • MCP Server

    • Setup & Tool Reference

OpenVPN Integration

OpenVPN is a widely‑used SSL/TLS VPN solution that supports a built‑in management interface and periodic status logfile exports. Xitogent can consume either source to expose key metrics directly inside the Xitoring app.

1. Prepare OpenVPN for metrics collection

Choose one of the following methods and reload OpenVPN before proceeding.

1.1 Method A: Enable the management plugin

Add a management directive to your server configuration file (e.g. /etc/openvpn/server.conf). You may expose the interface via TCP/IP or a UNIX domain socket.

TCP example

# Listen only on localhost, TCP port 7505
management 127.0.0.1 7505

UNIX socket example

# Create a local socket at /run/openvpn/server.mgmt
management /run/openvpn/server.mgmt unix

Security tip: Restrict access with the optional management-client-user directive or file‑based ACLs on the socket.

1.2 Method B: Enable the rotating status logfile

Add or modify the status directive:

# Export status every 30 seconds
status /var/log/openvpn/server-status.log 30

Ensure the logfile is readable by the xitogent user (e.g. via group membership or ACL).

1.3 Reload OpenVPN

sudo systemctl reload openvpn-server@server.service

Verify the chosen endpoint:

# TCP method
nc -z localhost 7505 && echo "Management port responsive"
# UNIX method
test -S /run/openvpn/server.mgmt && echo "Socket present"
# Logfile method
head /var/log/openvpn/server-status.log

2. Enable OpenVPN integration in Xitogent

Run:

xitogent integrate

Select OpenVPN. Xitogent will create /etc/xitogent/integrations/openvpn_integration.conf.

3. Metrics collected

MetricTypeDescription
connected_clientsGaugeCurrent number of established VPN sessions.
total_rx_bytesCounterAggregate bytes received by the OpenVPN server since start.
total_tx_bytesCounterAggregate bytes transmitted by the OpenVPN server since start.
rx_bytes_per_secGaugeInstantaneous receive throughput (bytes/s).
tx_bytes_per_secGaugeInstantaneous transmit throughput (bytes/s).
clients.*.bytes_receivedCounterPer‑client total bytes pulled from server.
clients.*.bytes_sentCounterPer‑client total bytes pushed to server.
clients.*.rx_bytes_per_secGaugePer‑client receive rate.
clients.*.tx_bytes_per_secGaugePer‑client transmit rate.

Note Counters reset when the OpenVPN daemon restarts.

4. Setup Triggers for OpenVPN integration

Use‑caseConditionSeverity
Client surgeconnected_clients > 200 for 5 minWARNING
High bandwidthrx_bytes_per_sec > 50 MB/s for 2 minMAJOR

5. Troubleshooting

SymptomResolution
No metricsConfirm the mode and endpoint in openvpn_integration.conf match your OpenVPN configuration. Tail /var/log/xitogent/xitogent.log for parsing or connection errors.
Permission denied to UNIX socketAdjust socket permissions (e.g., chmod 660).
Stale logfile dataEnsure the status interval is ≤ 60 seconds and that log rotation doesn’t purge the file prematurely.

6. Next steps

  • Combine OpenVPN metrics with PING/TCP checks to monitor uplink quality.
  • Build dashboards that chart bandwidth trends against connected client counts during peak hours.
Last Updated: 9/12/25, 3:58 PM
Prev
OpenLiteSpeed Integration
Next
PHP-FPM Integration