Лучший logger для Flutter приложения | Эффективная обработка ошибок | Talker v4
HTML-код
- Опубликовано: 6 июн 2024
- GitHub проекта github.com/Frezyx/talker
Pub pub.dev/packages/talker
Demo frezyx.github.io/talker
Talker - библиотека для логирования и обработки ошибок в ваших dart и Flutter проектах. Этот пакет поможет вам узнать что происходит внутри вашего приложения. Есть поддержка http, dio, Navigator, BLoC. А так же полная кастомизация цвета и формата логов. И на сладкое - полноценный экран с журналами логов внутри вашего приложения, откуда можно скачать файл с отчетом и поделиться с командой!
На днях вышла 4 версия библиотеки и я решил сделать отдельный видос в котором детально разбираю все возможности и интеграцию этого пакета в ваше приложение.
Приятного просмотра!
✅ Подписывайся на мой:
💬 Telegram t.me/frezycode
👨💻 GitHub github.com/Frezyx (Куча кода на dart / Flutter)
🚀 Boosty boosty.to/frezycode
📸 Instagram / frezycode
00:00 - Что такое talker, зачем он нужен ?
02:33 - Страница проекта на GitHub
02:59 - Пример приложения на Flutter в web
03:56 - Про экосистему packages
04:27 - Поддержка CLI, API, Flutter
05:14 - Поддержка BloC и http / dio
06:05 - Где посмотреть документацию ?
06:33 - Интегрируем talker в dart проект
07:44 - Стандартные логи info, debug, error
08:00 - Обработка ошибок - метод handle
10:11 - Включить и выключить
10:33 - Как работает сохранение логов в историю
11:13 - Как настроить историю чтобы не захламляла память ?
12:11 - Меняем цвет сообщений в консоли
13:40 - Смена title логов exception = e
15:06 - Кастомные логи
19:49 - Библиотека для Flutter talker_flutter
20:40 - Приложение - магазин кроссовок со всей мощью talker
22:07 - Интегрируем talker в Flutter проект
22:59 - TalkerFlutter.init() vs Talker()
23:55 - Работа с логированием в Flutter приложении
24:38 - Экран с логами в приложении TalkerScreen
25:49 - Фильтрация и поиск логов в истории
26:11 - Сводка состояния приложения TalkerMonitor
27:37 - Скопировать или поделиться журналом логов
29:24 - Свернуть и развернуть логи
30:04 - Очистка истории
30:15 - Откуда логи навигации и http появляются в talker ?
30:36 - Логирование навигации в одну строчку
31:53 - Логи навигации auto_route, go_router, Navigator
32:28 - Talker для работы с dio и http
32:50 - Интеграция talker_dio_logger
33:28 - Настройки http логов
34:20 - Смена цвета http логов
34:39 - Фильтрация (Как выводить только определенные http логи)
36:34 - Talker для работы с BLoC
37:11 - Интеграция talker_bloc_logger
37:44 - Настройки легирования BLoC
40:54 - Меняем цвет логов на экране TalkerScreen - Наука
Каждый раз использую, лучший логер
Кайф! Я очень рад)
Стас, спасибо большое за библиотеку Talker и обзор на неё!
Полезно, ускоряет разработку и обучение!
Было бы интересно узнать о том как правильно обрабатывать ошибки и делать это глобально.
Например: у меня есть несколько http запросов и dio может вернуть ошибку (404, 500, другую) в любом из них. Есть экраны для уведомления пользователей, для каждой ошибки. Как сделать, чтобы не писать обработку этой ошибки после каждого вызова dio, сделать это в одном классе? Надо же как-то ещё удобно контекст пробросить...
Круто сделал! Экран со всеми логами классный, но больше для тестировщиков и для себя, чем для обычных юзеров. А если встроить толкер в боевую версию приложения, то есть какой-то метод отправки лога одной кнопкой и не показывать весь экран с логами (сорян, если в доке написано, ещё не глубоко изучил)? Например, у одного юзера ошибка, прям как ты описал в самом начале видео, и хочется понять, где именно она возникла и куда-то добавить одну кнопку, по которой отправляются логи да хоть post`ом к себе же на сервер.
Тоже очень нужна такая функциональность, чтоб продовый юзер не смотрел логи сам, а либо по кнопке отправлял, либо (как я хотел сделать) через BetterFeedback
Очень классный пакет. Планируете TalkerScreen на русском сделать или какую-то возможность кастомизации самого виджета? Былоб очень круто, т.к. с логами на конкретном устройстве, возможно, и скорее всего, придётся работать юзерам которые...юзеры. Крч, на русском (ну, или каком-то другом родном для юзера) былоб проще им объяснить куда тыкать)))
Привет! Спасибо большое за отзыв, рассмотрю такой вариант кастомизации. Пока экран с логами - это больше для разработчиков, не для пользователей.
Я только начал учить flutter, но даже мне понятно, величия этого логгера
😅 спасибо большое!
Добрый день! Подскажите пожалуйста
-- Можно ли как то использовать логгер для записи ошибок связанных не только с bloc и dio, при этом не оборачивая весь в try-catch? Так как кода очень много
-- Можно ли как-то фильтровать информацию, которая попадает в TalkerScreen? То есть, чтобы она показывалась в консоли, а в TalkerScreen нет
-- Как сделать так, чтобы wrapper показывался при каждой возникающей ошибке? Его нужно в observer положить?
Первый!
А как ты делал приложение рифм? Какой там бек или api или как?
На канале есть плейлист "Пересборка", там подробно о реализации. Но да, используется api.
приложение перестает запускается сразу после добавления зависимости talker_flutter: ^4.2.0 😪, причем даже не надо создавать экземпляр класса. С пакетом talker: ^4.2.0 все, кстати, нормально запускается.
21:09 ahah
Бэк на чем пишешь?
Сейчас в основном на Golang, но и на питоне или js думаю руки ещё помнят как написать)
подскажи а как выводить в консоль только логи об ошибках
Привет! У Talker есть filter по типу и по тексту
Когда же ты расскажешь почему ты не используешь flutterflow
Я уже понял что ты не отстанешь с Flutterflow 😅 На очереди видос про него, пока не забыл
@@frezycode хах😂 спасибо большое)
Звук в этом видео 📈📉📈📉📈📉📈📉
Топ болтовня получилась🤙
Да, нормально так вопросики обкашляши 🐗
7:43 скример