class_docstr: The reference implementation of usage logger.
  
  The usage logger needs to provide the following methods:
  
      - log_success(self, class_name, name, duration, signature=None)
      - log_failure(self, class_name, name, ex, duration, signature=None)
      - log_missing(self, class_name, name, is_deprecated=False, signature=None)
docstr: Log the missing or deprecated function or property is called.
  
  :param class_name: the target class name
  :param name: the target function or property name
  :param is_deprecated: True if the function or property is marked as deprecated
  :param signature: the original function signature if the target is a function, else None
code: def log_missing(
      self,
      class_name: str,
      name: str,
      is_deprecated: bool = False,
      signature: Optional[Signature] = None,
  ) -> None:
      """
      Log the missing or deprecated function or property is called.
  
      :param class_name: the target class name
      :param name: the target function or property name
      :param is_deprecated: True if the function or property is marked as deprecated
      :param signature: the original function signature if the target is a function, else None
      """
      if self.logger.isEnabledFor(logging.INFO):
          msg = "A {deprecated} {function} `{class_name}.{name}{signature}` was called.".format(
              class_name=class_name,
              name=name,
              signature=_format_signature(signature),
              function="function"
              if signature is not None
              else "property",
              deprecated="deprecated" if is_deprecated else "missing",
          )
          self.logger.info(msg)
  
file_path: spark/python/pyspark/pandas/usage_logging/usage_logger.py
imports: from inspect import Signature
  import logging
  from typing import Any, Optional
label_desc: Use image node_id 4 for calling the PandasOnSparkUsageLogger obj's underlying member method code with example usage: obj.log_missing(class_name, name, is_deprecated, signature) without return types