Dart:
Логування

Як це зробити:

Dart включає простий механізм логування через бібліотеку dart:developer. Для більш складних потреб логування програмісти часто звертаються до бібліотек третіх сторін, таких як logger та log4dart.

Використання dart:developer

Це підходить для базового логування, особливо під час розробки:

import 'dart:developer';

void main() {
  log('Це повідомлення для логування помилок.');
}

Вивід:

Це повідомлення для логування помилок.

Використання пакету logger

Для більш комплексного рішення пакет logger пропонує різні рівні логування (наприклад, інформація, попередження, помилка) і може бути відформатований у більш зрозумілий спосіб.

Спочатку додайте залежність logger у ваш файл pubspec.yaml:

dependencies:
  logger: ^1.0.0

Потім використовуйте його так:

import 'package:logger/logger.dart';

var logger = Logger();

void main() {
  logger.d("Це повідомлення для дебагу");
  logger.w("Це попереджувальне повідомлення");
  logger.e("Це повідомлення про помилку");
}

Приклад виводу може виглядати так, з кожним типом повідомлення, відформатованим по-різному для легкої ідентифікації:

💬 Це повідомлення для дебагу
⚠️ Це попереджувальне повідомлення
❗️ Це повідомлення про помилку

Використання пакету log4dart

Для додатків, що потребують конфігурації на основі логування (подібно до Log4j), log4dart пропонує знайомий підхід. Це особливо корисно для масштабних застосунків.

Переконайтеся, що ви включили log4dart у ваш pubspec.yaml:

dependencies:
  log4dart: ^2.0.0

Простий приклад використання:

import 'package:log4dart/log4dart.dart';

void main() {
  final logger = LoggerFactory.getLogger("MyApp");
  logger.debug("Відлагодження MyApp");
  logger.info("Інформаційне повідомлення");
}

Вивід:

DEBUG: Відлагодження MyApp
INFO: Інформаційне повідомлення

Кожен із цих методів забезпечує різний рівень гнучкості та складності, від простих повідомлень для дебагу до всебічного, конфігурованого логування, яке відповідає потребам складних застосунків.