Насколько я понимаю, сеанс IPython запускает ведение журнала, поэтому basicConfig не работает. Вот установка, которая мне подходит (хотелось бы, чтобы она не выглядела так грубо, поскольку я хочу использовать ее почти для всех своих ноутбуков):
import logging
logger = logging.getLogger()
fhandler = logging.FileHandler(filename='mylog.log', mode='a')
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fhandler.setFormatter(formatter)
logger.addHandler(fhandler)
logger.setLevel(logging.DEBUG)
Теперь, когда я бегу:
logging.error('hello!')
logging.debug('This is a debug message')
logging.info('this is an info message')
logging.warning('tbllalfhldfhd, warning.')
Я получаю файл mylog.log в том же каталоге, что и моя записная книжка, который содержит:
2015-01-28 09:49:25,026 - root - ERROR - hello!
2015-01-28 09:49:25,028 - root - DEBUG - This is a debug message
2015-01-28 09:49:25,029 - root - INFO - this is an info message
2015-01-28 09:49:25,032 - root - WARNING - tbllalfhldfhd, warning.
Обратите внимание, что если вы перезапустите это без перезапуска сеанса IPython, он запишет повторяющиеся записи в файл, поскольку теперь будут определены два обработчика файлов.