dbtrace
dbtrace — это инструмент диагностики производительности доступа к базе данных, разработанный на основе языка Java. Его цель — обеспечить лёгкую интеграцию в приложения без необходимости изменения кода и упростить диагностику производительности JDBC-доступа в приложениях на Java, включая трассировку времени выполнения и стека вызовов, а также ведение журнала.
Особенности dbtrace:
Использование
Установка В проекте Maven добавьте зависимости в файл pom.xml:
<dependency>
<groupId>john.walker</groupId>
<artifactId>dbtrace</artifactId>
<version>1.1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>us.codecraft</groupId>
<artifactId>xsoup</artifactId>
<version>0.3.1</version>
</dependency>
Конфигурация Создайте файл конфигурации dbtrace.xml в каталоге src/main/resources со следующим содержимым:
<?xml version="1.0" encoding="UTF-8"?>
<root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="dbtrace.xsd"></root>
<monitor>
<!-- 是否 включить мониторинг SQL -->
<queryLog>true</queryLog>
<!-- Только печатать SQL с указанным временем выполнения или более, в миллисекундах -->
<queryLogThreshold>0</queryLogThreshold>
<!-- Включить мониторинг SQL, выводить ли стек вызовов -->
<queryLogTrace>true</queryLogTrace>
<!-- Путь к файлу журнала SQL (необходимо добавить компонент Logger) -->
<queryLogFile></queryLogFile>
<!-- Конфигурация компонента журнала -->
<loggers>
<!-- Добавить компонент журнала, также можно наследовать от класса AbstractLogger и реализовать соответствующие методы -->
<logger>john.walker.log.ConsoleLogger</logger>
<logger>john.walker.log.FileLogger</logger>
<!-- <logger>john.walker.log.Log4jLogger</logger> -->
</loggers>
<!-- Регулярное выражение фильтра, если включен вывод стека вызовов, будет игнорировать стек вызовов, соответствующий следующему регулярному выражению -->
<excludes>
<exclude>org.apache.*</exclude>
<exclude>java.*</exclude>
<exclude>javax.*</exclude>
<exclude>com.sun.*</exclude>
<exclude>oracle.*</exclude>
<exclude>com.alibaba.druid*</exclude>
<exclude>*$$EnhancerByCGLIB$$*</exclude>
</excludes>
</monitor>
Замена класса драйвера Замените имя класса драйвера, используемого программой (например, com.mysql.jdbc.Driver или oracle.jdbc.OracleDriver), на john.walker.spi.CommonProxyDriver.
Пример вывода журнала
SQL прокси: select * from dd where id = ? and hire_date = ? limit 10
Параметры SQL: [1=1, 2=2016-11-23]
Время выполнения SQL: 1 миллисекунда
Стек вызовов:
Test$1.test:27
Test$1.run:16
Скачать JAR https://gitee.com/johnnie_walker/dbtrace/attach_files
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )