Лучший logger для Flutter приложения | Эффективная обработка ошибок | Talker v4

Поділитися
Вставка

КОМЕНТАРІ • 33

  • @bslukyanchuk
    @bslukyanchuk 6 місяців тому +2

    Каждый раз использую, лучший логер

    • @frezycode
      @frezycode  6 місяців тому

      Кайф! Я очень рад)

  • @ik00nka83
    @ik00nka83 6 місяців тому +2

    Я только начал учить flutter, но даже мне понятно, величия этого логгера

    • @frezycode
      @frezycode  6 місяців тому

      😅 спасибо большое!

  • @romantitov6207
    @romantitov6207 14 днів тому

    Спасибо. Классное видео и классный логер. Жаль только вот интеграция его со сторонними сервисами типа крашлитики и т.д. не расскрыта.

  • @Evgeny..
    @Evgeny.. 6 місяців тому +3

    Первый!

  • @defda85
    @defda85 6 місяців тому +1

    Очень классный пакет. Планируете TalkerScreen на русском сделать или какую-то возможность кастомизации самого виджета? Былоб очень круто, т.к. с логами на конкретном устройстве, возможно, и скорее всего, придётся работать юзерам которые...юзеры. Крч, на русском (ну, или каком-то другом родном для юзера) былоб проще им объяснить куда тыкать)))

    • @frezycode
      @frezycode  6 місяців тому

      Привет! Спасибо большое за отзыв, рассмотрю такой вариант кастомизации. Пока экран с логами - это больше для разработчиков, не для пользователей.

  • @user-sk1rh7yh7n
    @user-sk1rh7yh7n 6 місяців тому

    Стас, спасибо большое за библиотеку Talker и обзор на неё!
    Полезно, ускоряет разработку и обучение!
    Было бы интересно узнать о том как правильно обрабатывать ошибки и делать это глобально.
    Например: у меня есть несколько http запросов и dio может вернуть ошибку (404, 500, другую) в любом из них. Есть экраны для уведомления пользователей, для каждой ошибки. Как сделать, чтобы не писать обработку этой ошибки после каждого вызова dio, сделать это в одном классе? Надо же как-то ещё удобно контекст пробросить...

  • @rinabard5608
    @rinabard5608 3 місяці тому

    Добрый день! Подскажите пожалуйста
    -- Можно ли как то использовать логгер для записи ошибок связанных не только с bloc и dio, при этом не оборачивая весь в try-catch? Так как кода очень много
    -- Можно ли как-то фильтровать информацию, которая попадает в TalkerScreen? То есть, чтобы она показывалась в консоли, а в TalkerScreen нет
    -- Как сделать так, чтобы wrapper показывался при каждой возникающей ошибке? Его нужно в observer положить?

  • @user-er5mr3qy3c
    @user-er5mr3qy3c 2 місяці тому

    приложение перестает запускается сразу после добавления зависимости talker_flutter: ^4.2.0 😪, причем даже не надо создавать экземпляр класса. С пакетом talker: ^4.2.0 все, кстати, нормально запускается.

  • @igorT0985
    @igorT0985 6 місяців тому

    Круто сделал! Экран со всеми логами классный, но больше для тестировщиков и для себя, чем для обычных юзеров. А если встроить толкер в боевую версию приложения, то есть какой-то метод отправки лога одной кнопкой и не показывать весь экран с логами (сорян, если в доке написано, ещё не глубоко изучил)? Например, у одного юзера ошибка, прям как ты описал в самом начале видео, и хочется понять, где именно она возникла и куда-то добавить одну кнопку, по которой отправляются логи да хоть post`ом к себе же на сервер.

    • @borteq7419
      @borteq7419 3 місяці тому

      Тоже очень нужна такая функциональность, чтоб продовый юзер не смотрел логи сам, а либо по кнопке отправлял, либо (как я хотел сделать) через BetterFeedback

  • @zedoo5699
    @zedoo5699 2 місяці тому

    21:09 ahah

  • @AleksandrSherbakov-pq5hk
    @AleksandrSherbakov-pq5hk 3 місяці тому

    подскажи а как выводить в консоль только логи об ошибках

    • @frezycode
      @frezycode  3 місяці тому

      Привет! У Talker есть filter по типу и по тексту

  • @лолкек
    @лолкек 6 місяців тому

    А как ты делал приложение рифм? Какой там бек или api или как?

    • @frezycode
      @frezycode  6 місяців тому +1

      На канале есть плейлист "Пересборка", там подробно о реализации. Но да, используется api.

  • @Polite_person_
    @Polite_person_ 6 місяців тому +1

    Бэк на чем пишешь?

    • @frezycode
      @frezycode  6 місяців тому

      Сейчас в основном на Golang, но и на питоне или js думаю руки ещё помнят как написать)

  • @tor_del
    @tor_del 3 місяці тому

    Звук в этом видео 📈📉📈📉📈📉📈📉

  • @Evgeny..
    @Evgeny.. 6 місяців тому +2

    Когда же ты расскажешь почему ты не используешь flutterflow

    • @frezycode
      @frezycode  6 місяців тому +3

      Я уже понял что ты не отстанешь с Flutterflow 😅 На очереди видос про него, пока не забыл

    • @Evgeny..
      @Evgeny.. 5 місяців тому

      ​@@frezycode хах😂 спасибо большое)

  • @user-st6wh9yc4n
    @user-st6wh9yc4n 6 місяців тому +1

    Топ болтовня получилась🤙

    • @frezycode
      @frezycode  6 місяців тому

      Да, нормально так вопросики обкашляши 🐗

  • @Andrey-114
    @Andrey-114 6 місяців тому

    7:43 скример

  • @alekseylarichev680
    @alekseylarichev680 5 днів тому

    Логгер крутой, но:
    1) если в ответе бэка где есть кириллица, то отображается
    Data: "{\"timestamp\":\"2024-07-26 12:28:54\",\"code\":200,\"status\":true,\"data\":{\"message\":\"\\u041a\\u0430\\u0442\\u0435\\u0433\\u043e\\u0440\\u0438\\u0438 \\u043f\\u043e\\u043b\\u0443\\u0447\\u0435\\u043d\\u044b \\u0443\\u0441\\u043f\\u0435\\u0448\\u043d\\u043e\",\"detail\":[{\"id\":1,\"name\":\"\\u041e\\u0442\\u043d\\u043e\\u0448\\u0435\\u043d\\u0438\\u044f\",\"icon\":\"favorite\",\"is_premium\":false,\"conversations_count\":16},{\"id\":2,\"name\":\"\\u0415\\u0434\\u0430\",\"icon\":\"fastfood\",\"is_premium\":false,\"conversations_count\":1},{\"id\":3,\"name\":\"\\u0421\\u0435\\u043c\\u044c\\u044f\",\"icon\":\"family_restroom\",\"is_premium\":false,\"conversations_count\":2},{\"id\":4,\"name\":\"\\u0421\\u043f\\u043e\\u0440\\u0442\",\"icon\":\"fitness_center\",\"is_premium\":false,\"conversations_count\":0},{\"id\":5,\"name\":\"\\u0417\\u0430\\u0432\\u0438\\u0441\\u0438\\u043c\\u043e\\u0441\\u0442\\u044c\",\"icon\":\"smoking_rooms\",\"is_premium\":false,\"conversations_count\":1},{\"id\":6,\"name\":\"\\u0411\\u0438\\u0437\\u043d\\u0435\\u0441\",\"icon\":\"business\",\"is_premium\":false,\"conversations_count\":1},{\"id\":7,\"name\":\"\\u0420\\u0430\\u0437\\u0432\\u043e\\u0434\",\"icon\":\"broken_heart\",\"is_premium\":false,\"conversations_count\":1},{\"id\":8,\"name\":\"\\u0421\\u0435\\u043a\\u0441\",\"icon\":\"favorite_border\",\"is_premium\":true,\"conversations_count\":0}]}}"
    в не читаемом виде.
    Было бы неплохо обрабатывать этот момент.
    2) в UI виджете списком выводится запросы (тело, хедер) + респонс (тело, хедер).
    ИМХО, удобней было бы:
    Статус code, url, время запроса и его продолжительность (разница между запросом и ответам по времени).
    По тапу на строку - открывался бы новый экран уже с детальной информацией по запросу.
    И на новом экране Json форматировать в pretty json
    3) Было бы неплохо еще формировать CURL готовый (для быстрого перехода к "тестированию" в постмане)
    Самый топчик, было бы поправить именно первый пункт

    • @alekseylarichev680
      @alekseylarichev680 5 днів тому

      Для русского:
      final prettyData = encoder.convert(data);
      заменить
      final prettyData = jsonDecode(data.replaceAll(r'\\u', r'\u')).toString();
      Костыльно? Да, Верю, что сделаете лучше)