Compare commits

..

No commits in common. "178c812a7cca17fa2e8c60527198d0f0d728e08e" and "1dc6fab755783e62fc5beaf84cfb4405fa69e573" have entirely different histories.

4 changed files with 26 additions and 45 deletions

View file

@ -4,21 +4,20 @@ from bundlewrap.repo import Repository
from os.path import realpath, dirname from os.path import realpath, dirname
from sys import argv from sys import argv
from ipaddress import ip_network, ip_interface from ipaddress import ip_network, ip_interface
import argparse
if len(argv) != 3:
print(f'usage: {argv[0]} <node> <client>')
exit(1)
# get info from repo
repo = Repository(dirname(dirname(realpath(__file__)))) repo = Repository(dirname(dirname(realpath(__file__))))
server_node = repo.get_node('htz.mails') server_node = repo.get_node(argv[1])
available_clients = server_node.metadata.get('wireguard/clients').keys()
# parse args if argv[2] not in server_node.metadata.get('wireguard/clients'):
parser = argparse.ArgumentParser(description='Generate WireGuard client configuration.') print(f'client {argv[2]} not found in: {server_node.metadata.get("wireguard/clients").keys()}')
parser.add_argument('client', choices=available_clients, help='The client name to generate the configuration for.') exit(1)
args = parser.parse_args()
data = server_node.metadata.get(f'wireguard/clients/{argv[2]}')
# get cert
data = server_node.metadata.get(f'wireguard/clients/{args.client}')
vpn_network = ip_interface(server_node.metadata.get('wireguard/my_ip')).network vpn_network = ip_interface(server_node.metadata.get('wireguard/my_ip')).network
allowed_ips = [ allowed_ips = [
vpn_network, vpn_network,
@ -44,15 +43,10 @@ Endpoint = {ip_interface(server_node.metadata.get('network/external/ipv4')).ip}:
PersistentKeepalive = 10 PersistentKeepalive = 10
''' '''
answer = input("print config or qrcode? [Cq]: ").strip().upper() print('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
match answer: print(conf)
case '' | 'C': print('<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<')
print('>>>>>>>>>>>>>>>')
print(conf) if input("print qrcode? [Yn]: ").upper() in ['', 'Y']:
print('<<<<<<<<<<<<<<<')
case 'Q':
import pyqrcode import pyqrcode
print(pyqrcode.create(conf).terminal(quiet_zone=1)) print(pyqrcode.create(conf).terminal(quiet_zone=1))
case _:
print(f'Invalid option "{answer}".')
exit(1)

View file

@ -181,13 +181,6 @@ def routeros_monitoring_telegraf_inputs(metadata):
"is_tag": True, "is_tag": True,
}, },
# join IF-MIB for better labels
{
"name": "ifAlias",
"oid": "IF-MIB::ifAlias",
"is_tag": True,
},
# ========================= # =========================
# Physical layer (L1/L2) # Physical layer (L1/L2)
# ========================= # =========================

View file

@ -13,8 +13,6 @@ from(bucket: "${bucket}")
% endif % endif
% if function == 'derivative': % if function == 'derivative':
|> derivative(nonNegative: true) |> derivative(nonNegative: true)
% elif function == 'difference':
|> difference(nonNegative: true)
% endif % endif
% if boolean_to_int: % if boolean_to_int:
|> map(fn: (r) => ({r with _value: if r._value == true then 1 else 0 })) |> map(fn: (r) => ({r with _value: if r._value == true then 1 else 0 }))

View file

@ -11,12 +11,11 @@
], ],
'operating_system': 'routeros', 'operating_system': 'routeros',
}, },
'function': 'difference', 'function': 'derivative',
'over': 0,
}, },
'mikrotik': { 'mikrotik': {
'filters': { 'filters': {
'_measurement': 'interface_errors', '_measurement': 'interface_mikrotik',
'_field': [ '_field': [
'rx_fcs_errors', 'rx_fcs_errors',
'rx_align_errors', 'rx_align_errors',
@ -31,14 +30,13 @@
], ],
'operating_system': 'routeros', 'operating_system': 'routeros',
}, },
'function': 'difference', 'function': 'derivative',
'over': 0,
}, },
}, },
'min': 0, 'min': 0,
'unit': 'cps', 'unit': 'pps',
'tooltip': 'multi', 'tooltip': 'multi',
'display_name': '${__field.name} ${__field.labels.ifName} ${__field.labels.ifAlias}', 'display_name': '${__field.name} ${__field.labels.ifName}',
'legend': { 'legend': {
'displayMode': 'table', 'displayMode': 'table',
'placement': 'right', 'placement': 'right',
@ -59,12 +57,11 @@
], ],
'operating_system': 'routeros', 'operating_system': 'routeros',
}, },
'function': 'difference', 'function': 'derivative',
'over': 0,
}, },
'mikrotik': { 'mikrotik': {
'filters': { 'filters': {
'_measurement': 'interface_errors', '_measurement': 'interface_mikrotik',
'_field': [ '_field': [
'rx_too_short', 'rx_too_short',
'rx_too_long', 'rx_too_long',
@ -78,14 +75,13 @@
], ],
'operating_system': 'routeros', 'operating_system': 'routeros',
}, },
'function': 'difference', 'function': 'derivative',
'over': 0,
}, },
}, },
'min': 0, 'min': 0,
'unit': 'cps', 'unit': 'pps',
'tooltip': 'multi', 'tooltip': 'multi',
'display_name': '${__field.name} ${__field.labels.ifName} ${__field.labels.ifAlias}', 'display_name': '${__field.name} ${__field.labels.ifName}',
'legend': { 'legend': {
'displayMode': 'table', 'displayMode': 'table',
'placement': 'right', 'placement': 'right',