Small work on issues: http://pastebin.com/fd3UCgjv As you see, there is no more 'version' spaghetti: auto logDbg = new Log(new FileLogEngine(`c:\res.txt`), new DBLogEngine(``)); auto logErr = new Log(); logDbg(`It works for %s`, `me!`);// won't be printed if '-version=log' is not specified logErr(`Serious problem!`);