Приложение logd что это

[Вопросы] logd что это? и почему оно жрет батарею

Что это такое. Приложение logd что это. Смотреть фото Приложение logd что это. Смотреть картинку Приложение logd что это. Картинка про Приложение logd что это. Фото Приложение logd что это

avatar.png (109.25 KB, Downloads: 0)

2021-08-28 03:46:52 Upload

Приложение logd что это. Смотреть фото Приложение logd что это. Смотреть картинку Приложение logd что это. Картинка про Приложение logd что это. Фото Приложение logd что это

Приложение logd что это. Смотреть фото Приложение logd что это. Смотреть картинку Приложение logd что это. Картинка про Приложение logd что это. Фото Приложение logd что это

Приложение logd что это. Смотреть фото Приложение logd что это. Смотреть картинку Приложение logd что это. Картинка про Приложение logd что это. Фото Приложение logd что это

Приложение logd что это. Смотреть фото Приложение logd что это. Смотреть картинку Приложение logd что это. Картинка про Приложение logd что это. Фото Приложение logd что это

Xiaomi Comm APP

Получайте новости о Mi продукции и MIUI

Рекомендации

* Рекомендуется загружать изображения для обложки с разрешением 720*312

Изменения необратимы после отправки

Cookies Preference Center

We use cookies on this website. To learn in detail about how we use cookies, please read our full Cookies Notice. To reject all non-essential cookies simply click «Save and Close» below. To accept or reject cookies by category please simply click on the tabs to the left. You can revisit and change your settings at any time. read more

These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services such as setting your privacy preferences, logging in or filling in formsYou can set your browser to block or alert you about these cookies, but some parts of thesite will not then work. These cookies do not store any personally identifiable information.

These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services such as setting your privacy preferences, logging in or filling in formsYou can set your browser to block or alert you about these cookies, but some parts of thesite will not then work. These cookies do not store any personally identifiable information.

These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services such as setting your privacy preferences, logging in or filling in formsYou can set your browser to block or alert you about these cookies, but some parts of thesite will not then work. These cookies do not store any personally identifiable information.

Источник

Русские Блоги

Подробный вход в Android

предисловие

Код основан на версии: Android P

архитектура

Приложение logd что это. Смотреть фото Приложение logd что это. Смотреть картинку Приложение logd что это. Картинка про Приложение logd что это. Фото Приложение logd что это

Система бревен разделена на три части:

В платформе Android есть файлы Log.java, Slog.java и другие, которые предоставляют интерфейс, используемый приложением верхнего уровня. В собственном коде или jni-коде будут использоваться макроинтерфейсы ALOGD, ALOGE и другие интерфейсы, определенные в liblog / include / log / log.h. Но в конце концов это происходит через интерфейс __android_log_write в logger_write.cpp в liblog.

Сначала посмотрите на __android_log_write:

Вызов write_to_log () и во время инициализации write_log_log указывает на __write_to_log_init ():

Эта функция в logger_write.c очень важна, здесь начинаются все источники, и в конце концов будет вызван __write_to_log_daemon:

Выполните некоторую инициализацию, фильтрацию, оценку и т. Д. В __write_to_log_daemon и, наконец, вызовите write в transport:

Мы не будем читать последний вызов функции записи здесь, что будет объяснено ниже.

Здесь транспорт формирует список во время инициализации. Подробнее см. __Android_log_config_write () в __write_to_log_initialize ():

Для использования LOGD окончательно используется logdLoggerWrite:

logd В initrc

Приложение logd что это. Смотреть фото Приложение logd что это. Смотреть картинку Приложение logd что это. Картинка про Приложение logd что это. Фото Приложение logd что это

Видно, что logd будет общаться и управлять через 3 сокета. А это значит начать один раз.

logd.main()

В основной функции файла system / core / lodgd / main.cpp создаются четыре объекта: LogBuffer, LogReader, LogListener и CommandListener:

Logd-Reinit процесс

