Есть приложение содержащее 2 потока, сейчас логирования нет вообще, нужно сделать логирование причем с регулируемой детализацией , вплоть до вызова конкретной функции WinAPI например — код ее ошибки / входные параметры.
Библиотеки подключать нельзя (
Соотвественно нужно сделать небольшой надежный велик. Какие паттерны реализации применить для такого случая ?
Например сейчас функции в основном имеют слеюущий вид :
bool SomeFuction()
{
if (SomeWinAPIFunction( ) != ERROR_SUCCESS)
return false;
...
}
Соотвественно можно брать GetLastError() в main() на выходе из всех процедур и логировать. Чем это плохо ? Я пока особых недостатков не вижу.
И как лучше сделать логер — динамический объект или статический метод Log() который дергается из любого места программы.