Select Supported Platforms

Select Supported Architectures

Select Tier

Github Name


v0.1.0 · public · Published about 2 months ago

README
Asset Definition
Release Notes
Release Assets

Sensu Bonsai Asset
Go Test
goreleaser

Sensu OpenVPN Check

Table of Contents

Overview

The Sensu OpenVPN Check is a Sensu Check that verifies the status of an OpenVPN server using its status files.
The check outputs the number of active sessions and can optionally evaluate session count thresholds and file age
thresholds to make sure the server is active.

Files

Usage examples

Help Output

OpenVPN server status check for Sensu

Usage:
  sensu-openvpn-check [flags]
  sensu-openvpn-check [command]

Available Commands:
  completion  Generate the autocompletion script for the specified shell
  help        Help about any command
  version     Print the version number of this plugin

Flags:
  -h, --help                        help for sensu-openvpn-check
      --min-clients-crit uint       The OpenVPN minimum clients threshold for critical
      --min-clients-warn uint       The OpenVPN minimum clients threshold for warning
  -f, --status-file string          The OpenVPN status file
      --status-file-age-crit uint   The OpenVPN status file age threshold for critical (default 180)
      --status-file-age-warn uint   The OpenVPN status file age threshold for warning (default 120)

Use "sensu-openvpn-check [command] --help" for more information about a command.

Environment Variables

Argument Environment Variable
--min-clients-crit OPENVPN_MIN_CLIENTS_CRIT
--min-clients-warn OPENVPN_MIN_CLIENTS_WARN
--status-file OPENVPN_STATUS_FILE
--status-file-age-crit OPENVPN_STATUS_FILE_AGE_CRIT
--status-file-age-warn OPENVPN_STATUS_FILE_AGE_WARN

Output

Unless there's an error the check will output the number of active clients connected to the OpenVPN server.
Additionally,
a warning or error message based on threshold evaluation can be printed on the next line.

Number of Clients Thresholds

The check can make sure there are a minimum number of clients connected to the OpenVPN server. The --min-clients-crit
and --min-clients-warn
options can be used to accomplish that. If the actual number of clients is lower than the critical threshold a status of
2 (critical) is returned by the check.
If the actual number of clients is less than the warning threshold a status of 1 (warning) is returned by the check.
In both cases a similar line is also printed on the terminal:

Error executing sensu-openvpn-check: error executing check: number of connection lower than critical threshold (13 < 200)

By default, the number of clients thresholds are not set.

Status File Age Thresholds

The check can evaluate the OpenVPN status file age and generate a warning or error status. An older status file
indicates the file
is not getting updated, potentially exposing a problem with the server.

If the file is older than the critical value set with --status-file-age-crit a status of 2 (critical) is returned by
the check.
If the file is older than the warning value set with --status-file-age-warn a status of 1 (warning) is returned by the
check.
In both cases a line is printed on the terminal:

Error executing sensu-openvpn-check: error executing check: file older than critical threshold (211.18 > 180.00)

By default, the warning threshold is set to 120 seconds and the critical threshold is set to 180 seconds.

Configuration

Asset registration

Sensu Assets are the best way to make use of this plugin. If you're not using an asset, please
consider doing so! If you're using sensuctl 5.13 with Sensu Backend 5.13 or later, you can use the
following command to add the asset:

sensuctl asset add sensu/sensu-openvpn-check

If you're using an earlier version of sensuctl, you can find the asset on
the [Bonsai Asset Index][https://bonsai.sensu.io/assets/sensu/sensu-openvpn-check].

Check definition

---
type: CheckConfig
api_version: core/v2
metadata:
  name: sensu-openvpn-check
  namespace: default
spec:
  command: sensu-openvpn-check --status-file /var/run/openvpn-status.log
  subscriptions:
    - system
  runtime_assets:
    - sensu/sensu-openvpn-check

Installation from source

The preferred way of installing and deploying this plugin is to use it as an Asset. If you would
like to compile and install the plugin from source or contribute to it, download the latest version
or create an executable script from this source.

From the local path of the sensu-openvpn-check repository:

go build

Additional notes

Contributing

For more information about contributing to this plugin, see Contributing.

Are you sure you want to report this asset?

Please describe the reason for reporting this asset. Our moderators will be notified and will disable the asset if it is found to be inappropriate.

×

You must be signed in to report this asset.

Sign In with Github

Download

×

Either download the source code:

Download Source

Or download the asset definition: