monitoring-api/packages/v1/administrativo/services/log/log_show_service.py
2025-10-06 09:30:41 -03:00

29 lines
No EOL
1.1 KiB
Python

from fastapi import HTTPException, status
# NOTE: O esquema de entrada para a ação de exibição de um único log
# precisaria de um esquema (Schema) que carregue o 'log_id'.
# Vamos assumir a necessidade de um LogIdSchema.
# from packages.v1.administrativo.schemas.log_schema import LogIdSchema
from packages.v1.administrativo.actions.log.log_show_action import ShowAction
class ShowService:
# O método execute deve receber o esquema que contém a ID do log a ser buscado
# def execute(self, log_id_schema: LogIdSchema):
def execute(self, schema):
# Instanciamento de ação com prefixo 'log'
log_show_action = ShowAction()
# Executa a ação em questão (buscando pelo log_id)
data = log_show_action.execute(schema)
if not data:
# Retorna uma exceção
raise HTTPException(
status_code=status.HTTP_404_NOT_FOUND,
detail='Não foi possível localizar o registro de log'
)
# Retorno da informação (log_id, client_id, date_post, file)
return data