docs: def getName(obj):
      """This method finds the first parent class which is within the buildbot namespace
      it prepends the name with as many ">" as the class is subclassed
      """
      # elastic search does not like '.' in dict keys, so we replace by /
      def sanitize(name):
          return name.replace(".", "/")
      if isinstance(obj, _BuildStepFactory):
          klass = obj.factory
      else:
          klass = type(obj)
      name = ""
      klasses = (klass, ) + inspect.getmro(klass)
      for klass in klasses:
          if hasattr(klass, "__module__") and klass.__module__.startswith("buildbot."):
              return sanitize(name + klass.__module__ + "." + klass.__name__)
          else:
              name += ">"
      return sanitize(type(obj).__name__)