Для добавления даты и времени в записи логов на Python можно использовать модуль logging и настроить форматтер.
Пример:
import logging
# Создаем логгер
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
# Создаем обработчик (handler) для записи в файл или консоль
handler = logging.StreamHandler()  # Или FileHandler('logfile.log')
# Создаем форматтер с информацией о дате и времени
formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s', datefmt='%Y-%m-%d %H:%M:%S')
# Устанавливаем форматтер для обработчика
handler.setFormatter(formatter)
# Добавляем обработчик к логгеру
logger.addHandler(handler)
# Пример использования
logger.info('Сообщение информационного уровня')
logger.warning('Предупреждение!')
В примере выше, %(asctime)s в формате сообщений будет заменен на текущую дату и время, отформатированные в соответствии с datefmt='%Y-%m-%d %H:%M:%S'.  logging.StreamHandler выводит логи в консоль, а logging.FileHandler - в файл.
Чтобы добавить дату и время в записи логов в Python, можно использовать модуль logging и настроить форматтер (Formatter).  Вот как это можно сделать:
logging с форматированием даты и времениИмпортируйте модуль logging:
import loggingНастройте конфигурацию логгера: Самый простой способ – это базовая конфигурация, но в реальных проектах рекомендуется более детальная настройка.
logging.basicConfig(
    level=logging.INFO,
    format='%(asctime)s - %(levelname)s - %(message)s',
    datefmt='%Y-%m-%d %H:%M:%S'
)
      level=logging.INFO: Устанавливает уровень логирования (например, INFO, DEBUG, WARNING, ERROR, CRITICAL). Будут логироваться только сообщения с этим уровнем или более высоким.format='%(asctime)s - %(levelname)s - %(message)s':  Определяет формат записи лога. %(asctime)s – время записи, %(levelname)s – уровень лога, %(message)s – само сообщение.datefmt='%Y-%m-%d %H:%M:%S':  Определяет формат даты и времени. %Y – год, %m – месяц, %d – день, %H – час, %M – минута, %S – секунда.  Можно использовать различные комбинации этих директив.  Полный список можно найти в документации Python для time.strftime().Используйте логгер для записи сообщений:
logger = logging.getLogger(__name__)
logger.info('Это информационное сообщение')
logger.warning('Это предупреждение')
logger.error('Это сообщение об ошибке')
      
import logging
# Настройка логгера
logging.basicConfig(
    level=logging.INFO,
    format='%(asctime)s - %(levelname)s - %(module)s - %(funcName)s - %(message)s',
    datefmt='%Y-%m-%d %H:%M:%S'
)
# Получаем логгер
logger = logging.getLogger(__name__)
def my_function():
    logger.info('Функция начала работу')
    try:
        result = 10 / 0
    except ZeroDivisionError:
        logger.exception('Произошла ошибка деления на ноль')
    logger.info('Функция завершила работу')
if __name__ == '__main__':
    logger.info('Программа начала работу')
    my_function()
    logger.info('Программа завершила работу')
  Вывод в консоль будет примерно таким:
2023-10-27 14:30:00 - INFO - __main__ - <module> - Программа начала работу
2023-10-27 14:30:00 - INFO - __main__ - my_function - Функция начала работу
2023-10-27 14:30:00 - ERROR - __main__ - my_function - Произошла ошибка деления на ноль
Traceback (most recent call last):
  File "<stdin>", line 11, in my_function
ZeroDivisionError: division by zero
2023-10-27 14:30:00 - INFO - __main__ - my_function - Функция завершила работу
2023-10-27 14:30:00 - INFO - __main__ - <module> - Программа завершила работу
  FileHandler к логгеру.logger.exception() для логирования информации об исключениях, включая трассировку стека.В заключение, использование модуля logging с правильной настройкой формата даты и времени – важная часть разработки robust и отлаживаемых приложений на Python.