Полезно ли вызывать функции ведения журнала с помощью строки формата + список аргументов против форматирования inline?
Я видел (и написал) код регистрации, который использует форматирование строки inline:
logging.warn("%s %s %s" % (arg1, arg2, arg3))
и все же я предполагаю, что лучше (с точки зрения производительности и более идиоматического) использовать:
logging.warn("%s %s %s", arg1, arg2, arg3)
потому что вторая форма избегает операций форматирования строк до вызова функции ведения журнала. Если текущий уровень ведения журнала отфильтровывает сообщение журнала, форматирование не требуется, что сокращает время обработки и распределение памяти.
Я на правильном пути здесь, или я что-то пропустил?