code: def initialize(
      self,
      runs_collection,
      fs,
      overwrite=None,
      metrics_collection=None,
      failure_dir=None,
      priority=DEFAULT_MONGO_PRIORITY,
  ):
      self.runs = runs_collection
      self.metrics = metrics_collection
      self.fs = fs
      if overwrite is not None:
          overwrite = int(overwrite)
          run = self.runs.find_one({"_id": overwrite})
          if run is None:
              raise RuntimeError(
                  "Couldn't find run to overwrite with "
                  "_id='{}'".format(overwrite)
              )
          else:
              overwrite = run
      self.overwrite = overwrite
      self.run_entry = None
      self.priority = priority
      self.failure_dir = failure_dir
  
imports: from typing import Optional, Union
  import mimetypes
  import os.path
  import pickle
  import re
  import sys
  import time
  from tempfile import NamedTemporaryFile
  import warnings
  import sacred.optional
  from sacred.commandline_options import cli_option
  from sacred.dependencies import get_digest
  from sacred.observers.base import RunObserver
  from sacred.observers.queue import QueueObserver
  from sacred.serializer import flatten
  from sacred.utils import ObserverError, PathType
  import pkg_resources
label_desc: Use image node_id 3 for calling the MongoObserver obj's underlying member method code with example usage: obj.initialize(runs_collection, fs, overwrite, metrics_collection, failure_dir, priority) without return types