Edit:Registrazione Python e debugger Pydev?
Utilizzando Liclipse 1.2.1 invece di 1.3.0 o 1.4.0 funziona bene. Changelog indica sia gli aggiornamenti di Pydev 3.9.1 che quelli di Eclipse 4.4.1 per 1.3.0. Sembra interrompere il debug di registrazione.
Utilizzando Liclipse e debugger Pydev (e CPython) con il seguente codice di esempio, ottenendo questo errore:
logging.config.dictConfig(config)
File "C:\Python27\lib\logging\config.py", line 794, in dictConfig
dictConfigClass(config).configure()
File "C:\Python27\lib\logging\config.py", line 576, in configure
'%r: %s' % (name, e))
ValueError: Unable to configure handler 'console': 'DictConfigurator' object has no attribute 'startswith'
Non c'è problema senza il debug, è il modulo di registrazione richiede l'esecuzione dell'ambiente e solo la volontà lavorarci su ?
Ecco il codice di esempio utilizzato:
import logging.config
import yaml
def setup_logging():
default_path = 'logger.conf'
default_level = logging.DEBUG
if os.path.exists(default_path):
with open(default_path, 'rt') as f:
config = yaml.load(f.read())
logging.config.dictConfig(config)
else:
logging.basicConfig(level=default_level)
Ed ecco la mia logger.conf:
version: 1
disable_existing_loggers: False
formatters:
simple:
format: "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
lineInfo:
format: "%(asctime)s - Line: %(lineno)d - %(name)s - %(levelname)s - %(message)s"
handlers:
console:
class: logging.StreamHandler
level: DEBUG
formatter: lineInfo
stream: ext://sys.stdout
debug_file_handler:
class: logging.handlers.RotatingFileHandler
level: DEBUG
formatter: lineInfo
filename: logs/debug.log
maxBytes: 10485760 # 10MB
backupCount: 10
encoding: utf8
info_file_handler:
class: logging.handlers.RotatingFileHandler
level: INFO
formatter: simple
filename: logs/info.log
maxBytes: 10485760 # 10MB
backupCount: 10
encoding: utf8
error_file_handler:
class: logging.handlers.RotatingFileHandler
level: ERROR
formatter: simple
filename: logs/errors.log
maxBytes: 10485760 # 10MB
backupCount: 10
encoding: utf8
root:
level: DEBUG
handlers: [console, info_file_handler, error_file_handler, debug_file_handler]
Grazie
Grazie tanto, questo ha funzionato per me con PyCharm 4.0.5. – EM0
Grazie anche a me - ha funzionato con PyCharm 4.5.2. – rettops
Grazie ha funzionato anche per me ... con 'Eclipse' e' Liclipse' Eclipse Mars:/home/ /.p2/pool/plugins Liclipse: /opt/liclipse/plugins/org.python.pydev_4.3.0. 201508181931/pysrc/pydevd.py –