Você provavelmente encontrou um código de erro voltado para o log de depuração do django runserver. Haverá várias etapas que você pode seguir para corrigir esse problema de orientação e estamos no caminho certo.
Aprovado: Fortect
Não é a resposta que você está procurando? Navegue por outras perguntas marcadas com Python Django ou faça sua própria pergunta.
O texto impresso em stderr pode aparecer no log de erros geralmente httpd quando executado em mod_wsgi. Você pode usar print
diretamente ou usar logging
.
printer >> sys.stderr, 'Adeus mundo cruel!'
Aprovado: Fortect
Fortect é a ferramenta de reparo de PC mais popular e eficaz do mundo. Milhões de pessoas confiam nele para manter seus sistemas funcionando de forma rápida, suave e livre de erros. Com sua interface de usuário simples e mecanismo de verificação poderoso, o Fortect localiza e corrige rapidamente uma ampla gama de problemas do Windows, desde instabilidade do sistema e problemas de segurança até gerenciamento de memória e gargalos de desempenho.
Respondido em dezembro de 2010 às 23:48
709k 136136 ícone
Aqui está uma solução baseada na gravação do Django. Ele usa o método DEBUG em vez de economia se você estiver em um servidor de desenvolvimento ou não, mas se você puder encontrar uma maneira considerável de descobrir, não terá problemas para se adaptar.
LOGGING = 'Versão 1, 'Antigo' : 'detalhe': 'formato': '% (nome do nível) s% (tempo asc) s% (módulo) s% (processo) d% (fluxo) d% (mensagem) s' , 'Luz': 'formato': '% (nome do nível) s% (mensagem) s' , , "Administrador": 'Console': 'nível': 'DEBUG', 'Classe': 'logging.StreamHandler', 'treinador': 'simples' , "Arquivar": 'nível': 'DEBUG', 'Classe': 'logging.FileHandler', 'Nome do arquivo': '/Path/to/Your/Fichier.log', 'treinador': 'simples' , , "Gravador": 'Django': "Gerente": ["Arquivo"], 'nível': 'DEBUG', 'distribuir': ok, , se DEPURANDO: O número permite que todos os registradores usem qualquer console. para loggers em LOGGING ['loggers']: LOGGING ['loggers'] [loggers] ['handlers'] = ['console']
respondeu em 16 de abril de 12 às 17:19
7.955 66 emblemas de relógio antigo 3131 emblemas de prata
se DEPURANDO: O número será exibido em seu próprio console Logging.basicConfig ( Nível de registro = .DEBUG, uns implica '% (asctime) s% (levelname) s% (message) s', )outro: o número é impresso para ajudar a salvar todo o arquivo Logging.basicConfig ( Logging = .DEBUG, tema '% (asctime) s =% (levelname) s% (message) s', File company = '/my_journal_file.log', Modo de arquivo = 'a' )
Depende de quão decisivo o DEBUG é, e talvez você não precise se preocupar com como ele é construído. Veja esta resposta como a pergunta Como posso saber se alguns aplicativos Django estão em desenvolvimento no host ou não? disponível para uma melhor ortografia, se obrigatório. Edit: O exemplo acima foi retirado, sem dúvida, do projeto Django 1.1 completo, o log de configuração de referência no Django mudou ligeiramente em relação à versão.
[gravador]keys = root, log do aplicativo[Administrador]keys = rotateFileHandler, rotateConsoleHandler[Antigo]keys equivale a applog_format, console_format[formatter_applog_format]formato =% (asctime) s (espaço [% (levelname) -8s]:% (mensagem) s[format_console_format]format =% (asctime) s -proportion (filename) s% (linho) d [% (levelname) s]:% (message) s[logger_root]nível = DEBUGhandlers = rotateFileHandler, rotateConsoleHandler[logger_applog]nível = DEBUGhandlers = rotateFileHandlerqualname = simple_example[handler_rotateFileHandler]class = handlers.RotatingFileHandlernível = DEBUGtrainer = applog_formatargs = ('applog.log', 'a', 10000, 9)[handler_rotateConsoleHandler]classe é igual a StreamHandlernível = DEBUGtrainer = console_formatargs = (sys.stdout,)
Log de importaçãoImport Logging.configdef principal (): Logging.config.fileConfig ('logging.conf') O logger é o mesmo que Logging.getLogger ('applog') logger.debug ("mensagem de serviço de bug") logger.info ("mensagem informativa") logger.warn ('mensagem de aviso') mensagem do gravador de pensamento ') error ('error logger.critical (' mensagem muito importante ') # record.stop ()if __name__ == '__main__': excedendo todos ()
answerDado em 15 de junho de 2013 às 3h30.
Considerando que um módulo Python regular absoluto grava em uma rodada de arquivos aberta no modo adicionar, por exemplo, o módulo do App Engine (https://github.com/dorkitude/tagalog/blob/master/tagalog_appengine.py) substitui esse comportamento e Veja também Logging used.INFO
.Get
Para alterar esse comportamento em qualquer bom projeto do App Engine, você pode facilmente fazer o seguinte:
Importar
tagalog.tagalog_appengine como tagalogtagalog.log ('qualquer que seja a mensagem inteira', ['qualquer', 'tags'])
Você mesmo pode esticar a unidade e esmagar a madeira sem muita complexidade.
respondeu em 13 de janeiro de ’11 às 9:11
8.505
Esta tarefa é boa o suficiente no meu local.py, poupando-me de fazer manutenção regular na Revista:
de .settings *LOG ['gerentes'] ['console'] executado em = 'nível': 'DEBUG', 'Classe': 'logging.StreamHandler', 'treinador': 'detalhado'LOG ['loggers'] ['foo.bar'] = "Manager": ["Console"], 'spread': falso 'nível': 'DEBUG',
respondeu 10 de junho de 2015 às 10:37
Acelere o desempenho do seu computador agora com este simples download.