converted pull scripts to configuration.py

This commit is contained in:
Nicholas St. Germain 2018-02-12 18:31:38 -06:00
parent 67d97af546
commit 6f560785d2
6 changed files with 61 additions and 49 deletions

View file

@ -1,25 +1,18 @@
# Do not edit this script. Edit configuration.py
import requests import requests
from datetime import datetime, timezone from datetime import datetime, timezone
from influxdb import InfluxDBClient from influxdb import InfluxDBClient
# noinspection PyUnresolvedReferences import configuration
from requests.packages.urllib3.exceptions import InsecureRequestWarning
# noinspection PyUnresolvedReferences
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
current_time = datetime.now(timezone.utc).astimezone().isoformat() current_time = datetime.now(timezone.utc).astimezone().isoformat()
stats = { stats = {
"name": 'router', 'token': requests.post('{}/api/tokenservices'.format(configuration.asa_url),
"ip": 'X.X.X.X' auth=(configuration.asa_username, configuration.asa_password), verify=False)
} }
stats['token'] = requests.post('https://{}/api/tokenservices'.format(stats['ip']), auth=('username', 'password'),
verify=False)
stats['headers'] = {'X-Auth-Token': stats['token'].headers['X-Auth-Token']} stats['headers'] = {'X-Auth-Token': stats['token'].headers['X-Auth-Token']}
stats['outside_interface'] = requests.get('https://{}/api/monitoring/device/interfaces/Outside'.format(stats['ip']), stats['outside_interface'] = requests.get('{}/api/monitoring/device/interfaces/Outside'.format(configuration.asa_url),
headers=stats['headers'], verify=False).json() headers=stats['headers'], verify=False).json()
influx_payload = [ influx_payload = [
@ -36,7 +29,8 @@ influx_payload = [
} }
] ]
influx = InfluxDBClient('grafana.domain.tld', 8086, 'root', 'root', 'firewall') influx = InfluxDBClient(configuration.grafana_url, configuration.grafana_port, configuration.grafana_username,
configuration.grafana_password, configuration.asa_grafana_db_name)
influx.write_points(influx_payload) influx.write_points(influx_payload)

27
configuration.py Normal file
View file

@ -0,0 +1,27 @@
# Domains should be either http(s)://subdomain.domain.com or http(s):// domain.com/url_suffix
grafana_url = 'grafana.domain.tld'
grafana_port = 8086
grafana_username = 'root'
grafana_password = 'root'
sonarr_url = 'https://radarr.domain.tld'
sonarr_api_key = 'xxxxxxxxxxxxxxx'
sonarr_grafana_db_name = 'plex'
radarr_url = 'https://sonarr.domain.tld'
radarr_api_key = 'xxxxxxxxxxxxxxx'
radarr_grafana_db_name = 'plex'
ombi_url = 'https://ombi.domain.tld'
ombi_api_key = 'xxxxxxxxxxxxxxx'
ombi_grafana_db_name = 'plex'
tautulli_url = 'https://tautulli.domain.tld'
tautulli_api_key = 'xxxxxxxxxxxxxxx'
tautulli_grafana_db_name = 'plex'
asa_url = 'https://firewall.domain.tld'
asa_username = 'cisco'
asa_password = 'cisco'
asa_grafana_db_name = 'asa'

19
ombi.py
View file

