что такое спринг бут

Spring Boot vs Spring MVC vs Spring — Как они сравниваются?

Spring Boot vs Spring MVC vs Spring — Как они сравниваются?

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Spring, Spring Boot, Spring MVC, везде есть слово “spring”! Давайте пройдемся где и когда вы можете применять каждый из этих инструментов

В этой статье, вы увидите обзоры: Spring, Spring MVC, и Spring Boot, узнаете какие проблемы они решают, и где они лучше всего применимы. Самый важный в факт что вы узнаете, является тем что Spring, Spring MVC, и Spring Boot не конкурируют за одно и то же место. Они решают разные проблемы, и они решают их очень хорошо.

Что за основная проблема, которую этот Spring Framework решает?

Долго и упорно подумайте. Какова проблема, решаемая Spring Framework?

Почему это важно? Потому что, когда DI или IOC правильно используются, мы можем разрабатывать слабо связанные приложения. А слабо связанные приложения могут быть легко протестированы юнит-тестами.

Давайте рассмотрим простой пример.

Пример без внедрения зависимостей

Рассмотрим пример ниже: WelcomeController зависит от WelcomeService, чтобы получить приветственное сообщение. Что он делает, чтобы получить экземпляр WelcomeService?

Эта строка создает экземпляр данного сервиса. А это значит что они сильно связаны. Например, если я создаю мок для WelcomeService в юнит-тесте для WelcomeController, как мне заставить WelcomeController использовать мок? Не легко!

Простой пример с внедрением зависимостей

Мир выглядит намного проще с внедрением зависимостей. Вы позволяете Spring Framework делать тяжелую работу. Мы просто используем две простые аннотации: Component и Autowired.

В юнит-тесте, я могу попросить Spring framework подключить мок для WelcomeService к WelcomeController. (Spring Boot делает вещи проще делая это с аннотацией @MockBean. Но это уже совсем другая история!)

Что еще решает Spring Framework?

Проблема 1: Дублирование/Загрязнение кода

Останавливается ли Spring Framework с внедрением зависимостей? Нет. Он строится на основной концепции внедрения зависимостей с несколькими модулями Spring

Приносят ли эти модули новую функциональность? Нет. Мы можем делать все это на J2EE или Java EE. Так, что они приносят? Они приносят простые абстракции. Целью этих абстракций является:

Проблема 2: хорошее интегрирование с другими фреймворками

Отличная вещь насчет Spring Framework, это то, что он не пытается решать проблемы которые уже решены. Все что он делает, это предоставляет отличную интеграцию с другими фреймворками, которые в свою очередь предоставляют отличные решения.

Почему нам нужен Spring Boot?

У приложений, основанных на Spring, много конфигураций.

Когда мы используем Spring MVC, нам необходимо сконфигурировать: component scan, dispatcher servlet, view resolver, web jars(для доставки статического контента) среди других вещей.

Код ниже показывает типичную конфигурацию dispatcher servlet в web приложении.

Когда мы используем Hibernate/JPA, нам надо сконфигурировать источник данных, фабрику менеджера сущностей, менеджер транзакций, и другие штуки.

Проблема 1: Spring Boot авто конфигурация: Можем ли мы думать иначе?

Spring Boot приносит новый мыслительный процесс вокруг всего этого.

Проблема 2: Spring Boot Starter Projects: Построен вокруг хорошо известных паттернов

Давайте скажем что хотим разработать веб приложение.

Прежде всего нам потребуется определить фреймворки, которые хотим использовать, какие версии использовать и как их вместе подсоединить.

У всех веб приложений аналогичные потребности. Ниже перечислены зависимости которые используются в Spring MVC. Они включают в себя Spring MVC, Jackson Databind, Hibernate-Validator и Log4j.

Если вы хотите разрабатывать веб приложение или приложение для RESTful сервисов, ваш выбор — Spring Boot Start Web. Давайте быстро создадим проект с Spring Boot Starter Web используя Spring Initializr.

Зависимости для Spring Boot Starter Web

Следующий скриншот показывает разные зависимости, которые были добавлены в наше приложение.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Зависимости могут быть классифицированы на:

Параметры проекта Spring Boot Starter

Как мы видим из Spring Boot Starter Web, стартовые проекты помогают нам быстро начать разработку определенных типов приложений.

Другие цели Spring Boot

Также есть несколько стартеров для технических вещей:

Источник

Spring Boot 2: что нового?