Когда процесс Logd-reinit запускается, он отправляет команду reinit процессу logd.После получения команды logd повторно инициализирует LogBuffer.

В основной функции файла system / core / lodgd / main.cpp создается поток, чтобы отслеживать, есть ли запрос на повторный запуск.

В функции reinit_thread_start размер каждой области журнала и инициализация других параметров повторно инициализируются, но объект LogBuffer не создается заново. Соответствующий код выглядит следующим образом:

Сохранить журнал

Читать журнал

Журнал logd можно получить с помощью инструмента logcat, и путь, по которому находится код, связанный с logcat: system / core / logcat

Журнал, полученный с помощью logcat, распечатывается не полностью в соответствии с классификацией журналов, например, в журнале KERNEL может быть журнал MAIN.

Большинство функций, реализованных logcat, находятся в файле logcat / logcat.cpp, из которых наиболее важной является функция __logcat, которая отвечает за анализ входных параметров logcat и обработку журналов.

Наконец, Logcat читает журнал через функцию logdRead в liblog / logd_reader.c. Эта функция отвечает за открытие / dev / logdr и получение журнала через сокет.

Что касается уровня журнала и другой информации в коде, мы пока не будем объяснять это, с учетом log.h в разделе liblog.

Источник

[Прочее] (автономность, рут) способ удаления logd

Приложение logd что это. Смотреть фото Приложение logd что это. Смотреть картинку Приложение logd что это. Картинка про Приложение logd что это. Фото Приложение logd что это

Приложение logd что это. Смотреть фото Приложение logd что это. Смотреть картинку Приложение logd что это. Картинка про Приложение logd что это. Фото Приложение logd что это

Приложение logd что это. Смотреть фото Приложение logd что это. Смотреть картинку Приложение logd что это. Картинка про Приложение logd что это. Фото Приложение logd что это

Xiaomi Comm APP

Получайте новости о Mi продукции и MIUI

Рекомендации

* Рекомендуется загружать изображения для обложки с разрешением 720*312

Изменения необратимы после отправки

Cookies Preference Center

We use cookies on this website. To learn in detail about how we use cookies, please read our full Cookies Notice. To reject all non-essential cookies simply click «Save and Close» below. To accept or reject cookies by category please simply click on the tabs to the left. You can revisit and change your settings at any time. read more

These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services such as setting your privacy preferences, logging in or filling in formsYou can set your browser to block or alert you about these cookies, but some parts of thesite will not then work. These cookies do not store any personally identifiable information.

These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services such as setting your privacy preferences, logging in or filling in formsYou can set your browser to block or alert you about these cookies, but some parts of thesite will not then work. These cookies do not store any personally identifiable information.

These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services such as setting your privacy preferences, logging in or filling in formsYou can set your browser to block or alert you about these cookies, but some parts of thesite will not then work. These cookies do not store any personally identifiable information.

Источник

Русские Блоги

Резюме: в этом разделе в основном объясняются инструкции, связанные с logd и logcat, классификация журналов и общие атрибуты журналов системы ведения журналов Android10.0.

Чтение статьи занимает около 15 минут.

Первая статья была опубликована в публичном аккаунте WeChat: Big Cat Play.

Сосредоточьтесь на анализе исходного кода на уровне системы Android, дизайне платформы Android, добро пожаловать, подписывайтесь на меня, спасибо!

Цикл статей:

1 Обзор

При разработке программ ведение журнала является незаменимым методом отладки, как и разработка Android.

При разработке Android мы пишем журналы с помощью LOGD \ SLOGD и других методов, а затем читаем связанные журналы с помощью logcat, но как журналы записываются и читаются, и каковы лежащие в основе операции, иногда не глубоко изучение.

Этот раздел посвящен анализу принципов чтения и записи журналов Android с нижнего уровня исходного кода.

До Android 5.0 (Android-L) журнал сохранялся в кольцевом буфере ядра. После Android 5.0 журнал сохранялся в пользовательском пространстве и доступ к нему осуществлялся через Socket.

