Журналювання

Типи даних і винятки в 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 See https://docs.oracle.com/javase/8/docs/api/index.html?java/util/logging/Logger.html for additional log methods
Типи даних і винятки в 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 Image courtesy https://unsplash.com/@vendavlog
Типи даних і винятки в Java

Давайте потренуємось!

Типи даних і винятки в Java

Preparing Video For Download...