telemetry/meta_server.py
from aiohttp import web
def build_meta_app(instance_id: str, version: str, commit: str) -> web.Application:
async def handle_meta(request: web.Request) -> web.Response:
return web.json_response({
"product": "open-autosecure",
"version": version,
"instance_id": instance_id,
"commit": commit,
})
app = web.Application()
app.add_routes([web.get("/__meta", handle_meta)])
return app
async def start_meta_server(app: web.Application, host: str, port: int) -> web.AppRunner:
runner = web.AppRunner(app)
await runner.setup()
site = web.TCPSite(runner, host, port)
await site.start()
return runner