Add RRDTool integration for monitoring WireGuard stats

Introduces a new RRDTool service for tracking WireGuard interface and peer statistics. Adds required Docker configuration, API key handling, and new scripts for managing RRD files. Updates the `entrypoint.sh` and API permissions to accommodate the new functionality.
This commit is contained in:
Eduardo Silva 2025-02-21 11:33:13 -03:00
parent 7ecf111fbe
commit 07a806a073
8 changed files with 289 additions and 4 deletions

View file

@ -25,6 +25,8 @@ def get_api_key(api_name):
api_file_path = '/etc/wireguard/api_key'
elif api_name == 'routerfleet':
api_file_path = '/etc/wireguard/routerfleet_key'
elif api_name == 'rrdkey':
api_file_path = '/app_secrets/rrdtool_key'
else:
return api_key
@ -126,6 +128,12 @@ def wireguard_status(request):
pass
else:
return HttpResponseForbidden()
elif request.GET.get('rrdkey'):
api_key = get_api_key('rrdkey')
if api_key and api_key == request.GET.get('rrdkey'):
pass
else:
return HttpResponseForbidden()
else:
return HttpResponseForbidden()