2016-05-02 11 views
0

開発のためにdjangoのログインを正しく設定しようとしていますので、今はコンソールで見ることができますが、出力からログに変更すると出力は表示されません。Djangoのロギング - ローカル開発の場合

ジャンゴローカル設定のセットアップ:

LOGGING = { 
    'version': 1, 
    'disable_existing_loggers': False, 
    'filters': { 
     'require_debug_false': { 
      '()': 'django.utils.log.RequireDebugFalse', 
     }, 
     'require_debug_true': { 
      '()': 'django.utils.log.RequireDebugTrue', 
     }, 
    }, 
    'handlers': { 
     'console': { 
      'level': 'DEBUG', 
      'filters': ['require_debug_true'], 
      'class': 'logging.StreamHandler', 
      'stream': sys.stdout 

     }, 
    }, 
    'loggers': { 
     'myapp.management': { 
      'handlers': [ 
       # 'mail_admins', 
       # 'syslog', 
       'console'], 
      'level': 'DEBUG', 
     }, 
     'django': { 
      'handlers': [ 
       # 'mail_admins', 
       # 'syslog', 
       'console'], 
      'level': 'INFO', 
     }, 
    } 
} 

そして、Djangoの管理コマンドで:

import logging 

logger = logging.getLogger(__name__) 

経由でロガーを使用:

def collect_data(self, url, method, payload=None): 
     response = getattr(requests, method)(url=url json=payload, headers=self.headers) 
     if response.status_code == 200: 
      logging.debug('{}'.format(response.json()) 
      # print('{}'.format(response.json())) 
      return response.json() 
     else: 
      logging.warning('{}'.format(response.raise_for_status())) 
      # print('{}'.format(response.raise_for_status())) 
      return response.raise_for_status() 

答えて

0

あなたはtestという名前のファイルがある場合。あなたの管理フォルダ内のpyを編集するには、次のように設定します:

test.py内部0
'testproject.management.commands.test': { 
      'handlers': ['my_handler'], 
      'level': 'INFO', 
      'propagate': True 
     }, 

輸入は、次のように大丈夫です:

import logging 

logger = logging.getLogger(__name__) 

は、まさに右この瞬間をそれをテストしていませんが、これは私が内部ロガーを使用していた私のプロジェクトからです管理コマンドとそれは正常に働いた。

+0

私の管理コマンドスクリプトのいくつかの点では 'logging.info( 'some string')'でいくつかの出力を得ることができますが、他のものは出力できません。それが動作しない箇所では、ロギングのすぐ隣に 'print( '何らかの文字列')があります。私は何の誤りもないので、なぜそれがどこの場所で動作するのか他のものではないのか分からないのですか? – Yunti

+0

ファイル全体を投稿できますか? – Nirri

関連する問題