1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/itfriday-xxlogger

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

XXLogger

XXLogger — это класс инструментов для печати журналов, который поддерживает Java, Object-C и C. XX в XXLogger обозначает определённый язык.

  • В каталоге C находится реализация на языке C.
  • В каталоге OC находится реализация на языке Object-C.
  • В каталоге Java находится реализация на языке Java.

Основные функции:

  1. Вывод журнала в указанный файл.
  2. Возможность задать максимальный размер файла журнала.
  3. Автоматическое резервное копирование исходного файла журнала при превышении максимального размера.
  4. Разделение журналов по уровням, возможность настройки минимального уровня, печать только сообщений с уровнем не ниже минимального.
  5. Простое расширение уровней журнала.

Почему существует XXLogger?

Потому что нужна простая реализация. Независимо от кода или использования, всё должно быть просто. У популярного log4xx мощные функции, но он слишком сложен, его настройка также сложна, что не способствует обслуживанию, и большинству приложений не нужны некоторые из его функций. Поэтому, если вы, как и я, хотите простой, чистый и понятный код, XXLogger может стать хорошим выбором.

Как использовать XXLogger?

Использование XXLogger очень простое. Вам нужно только вызвать initLogger один раз в основной программе, после чего можно использовать его в других местах.

1. Java — Android:

  • Рекомендуется вызывать initLogger для инициализации журнала в функции onCreate класса Application. LogManager.getInstance().initLogger("logfilename.log", LogLevel.LOG_LV_ERROR, 1024000); // Устанавливаем имя файла журнала, уровень журнала и максимальный размер журнала (около 1 М).
  • Для вывода журнала используйте соответствующие функции. LogManager.getInstance().getLogger().debug("Это журнал уровня debug, информация отладки: %s", "отладка"); LogManager.getInstance().getLogger().info("Это журнал уровня info, информация: %s", "информация"); LogManager.getInstance().getLogger().error("Произошла ошибка, код ошибки:%d, информация об ошибке:%s", errCode, "информация об ошибке");

2. Object-C:

  • Вызывайте initLogger для инициализации журнала в функции didFinishLaunchingWithOptions класса AppDelegate. Если вы настроили параметры AppLogFileName (имя файла журнала без пути), AppLogLevel (уровень журнала, можно настроить DEBUG, PROTOCOL, INFO, WARN, ERROR) и AppMaxLogLevel (максимальный размер журнала) в файле info.plist, вы можете напрямую вызвать initLogger для инициализации. [[LogManager getInstance] initLogger]; Если эти параметры не настроены в info.plist, вам необходимо указать имя файла журнала (включая путь к файлу), уровень журнала и размер журнала: [[LogManager getInstance] initLogger:"logFileName" logLevel:LOG_LEVEL_ERROR maxLogSize:1024000];
  • Используйте соответствующие функции для вывода журнала. LOGING_DEBUG(@"Это журнал уровня debug, информация отладки:%@", @"отладка"); LOGING_ERROR(@"Произошла ошибка, код ошибки:ld, информация об ошибке%@", errCode, @"информация об ошибке");

3. C:

  • Определите глобальный объект журнала в файле C, содержащем функцию main. LOGGER g_stLogger;
  • Инициализируйте журнал в функции main. init_logger(&g_stLogger, "logPath", "logFileName", "logLevel", 4096000, 10); Установите максимальный размер журнала равным 4 М, и если он превышен, будет выполнено резервное копирование текущего файла журнала. Здесь установлено максимальное количество резервных копий журнала — 10. Когда количество резервных файлов превышает 10, самый ранний резервный файл будет перезаписан.
  • Используйте соответствующие функции для вывода журнала. LOG_DEBUG("Это журнал уровня debug, информация отладки:%s", "отладка"); LOG_ERROR("Произошла ошибка, код ошибки:%d, информация об ошибке %s", errCode, "информация об ошибке");

Рекомендации по использованию XXLogger (Notice):

  1. Реализация на C основана на Linux и лучше всего подходит для серверной разработки. Она не является потокобезопасной и подходит для программирования без блокировки. Обычно высокопроизводительные серверы являются однопроцессными и однопоточными, поэтому использование ресурсов не требует блокировки. Таким образом, эта реализация больше подходит для разработки однопроцессных и однопоточных серверов. Если ваше приложение использует многопоточность, вы можете изменить код и добавить блокировку самостоятельно.

  2. Реализации на Object-C и Java являются потокобезопасными и могут использоваться в многопоточных приложениях. Среди них реализация Object-C выводит журналы в отдельном потоке, что делает её более подходящей для разработки мобильных приложений.

  3. Реализацию на Java рекомендуется использовать при разработке под Android. При использовании в других средах достаточно заменить вызовы, связанные с Android.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
LGPL-2.1
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/itfriday-xxlogger.git
git@api.gitlife.ru:oschina-mirror/itfriday-xxlogger.git
oschina-mirror
itfriday-xxlogger
itfriday-xxlogger
master