@ -1,26 +1,24 @@
# Do not edit this script. Edit configuration.py
import requests import requests
from datetime import datetime, timezone from datetime import datetime, timezone
from influxdb import InfluxDBClient from influxdb import InfluxDBClient
# noinspection PyUnresolvedReferences import configuration
from requests.packages.urllib3.exceptions import InsecureRequestWarning
# noinspection PyUnresolvedReferences
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
current_time = datetime.now(timezone.utc).astimezone().isoformat() current_time = datetime.now(timezone.utc).astimezone().isoformat()
headers = {'Apikey': 'xxxxxxxxxxxxxxxxxxxxxxx'} headers = {'Apikey': configuration.ombi_api_key}
get_tv_requests = requests.get('https://request.domain.tld/api/v1/Request/tv', headers=headers).json() get_tv_requests = requests.get('{}/api/v1/Request/tv'.format(configuration.ombi_url), headers=headers).json()
get_movie_requests = requests.get('https://request.domain.tld/api/v1/Request/movie', headers=headers).json() get_movie_requests = requests.get('{}/api/v1/Request/movie'.format(configuration.ombi_url), headers=headers).json()
count_movie_requests = 0 count_movie_requests = 0
count_tv_requests = 0 count_tv_requests = 0
for show in get_tv_requests: for show in get_tv_requests:
count_tv_requests +=1 count_tv_requests += 1
for movie in get_movie_requests: for movie in get_movie_requests:
count_movie_requests +=1 count_movie_requests += 1
influx_payload = [ influx_payload = [
{ {
@ -35,6 +33,7 @@ influx_payload = [
} }
] ]
influx = InfluxDBClient('grafana.domain.tld', 8086, 'root', 'root', 'plex') influx = InfluxDBClient(configuration.grafana_url, configuration.grafana_port, configuration.grafana_username,
configuration.grafana_password, configuration.ombi_grafana_db_name)
influx.write_points(influx_payload) influx.write_points(influx_payload)

View file

@ -1,17 +1,14 @@
# Do not edit this script. Edit configuration.py
import requests import requests
from datetime import datetime, timezone from datetime import datetime, timezone
from influxdb import InfluxDBClient from influxdb import InfluxDBClient
# noinspection PyUnresolvedReferences import configuration
from requests.packages.urllib3.exceptions import InsecureRequestWarning
# noinspection PyUnresolvedReferences
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
current_time = datetime.now(timezone.utc).astimezone().isoformat() current_time = datetime.now(timezone.utc).astimezone().isoformat()
api_key = 'xxxxxxxxxxxxxxxxxxxxxxxx' headers = {'X-Api-Key': configuration.radarr_api_key}
headers = {'X-Api-Key': api_key} get_movies = requests.get('{}/api/movie'.format(configuration.radarr_url), headers=headers).json()
get_movies = requests.get('https://radarr.domain.tld/api/movie', headers=headers).json()
movies = {d['tmdbId']: d for d in get_movies} movies = {d['tmdbId']: d for d in get_movies}
missing = [] missing = []
influx_payload = [] influx_payload = []
@ -35,6 +32,7 @@ for movie, id in missing:
} }
) )
influx = InfluxDBClient('grafana.domain.tld', 8086, 'root', 'root', 'plex') influx = InfluxDBClient(configuration.grafana_url, configuration.grafana_port, configuration.grafana_username,
configuration.grafana_password, configuration.radarr_grafana_db_name)
influx.write_points(influx_payload) influx.write_points(influx_payload)

View file

@ -1,17 +1,13 @@
# Do not edit this script. Edit configuration.py
import requests import requests
from datetime import datetime, timezone from datetime import datetime, timezone
from influxdb import InfluxDBClient from influxdb import InfluxDBClient
# noinspection PyUnresolvedReferences import configuration
from requests.packages.urllib3.exceptions import InsecureRequestWarning
# noinspection PyUnresolvedReferences
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
current_time = datetime.now(timezone.utc).astimezone().isoformat() current_time = datetime.now(timezone.utc).astimezone().isoformat()
headers = {'X-Api-Key': configuration.sonarr_api_key}
api_key = 'xxxxxxxxxxxxxxxxxxxxxxxxxx' get_tv_shows = requests.get('{}/api/wanted/missing/?pageSize=1000'.format(configuration.sonarr_url),
headers = {'X-Api-Key': api_key}
get_tv_shows = requests.get('https://sonarr.domain.tld/api/wanted/missing/?pageSize=1000',
headers=headers).json()['records'] headers=headers).json()['records']
tv_shows = {d['id']: d for d in get_tv_shows} tv_shows = {d['id']: d for d in get_tv_shows}
missing = [] missing = []
@ -37,6 +33,7 @@ for show, id in missing:
} }
) )
influx = InfluxDBClient('grafana.domain.tld', 8086, 'root', 'root', 'plex') influx = InfluxDBClient(configuration.grafana_url, configuration.grafana_port, configuration.grafana_username,
configuration.grafana_password, configuration.sonarr_grafana_db_name)
influx.write_points(influx_payload) influx.write_points(influx_payload)

View file

@ -1,17 +1,13 @@
# Do not edit this script. Edit configuration.py
import requests import requests
import geohash
from datetime import datetime, timezone from datetime import datetime, timezone
from influxdb import InfluxDBClient from influxdb import InfluxDBClient
# noinspection PyUnresolvedReferences import configuration
from requests.packages.urllib3.exceptions import InsecureRequestWarning
# noinspection PyUnresolvedReferences
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
current_time = datetime.now(timezone.utc).astimezone().isoformat() current_time = datetime.now(timezone.utc).astimezone().isoformat()
payload = {'apikey': 'xxxxxxxxxxxxxx', 'cmd': 'get_activity'} payload = {'apikey': configuration.tautulli_api_key, 'cmd': 'get_activity'}
activity = requests.get('https://plexpy.domain.tld/api/v2', params=payload).json()['response']['data'] activity = requests.get('{}/api/v2'.format(configuration.tautulli_url), params=payload).json()['response']['data']
sessions = {d['session_id']: d for d in activity['sessions']} sessions = {d['session_id']: d for d in activity['sessions']}
@ -49,6 +45,7 @@ for session in sessions.keys():
} }
) )
influx = InfluxDBClient('grafana.domain.tld', 8086, 'root', 'root', 'plex') influx = InfluxDBClient(configuration.grafana_url, configuration.grafana_port, configuration.grafana_username,
configuration.grafana_password, configuration.tautulli_grafana_db_name)
influx.write_points(influx_payload) influx.write_points(influx_payload)