Логирование

Типы данных и исключения в Java

Jim White

Java Developer

Что такое лог

  • Приложения состоят из множества строк кода
    • Они содержат разветвлённую логику (if/then/else, циклы for, while и т. д.)
    • Они включают множество классов и методов
    • Отследить весь код бывает непросто
  • Лог — это своего рода дневник приложения
    • Фиксирует, какой код был выполнен
    • Фиксирует, где возникли проблемы

Лог — как дневник приложения: фиксирует все события, как успешные, так и проблемные.

Типы данных и исключения в Java

Логирование

  • В Java встроена поддержка логирования
  • Мы сами определяем, что попадает в лог
    • Аналогично тому, как System.out.println() выводит сообщения в консоль
  • Логирование фиксирует происходящее в приложении
    • Выполненный код, возникшие ошибки, обращения к ресурсам (например, к базе данных)
  • Логирование помогает разработчикам отслеживать и анализировать работу приложения при отладке
  • Записи лога можно хранить в файле, базе данных или другой системе
    • Это позволяет просматривать и сравнивать записи за разные периоды
Типы данных и исключения в Java

Использование логирования в Java

  • Импортируйте java.util.logging
  • Получите объект Logger
    • Используйте getLogger(String) для получения объекта Logger
    • String задаёт имя логгера
    • Обычно логгер называют по имени класса
import java.util.logging.*;

class HelloWorld {

  public static Logger logger =
    Logger.getLogger("HelloWorld");

}
1 Дополнительные методы логгера см. на странице https://docs.oracle.com/javase/8/docs/api/index.html?java/util/logging/Logger.html
Типы данных и исключения в Java

Запись сообщений в лог

public static void main (String[] args) {
  logger.log(Level.INFO,
             "This is informational");
  logger.log(Level.SEVERE,
             "This is a critical message");
}
Nov 26, 2024 12:59:29 PM HelloWorld main
INFO: This is informational
Nov 26, 2024 12:59:29 PM HelloWorld main
SEVERE: This is a critical message
Типы данных и исключения в Java

Уровни лога

Уровень Приоритет
SEVERE наивысший
WARNING
INFO
CONFIG
FINE
FINER
FINEST наименьший

Уровни лога определяют важность записи

1 Изображение предоставлено https://unsplash.com/@vendavlog
Типы данных и исключения в Java

Давайте потренируемся!

Типы данных и исключения в Java

Preparing Video For Download...