Parse influxdb 2 config data
This commit is contained in:
parent
f027e14447
commit
b8df2671c3
1 changed files with 36 additions and 15 deletions
|
@ -9,7 +9,7 @@ from configparser import ConfigParser, NoOptionError, NoSectionError
|
|||
from varken.varkenlogger import BlacklistFilter
|
||||
from varken.structures import SickChillServer, UniFiServer
|
||||
from varken.helpers import clean_sid_check, rfc1918_ip_check, boolcheck
|
||||
from varken.structures import SonarrServer, RadarrServer, OmbiServer, OverseerrServer, TautulliServer, InfluxServer
|
||||
from varken.structures import SonarrServer, RadarrServer, OmbiServer, OverseerrServer, TautulliServer, InfluxServer, Influx2Server
|
||||
|
||||
|
||||
class INIParser(object):
|
||||
|
@ -144,23 +144,44 @@ class INIParser(object):
|
|||
if read_file:
|
||||
self.config = self.read_file('varken.ini')
|
||||
self.config_blacklist()
|
||||
|
||||
# Parse InfluxDB options
|
||||
try:
|
||||
url = self.url_check(env.get('VRKN_INFLUXDB_URL', self.config.get('influxdb', 'url')),
|
||||
include_port=False, section='influxdb')
|
||||
port = int(env.get('VRKN_INFLUXDB_PORT', self.config.getint('influxdb', 'port')))
|
||||
ssl = boolcheck(env.get('VRKN_INFLUXDB_SSL', self.config.get('influxdb', 'ssl')))
|
||||
verify_ssl = boolcheck(env.get('VRKN_INFLUXDB_VERIFY_SSL', self.config.get('influxdb', 'verify_ssl')))
|
||||
self.influx2_enabled = env.get('VRKN_GLOBAL_INFLUXDB2_ENABLED', self.config.getboolean('global', 'influx2_enabled'))
|
||||
|
||||
username = env.get('VRKN_INFLUXDB_USERNAME', self.config.get('influxdb', 'username'))
|
||||
password = env.get('VRKN_INFLUXDB_PASSWORD', self.config.get('influxdb', 'password'))
|
||||
except NoOptionError as e:
|
||||
self.logger.error('Missing key in %s. Error: %s', "influxdb", e)
|
||||
self.rectify_ini()
|
||||
return
|
||||
if self.influx2_enabled:
|
||||
# Use INFLUX version 2
|
||||
try:
|
||||
url = self.url_check(env.get('VRKN_INFLUXDB2_URL', self.config.get('influx2', 'url')), section='influx2')
|
||||
ssl = boolcheck(env.get('VRKN_INFLUXDB2_SSL', self.config.get('influx2', 'ssl')))
|
||||
verify_ssl = boolcheck(env.get('VRKN_INFLUXDB2_VERIFY_SSL', self.config.get('influx2', 'verify_ssl')))
|
||||
|
||||
self.influx_server = InfluxServer(url=url, port=port, username=username, password=password, ssl=ssl,
|
||||
verify_ssl=verify_ssl)
|
||||
org = env.get('VRKN_INFLUXDB2_ORG', self.config.get('influx2', 'org'))
|
||||
token = env.get('VRKN_INFLUXDB2_TOKEN', self.config.get('influx2', 'token'))
|
||||
timeout = env.get('VRKN_INFLUXDB2_TIMEOUT', self.config.get('influx2', 'timeout'))
|
||||
except NoOptionError as e:
|
||||
self.logger.error('Missing key in %s. Error: %s', "influx2", e)
|
||||
self.rectify_ini()
|
||||
return
|
||||
|
||||
self.influx_server = Influx2Server(url=url, token=token, org=org, timeout=timeout, ssl=ssl,
|
||||
verify_ssl=verify_ssl)
|
||||
else:
|
||||
try:
|
||||
url = self.url_check(env.get('VRKN_INFLUXDB_URL', self.config.get('influxdb', 'url')),
|
||||
include_port=False, section='influxdb')
|
||||
port = int(env.get('VRKN_INFLUXDB_PORT', self.config.getint('influxdb', 'port')))
|
||||
ssl = boolcheck(env.get('VRKN_INFLUXDB_SSL', self.config.get('influxdb', 'ssl')))
|
||||
verify_ssl = boolcheck(env.get('VRKN_INFLUXDB_VERIFY_SSL', self.config.get('influxdb', 'verify_ssl')))
|
||||
|
||||
username = env.get('VRKN_INFLUXDB_USERNAME', self.config.get('influxdb', 'username'))
|
||||
password = env.get('VRKN_INFLUXDB_PASSWORD', self.config.get('influxdb', 'password'))
|
||||
except NoOptionError as e:
|
||||
self.logger.error('Missing key in %s. Error: %s', "influxdb", e)
|
||||
self.rectify_ini()
|
||||
return
|
||||
|
||||
self.influx_server = InfluxServer(url=url, port=port, username=username, password=password, ssl=ssl,
|
||||
verify_ssl=verify_ssl)
|
||||
|
||||
# Check for all enabled services
|
||||
for service in self.services:
|
||||
|
|
Loading…
Reference in a new issue