его не включать в компиляцию, а конкретно tracing? Мне coverage показывает, что tracing-макросы не задействованы (#[tracing::instrument] и всякие tracing::info!()).
(вариант "не тестировать функции с логгированием" не существует)
Можно у tracing через фичу max log level подкрутить
переформулируй вопрос, яннп
Чтобы несработавшие логи трейсинга не портили coverage report хочу. Он мне все вызовы tracing::info!(), рисует красным как неиспользуемые
думаю самый простой способ сделать свой макрос info/debug/... и повесить туда if !cfg!(debug_assertions) { info!($args) }
Делать свой макрос = переписывать все 32 вариации аргументов их макроса? Боюсь, IDE не съест тупо ($($args:tt))
И правда, #[macro_export] macro_rules! info { ($($args:tt)*) => {{ #[cfg(not(test))] tracing::info!($($args)*) }}; } оказалось достаточно, показатели исправились.
Обсуждают сегодня