От переводчика: несмотря на то, что уже прошел год, вопросы о том что же нового дал нам 2-й Boot не заканчиваются. Писать такой контент с нуля — затея не самая умная. Поэтому решили перевести статью, которая нам кажется наиболее лаконичной и при этом достаточно полной.

Релиз Spring Boot 2 состоялся в начале 2018 года, и всем не терпится скорее посмотреть на него в деле. Этот релиз стал кульминацией 17 месяцев работы и более 6800 коммитов от 215 разных людей. Есть много крутых функций, которые стоит обсудить, так что поговорим о том, что нового в Spring Boot 2.

В этой статье мы рассмотрим:

История Spring Boot

Перед тем, как углубиться в нововведения, я бы хотел воспользоваться случаем и рассказать немного об истории Spring Boot. В посте, опубликованном в августе 2013, в своем блоге Phil Webb объявил первый знаковый релиз проекта под названием Spring Boot.

Спустя примерно 9 месяцев, в апреле 2014, состоялся релиз Spring Boot 1.0. С тех пор было множество второстепенных релизов и новых полезных функций.

Что нового в Spring

Так что же нового в Spring Boot 2? Если говорить о самом большом нововведении, то это обновление Spring Framework до 5-ой версии. С тех пор, как в сентябре 2017 вышла Spring Framework 5, большинство разработчиков (как и я) ждали релиза Spring Boot 2. Spring Framework 5 имеет немалый список новых функций, но я бы хотел рассказать только о нескольких самых главных.

Что нового в Spring Framework 5

Поддержка версий Java 8+

Если вы и впредь хотите создавать приложения на Spring Framework, вам нужно работать с версией Java 8+. Вы, наверное, подумали, что это очень важное изменение для всех нас, но для команды Spring оно еще важнее. Это позволило обновить базу исходного кода до Java 8 со всеми его новыми фишками вроде лямбда-выражений или стримов. Это не только делает код более читабельным, но и улучшает производительность ядра платформы.

Поддержка Java 9

Если вы хотите использовать Java 9, вам нужно обновиться до Spring Framework 5 и также до Spring Boot 2. Я знаю, что многие еще не используют новейшие версии Java в продакшене, и это отличная возможность поэкспериментировать с новыми крутыми “игрушками”. Все должно работать без проблем при использовании стандартного classpath’а, но я читал о некоторых затруднениях при переходе на модули Java 9.

Spring MVC

Хотя Spring MVC и не в центре повествования в этой статье, стоит сказать, что было несколько приятных апгрейдов. Я не буду на них останавливаться, подробности можно посмотреть в документации для Spring Framework 5.

Spring Webflux

Асинхронность потоков данных занимает центральное место в истории о Spring Framework 5. Это совершенно другой тип мышления, но, к счастью для нас, нет нужды переучиваться писать приложения совершенно новым способом. Spring WebFlux — абсолютно асинхронный и неблокирующий фреймворк, построенный с нуля, позволяющий справляться с большим количеством параллельных подключений. Хоть это и переворот в парадигме, начать будет не так уж сложно.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Поддержка Kotlin

Поддержка Kotlin была добавлена еще в http://start.spring.io, но в Spring Framework 5 есть специализированная поддержка этого языка, привнесшая полезные функции, прочитать о них можно здесь.

Улучшения в механизмах тестирования

Самое крупное изменение в системе тестирования — это полная поддержка JUnit5 Jupiter. Я еще расскажу об этом подробнее ниже, но когда вы запускаете новое приложение на Spring Boot 2, вы все еще используете по умолчанию JUnit 4, однако, переключиться на JUnit 5 — задача тривиальная.

Что нового в Spring Boot 2

Обновления сторонних библиотек

С каждым новым релизом Spring Boot у команды Spring возникает возможность обновить различные зависимости.

*В стартере Thymeleaf теперь есть встроенный thymeleaf-extras-java8time.

Безопасность и Reactive Spring Data

С переходом на Spring WebFlux у Spring Data появилась поддержка приложений с асинхронными потоками данных. В настоящее время у Cassandra, MongoDB, Couchbase и Redis есть поддержка асинхронного API. В Spring Boot есть POM-стартеры для всех них, благодаря которым начать работать с ними совсем просто.

Также появилась возможность использовать Spring Security 5.0 в наших реактивных приложениях.

Actuator

