habulaj commited on
Commit
b871975
·
verified ·
1 Parent(s): 4c6217e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +6 -2
app.py CHANGED
@@ -14,18 +14,22 @@ class LogRequestMiddleware(BaseHTTPMiddleware):
14
  # Captura o início da requisição
15
  start_time = time.time()
16
 
 
 
 
 
 
17
  # Realiza a requisição
18
  response = await call_next(request)
19
 
20
  # Dados da requisição
21
- ip = request.client.host # IP de origem
22
  method = request.method # Método HTTP
23
  path = request.url.path # Caminho da URL
24
  status_code = response.status_code # Código de status da resposta
25
  process_time = time.time() - start_time # Tempo de processamento
26
 
27
  # Log detalhado
28
- logger.info(f"Request: {method} {path} from {ip} - Status: {status_code} - Process Time: {process_time:.4f} seconds")
29
 
30
  return response
31
 
 
14
  # Captura o início da requisição
15
  start_time = time.time()
16
 
17
+ # Verificar o IP do cliente no cabeçalho X-Forwarded-For
18
+ client_ip = request.headers.get("X-Forwarded-For")
19
+ if not client_ip:
20
+ client_ip = request.client.host # Se não houver X-Forwarded-For, usa o IP direto
21
+
22
  # Realiza a requisição
23
  response = await call_next(request)
24
 
25
  # Dados da requisição
 
26
  method = request.method # Método HTTP
27
  path = request.url.path # Caminho da URL
28
  status_code = response.status_code # Código de status da resposta
29
  process_time = time.time() - start_time # Tempo de processamento
30
 
31
  # Log detalhado
32
+ logger.info(f"Request: {method} {path} from {client_ip} - Status: {status_code} - Process Time: {process_time:.4f} seconds")
33
 
34
  return response
35