summaryrefslogtreecommitdiff
path: root/src/conf_mode/service_monitoring_telegraf.py
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2023-04-11 20:45:06 +0200
committerGitHub <noreply@github.com>2023-04-11 20:45:06 +0200
commit14582acd1c7d169f6d50efc7aaf250fecff81740 (patch)
tree892ad42fdd8f142529dda7da1349b5cb3b6a32b1 /src/conf_mode/service_monitoring_telegraf.py
parentc5cd065773a0ce5b2b9e94ae6c79a72b805832a6 (diff)
parent2179cf45d606d23abfcb96c000db5c9316c48a59 (diff)
downloadvyos-1x-14582acd1c7d169f6d50efc7aaf250fecff81740.tar.gz
vyos-1x-14582acd1c7d169f6d50efc7aaf250fecff81740.zip
Merge pull request #1950 from sever-sever/T5152
T5152: Get default hostname for telegraf from FQDN or hostname
Diffstat (limited to 'src/conf_mode/service_monitoring_telegraf.py')
-rwxr-xr-xsrc/conf_mode/service_monitoring_telegraf.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/conf_mode/service_monitoring_telegraf.py b/src/conf_mode/service_monitoring_telegraf.py
index 363408679..47510ce80 100755
--- a/src/conf_mode/service_monitoring_telegraf.py
+++ b/src/conf_mode/service_monitoring_telegraf.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python3
#
-# Copyright (C) 2021-2022 VyOS maintainers and contributors
+# Copyright (C) 2021-2023 VyOS maintainers and contributors
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 or later as
@@ -15,6 +15,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import os
+import socket
import json
from sys import exit
@@ -57,6 +58,13 @@ def get_nft_filter_chains():
return chain_list
+def get_hostname() -> str:
+ try:
+ hostname = socket.getfqdn()
+ except socket.gaierror:
+ hostname = socket.gethostname()
+ return hostname
+
def get_config(config=None):
if config:
conf = config
@@ -79,6 +87,7 @@ def get_config(config=None):
monitoring = dict_merge(default_values, monitoring)
monitoring['custom_scripts_dir'] = custom_scripts_dir
+ monitoring['hostname'] = get_hostname()
monitoring['interfaces_ethernet'] = Section.interfaces('ethernet', vlan=False)
monitoring['nft_chains'] = get_nft_filter_chains()