Spring Boot Actuator не представляет из себя ничего нового, но он был переписан с нуля. Если вы еще не знакомы с Actuator, вот что он делает: он автоматически выводит endpoint’ы для получения информации о статусе приложения. Actuator в Spring Boot 1.x был написан поверх сервлетов, а с новыми реактивными подходами команде Spring нужно было решение которое поддерживает и старый и реактивный подходы. Помимо этого, в Actuator были внесены следующие изменения:

Существует подробный отдельный блок документации для Spring Boot Actuator Web API Endpoints, с него стоит начать знакомство с этим инструментом.

Плагин Gradle

Мне всегда очень нравился Gradle, и я просто в восторге, что команда решила переписать плагин для Gradle.
Spring Boot Gradle плагин позволяет реализовать поддержку Spring Boot в Gradle и дает возможность упаковывать исполняемые jar или war архивы, запускать приложения на Spring Boot и управлять зависимостями через spring-boot-dependencies. Для плагина Gradle в Spring Boot необходима версия Gradle 4.0 и старше.

Начало работы

Чтобы начать работать с плагином, нужно подгрузить его к проекту.

Создание исполняемых jar и war-архивов

Таска bootRepackage была заменена на bootJar и bootWar для создания соответственно jar и war-файлов. Обе задачи обладают более широким функционалом по сравнению со стандартной аналогичной командой Gradle, обеспечивая доступ ко всем настройкам и логике.

Управление зависимостями

Плагин Gradle в Spring Boot больше не тянет плагин для управления зависимостями автоматически. Вместо этого Gradle плагин Spring Boot-а видит, что плагин управления зависимости подключен, и импортирует правильную версию BOM. Это позволяет лучше контролировать, где и каким образом конфигурируется управление зависимостями. Для большинства приложений будет достаточно добавить плагин управления зависимостями:

У плагина Gradle есть своя документация, которая содержит очень полезную информацию. Я рекомендую всем, кто хочет начать работать с Gradle, перейти по этой ссылке.

Упрощенная система безопасности

При настройке пользователем своих правил безопасности стандартная конфигурация системы безопасности Spring Boot перестанет действовать. На этом этапе пользователю будет необходимо как можно точно прописать все правила безопасности. Это означает, что все настройки безопасности собраны в одном месте и проблем с порядком обработки команд при существующем WebSecurityConfigurerAdapters не возникает.

Пример индивидуальных настроек безопасности:

Actuator Security

С учетом того, что endpoint-ы actuator-а зафиксированы, необходимо включить или исключить endpoint’ы, в зависимости от того какие вам нужны. Вот настройки, которые это контролируют, с выпуска 1.x они изменились.

Если вы не уверены, как настраивать эти параметры, добавьте в закладки документацию по общим настройкам приложения.

Поддержка HTTP/2

Невероятно, но релиз спецификации HTTP 1.1 был аж в 1996 году. Полагаю, можно не напоминать, что современная сеть отличается по всем параметрам. Если вы хотите реализовать поддержку HTTP/2 в приложении на Spring MVC или WebFlux, используйте следующий параметр.

Поддержка HTTP/2 зависит от выбранного веб-сервера и среды приложения, так как этот протокол не поддерживается в JDK8 из коробки. Подробнее об этом написано в документации.

Конфигурационные параметры

В Spring Boot 1.x был поддержан так называемый relaxed binding, другими словами вы могли определить имя параметра многими способами (camel-case, нижнее подчеркивание, дефис) при этом в конечном итоге значение присваивалось одному и тому же свойству.

Relaxed binding работает все так же, а способ чтения переменных в вашем коде изменился:

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Spring Boot lets you externalize your configuration so that you can work with the same application code in different…docs.spring.io

Метрика

Собственная метрика Spring Boot была заменена на Micrometer. Он разрабатывается командой Pivotal и быстро адаптируется к проектам Pivotal.

Spring Boot Actuator предоставляет автоконфигурацию для Micrometer — интерфейса метрики приложения, поддерживающий множество видов мониторинга, включая:

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Больше информации о Micrometer по ссылке https://micrometer.io/.

Апгрейд из-за этого может оказаться болезненным для тех, кто логирует тонны кастомных метрик.

Quartz Scheduler

В Spring Boot 2 есть поддержка библиотеки исполнения задач по расписанию Quartz, которую легко добавить при помощи стартера spring-boot-starter-quartz. Поддерживается работа на оперативной памяти и на JDBC.

HikariCP Connection Pool

