Помогите создать логгер по данному заданию. Написать логгер для многопоточной среды.
Общая информация:
Логгер - это некий канал для передачи сообщений или информационных данных (сообщения об ошибках, вспомогательные данные для отладки и т.д.) из приложения и сохранения их для последующей обработки и анализа. В общем случае, данные могут передаваться куда-то по сети или записываться в файл на машине. У каждого сообщения есть уровень логирования (log level). Уровень логирования указывает важность принимаемых сообщений. Обычно уровни логирования бывают такие: *CRITICAL: Информация о критических ошибках * ERROR: Информация об ошибках возникших при работе приложения *WARNING: Информация о мелких проблемах возникших при работе приложения * INFO: Общая информация * DEBUG: Логирование информации для последующего использования в отладке
Задача:
Написать простейший логгер (набор структур и функций для С или класс для С++), который записывает логгируемые данные (только текст) из программы в текстовый файл на компьютере, где он запущен.
Логгер должен: * Логгировать только текстовую информацию. * Каждая запись должна содержать: - время когда она была сделана в формате «YYYY-MM-DD HH:MM:SS» - уровень логирования, с которым запись была помещена в лог. * Логгер должен работать в многпоточной среде, то есть несколько потоков должны иметь возможность писать в лог (один и тот же файл).
Необходимо так же написать простейшее консольное тестовое приложение к логгеру.
Использовать можно, либо С, либо С++, на выбор. Желательно под Linux, но можно и под Windows. Можно использовать любую доступную среду разработки и компилятор С или С++.
Или подскажите где почитать. Проблема в том, что с подобного рода задачами не сталкивался НИКОГДА. Поэтому даже не знаю с чего начинать.