После Android 5.0 был представлен демон Logd для выполнения операций чтения и записи журнала.

Принцип раннего кольцевого буфера ядра можно найти в «Анализе исходного кода регистратора драйвера системы регистрации Android, Ло Шэнъян».

В этом разделе в основном анализируются связанные принципы реализации logd и logcat.

2. Основной исходный код

3. Описание инструкций, связанных с logcat

Подключите мобильный телефон к компьютеру, установите драйвер adb, откройте режим разработчика, выберите «Отладка по USB», можно выполнить команду adb

3.1 Синтаксис командной строки

Чтобы запустить Logcat через оболочку adb, обычно используется следующее:

3.2 Инструкции

Для получения дополнительной информации см. «Инструмент командной строки Logcat»

Приложение logd что это. Смотреть фото Приложение logd что это. Смотреть картинку Приложение logd что это. Картинка про Приложение logd что это. Фото Приложение logd что это

3.3 Выходные данные фильтрации журнала

Журналы Android делятся наСледующие 7 уровней

При отладке журналов мы можем управлять выводом журналов на разных уровнях.

Ниже приводится нормальный вывод журнала Android.

Журнал:02-05 12:44:15.357 17533 17545 D ActivityThread: caller system = false

Формат журнала:

Мы можем использовать фильтры для вывода только логов ниже соответствующего уровня:

1) Например: adb logcat *: I

Значение команды: выводить журналы с уровнем журнала выше Info, то есть выводятся только журналы Info, Error, Fatal и Silent, но журналы Debug и Verbose не выводятся.

2) Например: adb logcat ActivityManager: E ActivityThread: I *: S

Значение инструкции: это выражение подавляет все другие журналы, кроме сообщений журнала, помеченных как «ActivityManager» с приоритетом не ниже, чем «Ошибка», и сообщений журнала, помеченных как «ActivityThread» с приоритетом не ниже «Информация». Новости.

3) Например: adb logcat ActivityThread: E *: S

Значение команды: выводятся только журналы с меткой ActivityThread, а уровень журнала больше или равен Error, то есть выводятся только журналы Error и Fatal of ActivityThread

3.4 Формат вывода журнала

краткое: отображает приоритет, тег и PID процесса, отправившего сообщение.

long: отображать все поля метаданных и отдельные сообщения пустыми строками.

процесс: отображать только PID.

raw: отображать необработанные сообщения журнала, не содержащие других полей метаданных.

tag: только отображение приоритета и тега.

thread :: Старый формат, в котором отображается приоритет, PID и TID потока, отправившего сообщение.

threadtime (по умолчанию): отображает дату, время вызова, приоритет, тег, PID и TID потока, отправившего сообщение.

время: отображает дату, время вызова, приоритет, флаг и PID процесса, отправившего сообщение.

инструкция: [adb] logcat [-v ]

нота:-v может использовать только один формат за раз, формат времени потока по умолчанию может удовлетворить наши текущие потребности

3.5 Буфер журнала

радио: просмотр буфера, содержащего сообщения, относящиеся к беспроводным устройствам / телефонам.

events: просмотр интерпретированных сообщений буфера событий двоичной системы.

main: просмотр буфера основного журнала (по умолчанию), исключая системные сообщения и сообщения журнала сбоев.

система: просмотр буфера системного журнала (по умолчанию).

сбой: просмотр буфера журнала сбоев (по умолчанию).

все: просмотреть все буферы.

по умолчанию: основной, системный и аварийный буферы отчетов.

Описание 1:Приведенная выше команда выводит журнал только основного буфера.

Описание 2:Приведенная выше команда выводит журналы трех буферов: основного, радио и системного.

4. Описание атрибутов, связанных с системой журналов

setprop log.tag.MyApp D

После ручной настройки перезагрузка не удалась

Запустите демон аудита selinux

Информация аудита selinux отправляется в журнал dmesg

