Библиотека для обнаружения утечек памяти в Android, которая автоматически сообщает об утекших объектах во время отладочных сборок.
JakeWharton/timber
Небольшая расширяемая библиотека логирования для Android, которая оборачивает платформенный класс Log и поддерживает подключаемые бэкенды Tree.
- Звёзды
- 10,852
- Форки
- 994
- Открытые issues
- 63
- Последний коммит
- 3 дня назад
Что это?
Timber — библиотека логирования для Android, построенная поверх платформенного класса android.util.Log. Вместо прямых вызовов Log с ручным указанием тега каждый раз вы вызываете статические методы Timber, а поведение определяется экземплярами Tree, установленными при запуске приложения.
Встроенный DebugTree автоматически использует имя класса, из которого выполняется вызов, в качестве тега лога. Благодаря этому логи удобно фильтровать с помощью таких инструментов, как Pidcat. По умолчанию Tree не устанавливается, поэтому приложение полностью контролирует логирование в production-сборке. Разработчики могут создавать собственные реализации Tree, чтобы перенаправлять сообщения в систему сбора отчётов о сбоях или другие места.
Timber также включает встроенные правила Android Lint, которые выявляют несоответствия количества и типов аргументов в форматных строках, слишком длинные теги, прямое использование Log вместо Timber и избыточное логирование сообщений исключений.
Ключевые возможности
- 01Направляет логи через подключаемые экземпляры Tree, устанавливаемые при запуске приложения.
- 02DebugTree автоматически использует имя класса, из которого выполняется вызов, в качестве тега лога.
- 03По умолчанию Tree не устанавливается, поэтому приложение само управляет логированием в production-сборке.
- 04Включает встроенные правила Lint для проверки аргументов форматных строк, длины тегов и использования Log.
Сценарии использования
- Замена разрозненных вызовов android.util.Log единым API логирования в Android-приложении.
- Отправка логов из production-сборки в сервис сбора отчётов о сбоях через собственную реализацию Tree.
- Фильтрация отладочных логов по имени класса с помощью Pidcat или аналогичных инструментов.
Быстрый старт
- 1
Добавьте зависимость Timber из README в сборку Gradle
- 2
Установите Tree в onCreate приложения, а затем вызывайте static-методы Timber
Что важно знать
- Предназначен только для Android и основан на платформенном классе Log.
- По умолчанию Tree не устанавливается, поэтому его нужно установить самостоятельно, иначе ничего не будет записываться в лог.
В подборках
Темы
Частые вопросы
- Что такое timber?
- Небольшая расширяемая библиотека логирования для Android, которая оборачивает платформенный класс Log и поддерживает подключаемые бэкенды Tree. Timber — библиотека логирования для Android, построенная поверх платформенного класса android.util.Log. Вместо прямых вызовов Log с ручным указанием тега каждый раз вы вызываете статические методы Timber, а поведение определяется экземплярами Tree, установленными при запуске приложения.
- timber можно использовать бесплатно? Какая у него лицензия?
- timber распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- timber всё ещё поддерживается?
- Активно поддерживается. Последний коммит в timber — 4 нояб. 2026 г..
- Для чего можно использовать timber?
- Замена разрозненных вызовов android.util.Log единым API логирования в Android-приложении. Отправка логов из production-сборки в сервис сбора отчётов о сбоях через собственную реализацию Tree. Фильтрация отладочных логов по имени класса с помощью Pidcat или аналогичных инструментов.
- Как установить timber?
- Добавьте зависимость Timber из README в сборку Gradle Установите Tree в onCreate приложения, а затем вызывайте static-методы Timber
- Где скачать timber?
- Исходный код и инструкции по установке — на GitHub: https://github.com/JakeWharton/timber
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Библиотека логирования для Python, которая заменяет настройку стандартного logging единым логгером, ротацией файлов, цветным выводом и структурированными логами.
Небольшая утилита для отладки JavaScript: выводит логи с пространствами имён в Node.js и браузерах и включается через переменную окружения DEBUG.
Помощник для отладки Python: ic() заменяет print(), показывая имена переменных, выражения и их значения в форматированном выводе с подсветкой синтаксиса.
Низконакладной трассировщик Python, который записывает вызовы функций и показывает выполнение кода на интерактивной временной шкале.
Инструмент для разработки на PHP, который показывает в браузере данные запросов, SQL-запросы, логи, временные шкалы и многое другое, главным образом для приложений Laravel.