Lorsque j'exécute ce qui suit dans IPython Notebook, je ne vois aucune sortie:
import logging
logging.basicConfig(level=logging.DEBUG)
logging.debug("test")
Quelqu'un sait comment faire pour que je puisse voir le message "test" à l'intérieur du cahier?
python
logging
jupyter-notebook
jupyter
Kyle Brandt
la source
la source
ipython3 notebook --version
revient1.0.0
Réponses:
Essayez de suivre:
Selon logging.basicConfig :
Il semble que le notebook ipython appelle basicConfig (ou set handler) quelque part.
la source
logger
est créée.ipykernel
4.5 (peut-être dès 4.4) github.com/jupyter/notebook/issues/1397Si vous souhaitez toujours utiliser
basicConfig
, rechargez le module de journalisation comme cecila source
reload
c'est maintenantimp.reload
Je crois comprendre que la session IPython démarre la journalisation, donc basicConfig ne fonctionne pas. Voici la configuration qui fonctionne pour moi (j'aimerais que ce ne soit pas si grossier car je veux l'utiliser pour presque tous mes ordinateurs portables):
Maintenant, quand je cours:
J'obtiens un fichier "mylog.log" dans le même répertoire que mon notebook qui contient:
Notez que si vous réexécutez ceci sans redémarrer la session IPython, il écrira des entrées en double dans le fichier car il y aurait maintenant deux gestionnaires de fichiers définis
la source
Gardez à l'esprit que stderr est le flux par défaut du
logging
module, donc dans les notebooks IPython et Jupyter, vous ne verrez peut-être rien à moins que vous ne configuriez le flux sur stdout:la source
Ce qui a fonctionné pour moi maintenant (Jupyter, serveur de notebook est: 5.4.1, IPython 7.0.1)
Maintenant, je peux utiliser un enregistreur pour imprimer des informations, sinon je ne verrais que le message du niveau par défaut (
logging.WARNING
) ou supérieur.la source
basicConfig()
tp pour que ça marche.Vous pouvez configurer la journalisation en exécutant
%config Application.log_level="INFO"
Pour plus d'informations, consultez les options du noyau IPython
la source
%config
pour voir les classés pris en charge,Application
n'est pas l'un d'entre eux. ipython 7.9.0 ici.J'ai configuré un enregistreur pour les deux fichiers et je voulais qu'il apparaisse sur le cahier. Il s'avère que l'ajout d'un gestionnaire de fichiers efface le gestionnaire de flux par défaut.
la source
Il semble que les solutions qui fonctionnaient pour les anciennes versions d'ipython / jupyter ne fonctionnent plus.
Voici une solution de travail pour ipython 7.9.0 (également testée avec jupyter server 6.0.2):
la source