pythonのlogクラスについて 連続実行時に重複させない方法


logクラスの例

概要

ほかの記事で使っているログクラスを改修したことに触れていなかったのでこちらで触れておきます。
最初に出していた方法だと同じログが呼び出されるたびに出力されていたので、ユニットテストの際に重複してしまったので改修しました。

必要なもの

  • python 3.7.2

公開場所

githubで公開しいます。

使い方

ログ出力用のクラスを使ったらあとはcreateLogメソッドでログのオブジェクトを取得します。

以下のように一度作成したログと同じログの場合は作成済みのものを返却しています。

        if len(self.loggers)!=0:
            if name in self.loggers:
                # すでに作成済みなら重複して作成しないようにする
                return self.loggers[name]

作成していないものなら作成後にdictionaryに登録ます。

        self.loggers[name]=self.logger
        return self.logger