class_docstr: Mixin to add a disk logging handler to a repository. It has a cache_folder.
class_docstr_tok: ["Mixin","to","add","a","disk","logging","handler","to","a","repository",".","It","has","a","cache_folder","."]
docstr: Adds an on-disk logging handler to the repository.
  The file at this scope can be retrieved with the method :func:`get_scoped_logger_path`.
docstr_tok: ["Adds","an","on-disk","logging","handler","to","the","repository",".","The","file","at","this","scope","can","be","retrieved","with","the","method",":","func",":","`","get_scoped_logger_path","`","."]
code: def add_logging_handler(
      self, logger: NeuraxleLogger, scope: ScopedLocation
  ) -> "HyperparamsRepository":
      """
      Adds an on-disk logging handler to the repository.
      The file at this scope can be retrieved with the method :func:`get_scoped_logger_path`.
      """
      logging_file = self._create_scoped_logger_path(scope)
      logger.with_file_handler(logging_file)
      return self
  
imports: import json
  import os
  import shutil
  from copy import deepcopy
  from typing import List, Optional
  from neuraxle.logging.logging import NeuraxleLogger
  from neuraxle.metaopt.data.vanilla import BaseDataclass, DataclassHasListMixin, RootDataclass, ScopedLocation, SubDataclassT, dataclass_2_id_attr, from_json, to_json
  from neuraxle.metaopt.repositories.repo import HyperparamsRepository
label_desc: Use image node_id 2 for calling the _OnDiskRepositoryLoggerHandlerMixin obj's underlying member method code with example usage: obj.add_logging_handler(logger, scope) and returns: self