70115


`import logging`でlevelをDEBUGにしているのですが、  
自分で仕込んだエラー  
`logging.debug('hogehoge')`  
しか拾ってくれず、例えば、Pythonの方で発生した  
`UnicodeEncodeError: 'cp932' codec can't encode character '\u202c' in position
913: illegal multibyte sequence`  
のようなものは拾ってくれません。  
どのようにすべきでしょうか。

**実行環境**

  * Windows 10
  * Python 3.7


CC BY-SA 4.0
2020-09-03T12:10:31.880
70107
2020-09-03T16:41:12.313
12457
question
python logging
PythonのloggingでERRORを出力する方法


これらの記事のように、例外が起きそうな処理を`try: except:`で囲んで、発生した例外情報を元に自分で出力することになります。  
[【Python】logging でStackTrace(スタックトレース)をログ出力する方法 |
備忘録](https://ryoz001.com/1424.html)

>
[code]

>     try:
>         【例外が発生しそうな処理】
>     except Exception as e:
>         logging.error(【任意のメッセージ】, exc_info=True)
>  
[/code]

[Print exception with stack trace to
file](https://stackoverflow.com/q/31636884/9014308)  
回答の以下の部分`1/0`で0除算の例外になる。

>
[code]

>     import logging
>     from logging.handlers import RotatingFileHandler
>     import traceback
>  
>     logger = logging.getLogger("Rotating Log")
>     logger.setLevel(logging.ERROR)
>     handler = RotatingFileHandler("log.txt", maxBytes=10000, backupCount=5)
>     formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s -
> %(message)s')
>     handler.setFormatter(formatter)
>     logger.addHandler(handler)
>     try:
>         1/0
>     except Exception as e:
>         logger.error(str(e))
>         logger.error(traceback.format_exc())
>  
[/code]


CC BY-SA 4.0
2020-09-03T16:41:12.313
70115
2020-09-03T16:41:12.313
26370
70107
answer