Стандартный пул соединений изменился с Tomcat на HikariCP. Если вы использовали spring.datasource.type, чтобы заставить Hikari работать в приложении Tomcat, можете его убрать. Аналогично, если вы хотите продолжить пользоваться пулом Tomcat, просто добавьте к вашей конфигурации следующее:

Инструменты разработчика

По умолчанию при каждом перезапуске приложения записывается отчет о различии конфигураций. Другими словами, отчет показывает изменения в авто-конфигурации приложения, возникающие по мере введения вами таких изменений, как удаление/добавление бинов и настройка параметров конфигурации.

Чтобы отключить запись этого отчета, настройте следующий параметр:

Поддержка Kotlin

Ранее в этой статье упоминалось об официальной поддержке Kotlin. Также есть специализированный блок документации по Kotlin.

JUnit 5

Как уже говорилось выше, в приложениях на Spring Boot по умолчанию все еще используется JUnit 4. Если вы хотите перейти на JUnit 5, нужно исключить JUnit 4 из spring-boot-starter-test и добавить необходимые зависимости. Также понадобятся плагины из списка ниже.

Руководство по переходу на Spring Boot 2

Думаю, можно не говорить о настолько очевидном факте, что при таком крупном релизе просто сменить номер версии в продакшене — не лучший способ апгрейда. В первую очередь я бы посоветовал прочитать Spring Boot 2.0 Migration Guide. Лично я нашел решение большинства своих проблем в упрощенной модели безопасности и изменениях параметров. В этом гайде есть замечательные советы по переносу файлов параметров.

Не знаю, что вы об этом думаете, а я точно начну возиться с Spring Boot 2 и работать над миграцией кода на эту версию, но обычно при любом основном релизе я жду выпуска следующей минорной версии. Это касается не только Spring, но и других брендов от Apple до Pivotal и даже Angry Birds!

Источник

Введение в Spring Boot Actuator

Салют, хабровчане! Уже через неделю стартуют занятия в новой группе курса «Разработчик на Spring Framework». В связи с этим делимся с вами полезным материалом в котором рассказано о том, что такое Spring Actuator и чем он может быть полезен.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

После того как вы разработали приложение и развернули его в продакшене, очень важно следить за его работоспособностью. Особенно это актуально для критически важных приложений, таких как банковские системы, в которых отказ приложений напрямую влияет на бизнес.

Традиционно, до Spring Actuator, нам нужно было писать код для проверки работоспособности приложения, но с Spring Actuator нам не нужно писать код. Spring Actuator предоставляет несколько готовых конечных точек (endpoint), которые могут быть полезны для мониторинга приложения.

Как добавить Spring Actuator в проект Maven или Gradle?

Создание проекта Spring Boot с Spring Actuator

Давайте продолжим и создадим с помощью Spring Initializer проект Spring Boot с зависимостями Spring Actuator, Web и DevTools.

Обратите внимание, что на момент написания этой статьи версия Spring Boot была 2.1.0.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

В консоли вы увидите следующее:

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Видно, что встроенный Tomcat запущен на порту 8080, а SpringActuatorApplication запущен в Tomcat. Также вы можете увидеть, что конечные точки actuator’а доступны по адресу /actuator.

Мониторинг приложений с Spring Actuator Endpoints

Как мы уже говорили выше, Spring Actuator предоставляет несколько готовых конечных точек (endpoints), которые мы можем использовать для мониторинга работоспособности приложения.

IDОписание
auditeventsПредоставляет информацию о событиях
аудита для текущего приложения.
beansОтображает полный список всех
Spring-бинов в приложении.
cachesИнформация о кэше.
conditionsПоказывает условия (Condition), которые
были вычислены для классов конфигурации
и автоконфигурации, и причины, по
которым они соответствовали или не
соответствовали.
configpropsОтображает список всех
@ConfigurationProperties
envОтображает свойства из
ConfigurableEnvironment.
flywayПоказывает миграции баз данных
Flyway, которые были применены.
healthПоказывает сведения о работоспособности
приложения.
httptraceОтображает информацию трассировки
HTTP (по умолчанию последние 100 HTTP
запросов-ответов).
infoОтображает дополнительную информацию
о приложении.
integrationgraphГраф Spring Integration.
loggersОтображает и позволяет
изменить конфигурацию логгеров в
приложении.
liquibaseПоказывает примененные миграции
базы данных Liquibase.
metricsПоказывает информацию о метриках
для текущего приложения.
mappingsОтображает список всех путей
@RequestMapping.
scheduledtasksОтображает запланированные задачи
(scheduled tasks).
sessionsПозволяет извлекать и удалять
пользовательские сессии из хранилищ,
поддерживаемых Spring Session. Недоступно
при использовании Spring Session для реактивных
веб-приложений.
shutdownПозволяет приложению корректно
завершить работу.
threaddumpОтображает информацию о потоках.

