Log(3) не нужен да, 3 - уровень логирования при котором печатается сообщение, это и делает конструктор Log(const int log_level) - «обычный» метод.
Но, как установить текущий уровень логирования логгера (т.е. что реально будет «распечатано» сообщения с Log(1) или Log(2) или …) для всего модуля или класса или, вообще, программы? нифига не решает это обчный метод
Декомпозиция и инкапсуляция - твои друзья. Обычно, когда нужно логгировать какой-то конкретный модуль, для него не только дефолтный лог будет отличаться. Называют это по-разному, logger, log category, log - но по факту, обычно есть «политика» логгирования в текущем контексте и то, куда логгировать sink. Ограничивать пользователя api статическими полями стоит избегать так долго, как это возможно. Пользователю гораздо проще сделать объект logger если это нужно - целиком статическим.