FlowAnalyser/FlowAnalyserMain.py
2023-09-11 10:53:50 +02:00

78 lines
3.0 KiB
Python

from env import *
from flask import Flask, render_template
import os
import FlowTest
from sysjobs import *
import sysjob2html
import pandas as pd
import logging
from dateutil import tz
from pytz import timezone
import koerselsOverblikUtils
from koerselsOverblikUtils import OverblikDag
def create_app(test_config=None):
# create and configure the app
FlowAnalyserMain = Flask(__name__, instance_relative_config=True)
#app.config.from_mapping(
## SECRET_KEY='dev',
# DATABASE=os.path.join(app.instance_path, 'flaskr.sqlite'),
#)
if test_config is None:
# load the instance config, if it exists, when not testing
FlowAnalyserMain.config.from_pyfile('config.py', silent=True)
else:
# load the test config if passed in
FlowAnalyserMain.config.from_mapping(test_config)
# ensure the instance folder exists
try:
os.makedirs(FlowAnalyserMain.instance_path)
except OSError:
pass
@FlowAnalyserMain.context_processor
def inject_debug():
return dict(debug=FlowAnalyserMain.debug)
# a simple page that says hello
@FlowAnalyserMain.route('/hello')
def hello():
return FlowTest.test()
@FlowAnalyserMain.route('/test')
def test():
return render_template('index.html', overblikDag=OverblikDag(session))
#return render_template('index.html', test=listSysjobs6)#,startSlut=listStartSlutjobs)
@FlowAnalyserMain.route('/test3')
def test3():
sysjobs=(Sysjobs.getNattensKoersel(session))
return render_template('index3.html', test3=sysjobs)
@FlowAnalyserMain.route('/test4')
def test4():
sessions=(biadmin_log_ActiveSessionsByInspari.getSessionTimeSpan(session,
datetime.fromisoformat('2023-06-01 23:14:16.817'),
datetime.fromisoformat('2023-06-02 03:14:18.817')))
return render_template('index4.html', test4=sessions)
@FlowAnalyserMain.route('/test4/<sessionID>/<logdate>')
def test4_getSession(sessionID,logdate):
sessions=(biadmin_log_ActiveSessionsByInspari.getSessionByID(session,int(sessionID),
datetime.fromisoformat(logdate).astimezone(tz.gettz('Europe/Copenhagen'))))
return render_template('index4.html', test4=sessions)
@FlowAnalyserMain.route('/test2')
def test2():
with Session(engine) as session:
sysjobs=(Sysjobs.getNattensKoersel(session))
data2=json.dumps([str(b) for b in sysjobs])
return render_template('index2.html', test2=sysjobs)
if __name__ == '__main__':
FlowAnalyserMain.run()
return FlowAnalyserMain
engine=inn.getEngine("msdb")
logging.basicConfig()
logging.getLogger("sqlalchemy.engine").setLevel(logging.DEBUG)
logging.getLogger("sqlalchemy.pool").setLevel(logging.DEBUG)
with Session(engine) as session:
FlowAnalyserMain=create_app()