Включение конечных точек

Примечание переводчика: по умолчанию доступ ко всем конечным точкам есть только через JMX, доступа через HTTP ко всем конечным точкам нет (см. ниже).

Доступ к конечным точкам через HTTP

Давайте перейдем по URL-адресу localhost:8080/actuator и посмотрим на доступные конечные точки.

Примечание: я использую Postman для тестирования, поскольку он показывает JSON в хорошо структурированном формате. Вы можете использовать любой другой инструмент или просто браузер.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Доступ к конкретным конечным точкам

Теперь, после добавления в application.properties указанной выше записи, давайте снова перейдем по http://localhost:8080/actuator

Как мы видим на скриншоте ниже, конечная точка env также включена.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Доступ ко всем конечным точкам

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Доступ ко всем конечным точкам, кроме некоторых

Две записи ниже активируют все конечные точки, но отключают конечную точку env.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Отключение всех конечных точек HTTP

Если вы не хотите предоставлять конечные точки через HTTP, это можно сделать, настроив в файле application.properties следующее:

Настройка URL для доступа к конечным точкам

Например, если вы хотите сделать базовый URL-адрес как /monitor вместо /actuator это можно сделать следующим образом:

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

При этом все конечные точки будут доступны как /monitor/ вместо /actuator/

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Конечные точки Spring Boot Actuator

Давайте обсудим некоторые из наиболее важных конечных точек.

Конечная точка health даёт общий статус приложения: запущено и работает или нет. Это очень важно для мониторинга состояния приложения, когда оно находится в продакшене. Эта конечная точка может быть интегрирована с приложениями мониторинга и будет очень полезна для определения работоспособности приложений в реальном времени.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

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

Описанные выше “индикаторы здоровья” включены по умолчанию, однако, их можно отключить с помощью следующего свойства:

Отключение отдельного индикатора

Написание своих индикаторов (HealthIndicator)

Давайте снова перейдем на конечную точку health и посмотрим, отражается ли наш индикатор или нет.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Мы видим наш индикатор.

Статус отдельного компонента

Можно также проверить состояние отдельного компонента. В приведенном выше примере мы видели написанный нами индикатор и diskSpace.

Если мы хотим видеть только состояние диска, мы можем использовать следующее URL:

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Так как в нашем проекте такого файла нет, то ответ будет пустой, как показано ниже:

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Теперь давайте снова посмотрим на конечную точку info и увидим информацию о сборке, как показано ниже:

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Конечная точка beans показывает все бины, определенные в Spring-контейнере со следующей информацией о каждом бине:

Например, я создал RestController с именем TestController и заинжектил компонент с именем TestService

Вы можете увидеть, как это показывается для testController, на скриншоте ниже.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

На приведенном выше скриншоте мы видим два бина, которые определены в самом Spring Framework и снабжены аннотацией @ConfigurationProperties и, следовательно, отображаются в этой конечной точке.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Конечная точка env предоставляет всю информацию, относящуюся к окружению, в следующем порядке:

Свойства системызависит от JVM (не зависит от платформы)
Системное окружение или переменные
окружения
зависит от операционной
системы (зависит от платформы)
Настройки уровня приложенияопределены в
application.properties

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Конечная точка heapdump делает дамп кучи приложения. Эта конечная точка возвращает двоичные данные в формате HPROF. Поскольку обычно возвращается много данных, вы должны их сохранить и проанализировать.

Конечная точка loggers предоставляет логгеры приложения с информацией об их настроенном уровне логирования (configuredLevel) и эффективном уровне (effectiveLevel). Если для логера и его родителя настроенный уровень не указан (null), то эффективным уровнем будет уровень корневого логера.

Свойство level указывает, какие уровни логирования поддерживаются фреймворком логирования.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Конечная точка metrics показывает все метрики, которые вы можете отслеживать для вашего приложения.

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

Проверка индивидуальной метрики

что такое спринг бут. Смотреть фото что такое спринг бут. Смотреть картинку что такое спринг бут. Картинка про что такое спринг бут. Фото что такое спринг бут

По устоявшейся традиции ждем ваши комментарии и приглашаем всех на день открытых дверей, который пройдет 23 мая.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *