при 50 потках у меня перед глазами будут мелькать серо-буро-малиновые строчки, а через 5 мин фантом радуги в глазах
Если по нормальному, то тогда лучше сделать возможность задать свои вкладки-логи, задавать им имена , а все остальное как есть оставить.
Ну и оставить как есть, общий поток.
Чето типа в таком духе
TabLog tablog = new TabLog("TabName")
Все остальное унаследовать от текущей реализации IZennoPosterProjectModel Interface
tablog.SendErrorToLog("Message");
Если развивать фичу, то можно пойти дальше и натянуть на кубики все это, дабы после каждого не лепить кубик снипета.
В окружении создать тип переменных "DebugTabs" которые содержат названия вкладок логов.
В каждом "кубике" добавить поле "EventToLog" для которого выбираем имя вкладки лога, тип события (Info, Error/etc) и само сообщение с возможностью задать формат строки по типу String.Format("Был успешно зарегистрирован аккаунт {0}", {-Variable.Login-}) (с поддержкой переменных)