# app/services/api_tracker.py import logging def registrar_contador( conn, api, endpoint, metodo, status_code, sucesso, duracao_ms, erro=None ): """Grava uma linha na tabela contadores_api.""" cursor = conn.cursor() try: cursor.execute( """ INSERT INTO orvel_ti.contadores_api (api, endpoint, metodo_http, status_code, sucesso, duracao_ms, mensagem_erro) VALUES (:api, :endpoint, :metodo, :status, :sucesso, :duracao, :erro) """, { "api": api, "endpoint": endpoint, "metodo": metodo, "status": status_code, "sucesso": "S" if sucesso else "N", "duracao": duracao_ms, "erro": erro[:500] if erro else None, }, ) conn.commit() except Exception as e: conn.rollback() logging.error(f"Falha ao gravar contador: {e}") finally: cursor.close()