Newer
Older
from aiohttp import web
import sentry_sdk
from sentry_sdk.integrations.aiohttp import AioHttpIntegration
import environ
def prepare_app(app, pool):
app.router.add_get("/", routes.index)
app.router.add_get("/api/domains", routes.domains)
app.router.add_post("/api/domains", routes.domains)
app.router.add_get("/api/domains/stats", routes.stats)
app.add_routes([web.static("/static", routes.STATIC_DIR)])
app["pool"] = pool
async def on_shutdown(app):
if app["pool"]:
app["pool"].close()
await app["pool"].wait_closed()
def initialize_sentry():
dsn = environ.Env()("FUNKWHALE_NETWORK_DSN", default=None)
if dsn == None:
print("Sentry is not configured, skipping")
return
sentry_sdk.init(
dsn="",
integrations=[
AioHttpIntegration(),
],
traces_sample_rate=1.0,
)
app = web.Application(middlewares=settings.MIDDLEWARES)
prepare_app(app, None)
app.on_shutdown.append(on_shutdown)
if __name__ == "__main__":
start()