Опубликовано: 25 Октября 2017
Журнал сообщений

В процессе разработки приложения и/или его отладки возникает необходимость получить информацию о состоянии переменных или сообщения с информацией об ошибках. Библиотека dlog в Tizen применяется для этих целей. Проверить журналы сообщений своего и других приложений на устройстве/эмуляторе можно с помощью утилиты dlogutil.

Вывод сообщений

Чтобы использовать API библиотеки dlog, необходимо включить в проект заголовочный файл dlog.h:

#include <dlog.h>

Регистрация сообщения включает в себя текст сообщения, приоритет сообщения и тег. Приоритет указывает на степень важности сообщения, а в среде разработки эти сообщения выделяются разными цветами. В библиотеке выделены следующее приоритеты:

DLOG_VERBOSE Сообщения, содержащие подробную информацию
DLOG_DEBUG Сообщения для проверки выполнения программы
DLOG_INFO Информационные сообщения
DLOG_WARN Сообщения предупреждающие о возможных ошибках
DLOG_ERROR Сообщения об ошибках. Ошибки можно обработать и продолжить выполнение приложения, ограничив его функциональность или производительность
DLOG_FATAL Сообщения об ошибках, которые не возможно обработать. Возникновение таких ошибок приводит к тому, что приложение не может больше выполняться

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

Вывод сообщений обеспечивает функция

int dlog_print(log_priority prio, const char *tag, const char *fmt, ...);

Аргументы: приоритет, тег и формат – строка, которая может включать различные спецификаторы, заменяемые значениями, следующими за форматом. В случае успешного выполнения функция возвращает количество записанных байтов. В противном случае — отрицательное значение.

Теперь давайте выведем несколько сообщений с различными приоритетами и посмотрим их через окно журнала сообщений в Tizen Studio.

dlog_print(DLOG_VERBOSE, "lessonwear013", "Сообщение приоритета DLOG_VERBOSE.");
dlog_print(DLOG_DEBUG, "lessonwear013", "Сообщение приоритета DLOG_DEBUG.");
dlog_print(DLOG_INFO, "lessonwear013", "Сообщение приоритета DLOG_INFO.");
dlog_print(DLOG_WARN, "lessonwear013", "Сообщение приоритета DLOG_WARN.");
dlog_print(DLOG_ERROR, "lessonwear013", "Сообщение приоритета DLOG_ERROR.");
dlog_print(DLOG_FATAL, "lessonwear013", "Сообщение приоритета DLOG_FATAL.");
nw_013_01_ru

В IDE журнал доступен во вкладке Log. Открываем вкладку через Window → Show view → Log. Собщения выделены цветом приоритета. Также их можно отфильтровать по тегу, по содержимому сообщения. Можно включить/отключить сообщения определенного типа.

Просмотр журнала сообщений из консоли

На устройстве посмотреть журнал сообщений можно с помощью утилиты dlogutil. Подключаемся к устройству через sdb. Сначала для использования SDB, установите устройство в режим SDB, перейдя в Settings → More system settings → Developer options → USB debugging. В консоле выполняем команду sdb connect device.ip. Для просмотра журнала вызываем dlogutil. В общем случае команда имеет следующий вид:

dlogutil [<option>] ... [<filter-spec>] ...

Выражение фильтра включает tag:priority. Чтобы посмотреть информационные сообщения нашего приложения нужно вызвать

dlogutil lessonwear013:I

Чтобы посмотреть сообщения всех приоритетов нужно вызвать

dlogutil lessonwear013:*

Теперь вы сможете выводить в окно логирования свои сообщения об ошибках или дополнительной информации из вашего приложения.

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

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