
from fastapi import FastAPI
from v3.api_v3 import subapi_v3
from v2.api_v2 import subapi_v2
from v1.api import subapi_v1
from pympler import muppy, summary
import logging
from eu.dnetlib.metrics_utils import metrics 
from eu.dnetlib.metricsMiddleWare import PrometheusMiddleware
import sys


app = FastAPI()

log = logging.getLogger("scholexplorer")
log.setLevel(logging.INFO)
fh = logging.StreamHandler(sys.stdout) 
fh.setLevel(logging.INFO)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
log.addHandler(fh)
log.info("Scholexplorer Api Restarted")



app.add_middleware(PrometheusMiddleware)
app.add_route("/metrics/", metrics)
app.mount("/v3", subapi_v3)
app.mount("/v2", subapi_v2)
app.mount("/v1", subapi_v1)