Interface ArchbaseResourceAspect

All Known Implementing Classes:
SimpleArchbaseResourceAspect

public interface ArchbaseResourceAspect
Author:
edsonmartins
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Este ponto de corte é para o ponto de junção correspondente a todos os métodos públicos no controlador
    log(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint)
     
    void
    logPostExecutionData(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, org.springframework.util.StopWatch timer, Object result, String returnType, org.springframework.web.bind.annotation.RequestMapping methodRequestMapping, org.springframework.web.bind.annotation.RequestMapping classRequestMapping)
    Registra os dados seguintes no nível INFO sobre o método executado - Tempo de execução do método em milissegundos
    void
    logPreExecutionData(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, org.springframework.web.bind.annotation.RequestMapping methodRequestMapping)
    Registra os dados seguintes no nível INFO sobre o método de execução - Nome do método Par de nome-valor de argumento de método Solicite detalhes, incluindo referenciador, método HTTP, URI e nome de usuário
    void
     
    void
     
    void
    onException(org.aspectj.lang.JoinPoint joinPoint, Throwable t)
    Registra qualquer exceção lançada por método.
    void
    serialize(Object object, String objClassName, StringBuilder logMessage)
    Converte determinado objeto em sua representação JSON por meio de JsonUtil.
  • Method Details

    • allPublicControllerMethodsPointcut

      void allPublicControllerMethodsPointcut()
      Este ponto de corte é para o ponto de junção correspondente a todos os métodos públicos no controlador
    • methodOrClassLoggingEnabledPointcut

      void methodOrClassLoggingEnabledPointcut()
    • methodLoggingNotDisabledPointcut

      void methodLoggingNotDisabledPointcut()
    • log

      @Nullable Object log(@Nonnull org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint)
    • logPreExecutionData

      void logPreExecutionData(@Nonnull org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, @Nullable org.springframework.web.bind.annotation.RequestMapping methodRequestMapping)
      Registra os dados seguintes no nível INFO sobre o método de execução -
      • Nome do método
      • Par de nome-valor de argumento de método
      • Solicite detalhes, incluindo referenciador, método HTTP, URI e nome de usuário
      Parameters:
      proceedingJoinPoint - o objeto joinpoint que representa o método alvo
    • logPostExecutionData

      void logPostExecutionData(@Nonnull org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, @Nonnull org.springframework.util.StopWatch timer, @Nullable Object result, @Nonnull String returnType, @Nullable org.springframework.web.bind.annotation.RequestMapping methodRequestMapping, @Nullable org.springframework.web.bind.annotation.RequestMapping classRequestMapping)
      Registra os dados seguintes no nível INFO sobre o método executado -
      • Tempo de execução do método em milissegundos

      Registra os dados seguintes no nível DEBUG sobre o método executado -

      • Representação JSON do objeto retornado pelo método
      Parameters:
      proceedingJoinPoint - o ponto comum denotando o método executado
      timer - StopWatch objeto contendo o tempo de execução do método
      result - o objeto retornado pelo método executado
      returnType - nome da classe do objeto retornado pelo método executado
    • onException

      void onException(@Nonnull org.aspectj.lang.JoinPoint joinPoint, @Nonnull Throwable t)
      Registra qualquer exceção lançada por método. Este aspecto é executado APÓS a exceção ter sido lançada, então não posso engoli-lo aqui.
    • serialize

      void serialize(@Nullable Object object, @Nonnull String objClassName, @Nonnull StringBuilder logMessage)
      Converte determinado objeto em sua representação JSON por meio de JsonUtil. O JSON serializado para, em seguida, anexado a instância StringBuilder passada.

      Alguns casos excepcionais -

      1. Para objetos do tipo de arquivo, o tamanho do arquivo em bytes é impresso.
      2. Objetos simulados não são serializados. Em vez disso, uma mensagem é impressa indicando que o objeto é uma simulação objeto. Objetos simulados são detectados pela presença de substring 'mock' em seu nome de classe.
      Parameters:
      object - o objeto para serializar
      objClassName - nome da classe do objeto.
      logMessage - StringBuilder instância para anexar JSON serializado.