File size: 780 Bytes
385f196
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
from __future__ import annotations

from typing import Any

from fastapi import APIRouter, Query, Request

from app.services import auth_service
from app.services import audit_log_service


router = APIRouter(prefix="/api/logs", tags=["logs"])


@router.get("/status")
def logs_status(request: Request) -> dict[str, Any]:
    auth_service.require_admin(request)
    return audit_log_service.ensure_logs_folder_in_dataset()


@router.get("/events")
def logs_events(
    request: Request,
    scope: str | None = Query(default=None),
    usuario: str | None = Query(default=None),
    limit: int = Query(default=200, ge=1, le=1000),
) -> dict[str, Any]:
    auth_service.require_admin(request)
    return audit_log_service.read_log_events(scope=scope, usuario=usuario, limit=limit)