ความเข้าใจของฉันคือเซสชัน 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 มันจะเขียนรายการที่ซ้ำกันไปยังไฟล์เนื่องจากตอนนี้จะมีการกำหนดตัวจัดการไฟล์สองตัว