nordvpn-exporter

A simple NordVPN Exporter


Keywords
nordvpn, nordvpn-exporter, prometheus-exporter, python3
License
Apache-2.0
Install
pip install nordvpn-exporter==1.1

Documentation

GitHub GitHub Repo stars GitHub issues PyPI - Status PyPI PyPI - License PyPI - Format PyPI - Python Version Release

nordvpn Prometheus Exporter

This is not official NordVPN exporter.

A simple exporter fetch info from nordvpn cli.

Why?

To monitor remote devices VPN connection. In my case, I use RaspberryPi4 and run nordvpn in docker

Dependency

  • nordvpn cli.
    • Installation guide here

Install

$ pip3 install nordvpn_exporter

Usage

$ nordvpn_exporter --help
usage: nordvpn_exporter [-h] [-d] [-p PORT] [-v]

Simple NordVPN exporter

optional arguments:
  -h, --help  show this help message and exit
  -d          Run as daemon
  -p PORT     Port
  -v          show program's version number and exit
  • Run exporter directly and curl http://localhost:8082/metrics in another terminal
$ nordvpn_exporter 
Starting NordVPN Exporter on http://localhost:8082
  • I created a simple "daemonize" option to run exporter background
$ nordvpn_exporter -d
Starting NordVPN Exporter on http://localhost:8082
[*] Running in background

$ curl http://localhost:8082/metrics | head
#=#=-#     #                                                                                                                                     
# HELP python_gc_objects_collected_total Objects collected during gc
# TYPE python_gc_objects_collected_total counter
python_gc_objects_collected_total{generation="0"} 264.0
python_gc_objects_collected_total{generation="1"} 33.0
python_gc_objects_collected_total{generation="2"} 0.0
# HELP python_gc_objects_uncollectable_total Uncollectable object found during GC
# TYPE python_gc_objects_uncollectable_total counter
python_gc_objects_uncollectable_total{generation="0"} 0.0
python_gc_objects_uncollectable_total{generation="1"} 0.0
python_gc_objects_uncollectable_total{generation="2"} 0.0