узел cat «/ proc / kmsg», используемый для чтения журнала ядра

Размер по умолчанию всех буферных областей журнала, по умолчанию 256 КБ, можно изменять в реальном времени, перезапуск недопустим.

Изменить временную метку журнала, можно изменить в реальном времени, перезапуск недопустим

Действует ли черный и белый список журнала, отключение недействительно, а включение действует

Измените временную метку журнала, которая может быть изменена только при компиляции версии или изменена после рутирования телефона, и перезагрузка продолжит действовать.

Размер буфера основного журнала, по умолчанию 256 КБ.

Размер буфера системного журнала, по умолчанию 256 КБ.

Независимо от того, действует ли черный и белый список журнала, отключение недопустимо, а включение действует.

setprop persist.log.tag Debug

Управляйте выводом журнала над отладкой. Настройка вступает в силу только после того, как версия предварительно создана или внедрена, и перезапуск также действует.

setprop ro.logd.kernel true

Управляйте выводом журнала ядра в буфер logd и загружайте его через lgocat

setprop ro.logd.auditd true

Управляйте выводом журнала selinux в буфер журнала и загружайте его через lgocat

Когда мы находимся в ежедневной отладке или тестировании CTS, мы сталкиваемся с потерей или неполнотой журнала. Основная причина заключается в том, что объем журнала большой, но буфер журнала мал. В настоящее время нам нужно только увеличить буфер журнала.

способ 1:setprop ro.logd.size 5120 т.е. отрегулируйте буфер журнала до 5M

5. Классификация журналов

Журналы на Android 10.0 разделены на 8 категорий:

Главный буфер журнала, который является единственным буфером журнала, доступным для приложения. Интерфейс android.util.Log предоставляется на уровне инфраструктуры приложения для записи журналов в и из драйвера журнала Logger через библиотеку liblog. Библиотека времени выполнения предоставляет макрос LOGV, LOGD, LOGI, LOGW и LOGE используются для записи журналов основного типа.

Просмотрите журнал, содержащий сообщения, связанные с беспроводным устройством / телефоном, вы можете вызвать android.telephony.Rlog для печати

Журналы событий типа используются для диагностики системных проблем. Интерфейс android.util.EventLog предоставляется на уровне инфраструктуры приложения для записи журналов в драйвер журнала Logger и из него через библиотеку liblog. Библиотека времени выполнения предоставляет макросы LOG_EVENT_INT, LOG_EVENT_LONG, LOG_STRING Используется для записи журналов типов событий.

Буфер журнала сбоев приложения или процесса

Источник

Breadcrumb

Приложение logd что это. Смотреть фото Приложение logd что это. Смотреть картинку Приложение logd что это. Картинка про Приложение logd что это. Фото Приложение logd что это

aferende

Senior Member

Hi all,
I have the G4 (H815) for over 6 months and always (both Lollipop and Marshmallow) I have been suffering from a tremendous battery drain.
After a lot of research I discovered that the reason (the main reason) of my battery drain is due to «logd» process that normally burned over 15% (or more) for each charge cycle (checked with Better Battery Stats).
Obviously I tried everything, full wipe, change ROM but that process was always there to suck battery them.

I do not know why the process is so high but I know that deactivating it the problem is automatically solved

So finally I found a way to eliminate the underlying problem permanently by disabling the logd process from TWRP.

if you also have this problem, follow this simple guide and you will solve the problem permanently.
After disabling «logd» process the only evidence it is that logcat no longer works but for many I do not think it’s a problem.
Anyway you can always go back and put everything back as it was.

[Before Start]
I suggest you to make a FULL BACKUP before you follow this guide.
I am not responsible if your brick your phone.

See the attached screen for a visual guide.
I also attach my battery stats AFTER disabling the «logd» process.
Before deactivating I did not reach the 2 hours of SOT. Now they are 4 or more with 20hrs of standby
All without Amplify or other battery savers

Let me know if this works for you.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *