2017-07-16 7 views
1

私は、Pythonのロギングモジュールと等しい連続したメッセージをバンドルしたいと思います。 このようにして、何千ものメッセージが混在する巨大なログファイルを防ぎたいのです。代わりに、ログは、たとえば、第1、第2、第3、第10、第50、第100、第500、...ロガーに異なるメッセージが送信されるまでの時間。Pythonロギング:バンドルの再呼び出しメッセージ

これはloggingモジュールでどのように達成できますか?ここで

は例です。これに代えて

2017-07-16 16:00:00 INFO: File upload initiated 
2017-07-16 16:01:00 ERROR: I/O Error: no route to host 
2017-07-16 16:02:00 ERROR: I/O Error: no route to host 
2017-07-16 16:03:00 ERROR: I/O Error: no route to host 
2017-07-16 16:04:00 ERROR: I/O Error: no route to host 
2017-07-16 16:05:00 ERROR: I/O Error: no route to host 
... [169 more lines] 
2017-07-16 18:54:00 ERROR: I/O Error: no route to host 
2017-07-16 18:55:00 ERROR: I/O Error: no route to host 
2017-07-16 18:56:00 INFO: File upload started 

私は例えば、彼らがどのような方法で、バンドルになりたい:

2017-07-16 16:00:00 INFO: File upload initiated 
2017-07-16 16:01:00 ERROR: I/O Error: no route to host 
2017-07-16 16:02:00 ERROR: I/O Error: no route to host 
2017-07-16 16:03:00 ERROR: I/O Error: no route to host 
2017-07-16 16:13:00 ERROR (repeated 10x): I/O Error: no route to host 
2017-07-16 17:03:00 ERROR (repeated 50x): I/O Error: no route to host 
2017-07-16 18:43:00 ERROR (repeated 100x): I/O Error: no route to host 
2017-07-16 18:55:00 ERROR (repeated 12x): I/O Error: no route to host 
2017-07-16 18:56:00 INFO: File upload started 
+0

これを実装するには[logger adapter](https://docs.python.org/3/library/logging.html#loggeradapter-objects)を使用できますが、どのように把握するのでしょうかあなたは同じログラインを増やすつもりですか? – jonrsharpe

答えて

0

だから私はLoggerクラスを拡張することになりました希望の機能を自分で追加します。

コードについてはgithub repositoryにアクセスしてください。

関連する問題