Умный таймер на Python для замеров с метками

Практические лайфхаки для разработчиков, DevOps и админов: Docker, Linux, Bash, Python, Golang, Ansible, логи и безопасность — только рабочие решения. Даем готовые команды, конфиги и приёмы диагностики, которые экономят часы и дни. Если нужно быстро настроить, отладить и обезопасить инфраструктуру — вы по адресу.

pythonтаймерлогирование

ℹ️ Иногда time.time() или timeit — это слишком просто. А хочется понимать, сколько заняла каждая часть функции, логировать это красиво и потом использовать в отладке. Вот тебе мини-класс Timer, который поможет замерять всё по шагам.

➡️ Весь код:

 import time

class Timer:
    def __init__(self): self.start = time.time()
    def log(self, label): 
        now = time.time()
        print(f"[{label}] {now - self.start:.3f}s")
        self.start = now

# Пример использования
t = Timer()
# ... код ...
t.log("Шаг 1")
# ... ещё код ...
t.log("Шаг 2")

🔥 Чем полезно:

  • Класс легко вставить в любой скрипт
  • Удобно логировать задержки по шагам (загрузка, парсинг, отправка)
  • Работает без зависимостей
  • Можно заменить print на logging.info() и сразу интегрировать в бэкенд

✳️ Применяется в: ETL-задачах, парсерах, API-хендлерах, тестировании производительности, dev-сценариях. Совет: если хочешь, чтобы логи шли в файл — просто подмени print() на logger из logging.

tags: #полезно #python #разработка

🧭 @recura_tech

Скриншот в тёмной теме с фрагментом кода Python: мини‑класс Timer для пошаговых замеров времени, вывод меток и пример использования t.log.
Мини‑класс Timer для пошаговых замеров времени в Python.

Читайте так же