2017-12-05 2 views
0

私は自分のスキルをPythonで開発していますが、今ではファイルへのロギングを追加しようとしています。私はフォーマットの問題に遭遇し、情報を見つけることができないか、間違った質問をします。 それまで: 私のコードの抜粋。Python 2.7のロギング機能でフォーマットのヘルプが必要

import logging 
logging.basicConfig(filename='/var/log/larmlog/getandsendlogger.log',level=logging.DEBUG,format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',datefmt='%Y-%m-%d %H:%M:%S ') 

私はMySQLの

cursor.execute("""SELECT omr,county FROM rico where pocnr = '%s'""" % (pocin)) 
     records = cursor.fetchall() 
     nystad = [record[0] for record in records] 
     county = [record[1] for record in records] 
logging.debug("chkomr returns nystad {} and county {}.".format(nystad,county)) 

から2つの変数をフェッチし、私は変数を使用する場合、それはこの

2017年12月5日2時46分02秒のように見えますログインしています - root - DEBUG - chkomrはnystad [None]とcounty [u'J \ xf6nk \ xf6pings l \ xe4n ']を返します。

どうすれば修正できますか?スウェーデン語の文字列でなければなりません。ログはJönköpingslänと言うべきです。私のコードはutf-8に設定する必要があります。

私はここにそれほど多くの質問をしておらず、恐らくコードブロックなどで質問を混乱させました。より多くのコードや説明が必要かどうか尋ねてください。

+0

ロガーは古いパーセント記号構文を使用していると思います。 'log.info( '%s%s'、foo、bar)' – geckos

+0

私は理解できません。コードにエラーがあるか、Pythonがフォーマットの問題を正しく表していません。後者の場合、ここから「yapf」を試してみてください。https://github.com/google/yapf –

+0

%sを使用しても同じ結果が得られます。 –

答えて

0

これは私の問題を解決しましたが、なぜデータを2回抽出する必要があるのか​​分かりません。ちょうど私のログが良く見えるようになってうれしい。 :D

logging.debug('chkomr returns nystad %s and county %s.' % (nystad[0],county[0])) 
関連する問題