1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/wxquan-wsy-plugins

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Плагин обработки коллекции

Maven dependency

Maven Central

<dependency>
    <groupId>com.wangshouyu</groupId>
    <artifactId>wsy-plugins</artifactId>
    <version>${lastest.version}</version>
</dependency>

Медленный метод журнала

Медленный метод журнала — это журнал, который автоматически запускается при выполнении метода, если время выполнения превышает установленный порог. По умолчанию система автоматически запускает печать журнала уровня warn. Содержание журнала: «имя метода выполнения, execTime: xxxms». В этом приложении принцип реализации заключается в использовании AOP для сканирования аннотаций, чтобы определить, какие классы должны регистрировать медленные методы.

Включение медленного метода журнала

Достаточно добавить @EnableSlowMethodAopLog к классу запуска.

@EnableSlowMethodAopLog
@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

Настройка методов для регистрации медленных методов

Просто добавьте @AopSlowMethodLog к методу класса, который должен регистрировать медленный метод.

@AopSlowMethodLog(value=3000,logLevel=LogLevel.ERROR,printLog=true)
@RestController
public class AopSlowLogController{

}

Установка времени выполнения метода

По умолчанию выполнение более 1000 мс считается медленным методом. Можно установить индивидуальное время ожидания с помощью @AopSlowMethodLog (value = 3000). Если вы добавите @AopSlowMethodLog (значение = 5000) к методу, то оценка будет основана на 5000 мс.

Уровень журнала метода

По умолчанию уровень журнала равен warn. Вы можете установить индивидуальный уровень журнала с помощью @AopSlowMethodLog (logLevel = LogLevel.ERROR). Если вы добавите @AopSlowMethodLog (logLevel = LogLevel.INFO) к методу, тогда этот метод будет регистрироваться только на уровне INFO.

Отключение печати журнала метода

По умолчанию добавление @AopSlowMethodLog включает регистрацию журнала. Вы можете отключить регистрацию журнала, установив @AopSlowMethodLog (printLog = false). Если вы добавите @AopSlowMethodLog (printLog = true) к методу, только этот метод будет иметь журнал.

Журнал запросов

Журнал запросов содержит информацию о способе запроса, адресе запроса, параметрах запроса, IP-адресе доступа и информации о методе запроса. Реализация осуществляется путём обнаружения @RestController для реализации общей функции перехвата журнала.

Активация журнала запросов

@EnableRequestAopLog
@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }}

Запись отдельных параметров журнала

Необходимо добавить аннотацию @AopRequestLog к требуемому методу.

@AopRequestLog(args={"orderId"})
public String pay(String orderId, String uid){
    return null;
}

Этот метод отображает только информацию об orderId и не отображает информацию об uid в журнале.

Не записывать возвращаемое значение

@AopRequestLog(printResult=flase)
public String pay(String orderId, String uid){
    return null;
}

Установка printResult = false в методе, который необходимо настроить, автоматически предотвращает запись возвращаемого значения.

Изменение уровня журнала

@AopRequestLog(logLevel=LogLevel.DEBUG)
public String pay(String orderId, String uid){
    return null;
}

Установив logLevel, можно настроить уровень журнала для печати.

Примечание

Когда аннотация @AopRequestLog применяется к классу, только logLevel и printResult будут иметь эффект.

Одновременное включение журналов доступа и медленных запросов

@EnableAopLog
@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
}}

Пользовательская печать журнала

Существует стандартная реализация печати журнала DefaultLogPrint. Вы можете реализовать пользовательскую печать, реализовав интерфейс LogPrint.

public class MyLogPrint implements LogPrint {


    @Override
    public void request(LogLevel logLevel, Method method, Object[] arguments, String[] parameterNames) {
       

    }

    @Override
    public void result(LogLevel logLevel, Object object) {
       
    }

    @Override
    public void slow(LogLevel logLevel, String method, Long execTime) {
        
    }

}
  • request — журнал запросов.
  • result — журнал результатов.
  • slow — медленный журнал.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Плагин-коллекция, поддержка перечислений Swagger, обработка пакетов Swagger, проверка перечислений Validation, обработка журналов запросов Aop, обработка медленных журналов Aop, унифицированная обработка результатов возврата Mvc. Развернуть Свернуть
GPL-3.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/wxquan-wsy-plugins.git
git@api.gitlife.ru:oschina-mirror/wxquan-wsy-plugins.git
oschina-mirror
wxquan-wsy-plugins
wxquan-wsy-plugins
master