]> git.ipfire.org Git - ipfire-2.x.git/blame - src/scripts/ovpn-collectd-convert
Early spring clean: Remove trailing whitespaces, and correct licence headers
[ipfire-2.x.git] / src / scripts / ovpn-collectd-convert
CommitLineData
831a5ef6 1#!/usr/bin/perl
66c36198
PM
2###############################################################################
3# #
4# IPFire.org - A linux based firewall #
5# Copyright (C) 2007-2022 IPFire Team <info@ipfire.org> #
6# #
7# This program is free software: you can redistribute it and/or modify #
8# it under the terms of the GNU General Public License as published by #
9# the Free Software Foundation, either version 3 of the License, or #
10# (at your option) any later version. #
11# #
12# This program is distributed in the hope that it will be useful, #
13# but WITHOUT ANY WARRANTY; without even the implied warranty of #
14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
15# GNU General Public License for more details. #
16# #
17# You should have received a copy of the GNU General Public License #
18# along with this program. If not, see <http://www.gnu.org/licenses/>. #
19# #
20###############################################################################
831a5ef6
AM
21
22my %ovpnconfig=();
23
24require '/var/ipfire/general-functions.pl';
25
26open(COLLECTDVPN, ">${General::swroot}/ovpn/collectd.vpn") or die "Unable to open collectd.vpn: $!";
27print COLLECTDVPN "Loadplugin openvpn\n";
28print COLLECTDVPN "\n";
29print COLLECTDVPN "<Plugin openvpn>\n";
30print COLLECTDVPN "Statusfile \"/var/run/ovpnserver.log\"\n";
31
32&General::readhasharray("/var/ipfire/ovpn/ovpnconfig", \%ovpnconfig);
33foreach my $key (keys %ovpnconfig) {
34 if ($ovpnconfig{$key}[0] eq 'on' && $ovpnconfig{$key}[3] eq 'net') {
35 print COLLECTDVPN "Statusfile \"/var/run/openvpn/$ovpnconfig{$key}[1]-n2n\"\n";
36 }
37}
38
39print COLLECTDVPN "</Plugin>\n";
40close(COLLECTDVPN);
41
42# Reload collectd afterwards
43system("/usr/local/bin/collectdctrl restart &>/dev/null");