code: def get_metric_name(self):
      metric = self.params.get("metric")
      custom_metric = self.params.get("custom_eval_metric_name")
  
      if metric is None:
          return None
      if metric == "custom":
          return custom_metric
      if metric == "binary_logloss":
          return "logloss"
      elif metric == "multi_logloss":
          return "logloss"
      return metric
  
imports: import contextlib
  import copy
  import logging
  import os
  import time
  import lightgbm
  import numpy
  import pandas
  from sklearn.base import ClassifierMixin, RegressorMixin
  from supervised.algorithms.algorithm import BaseAlgorithm
  from supervised.algorithms.registry import BINARY_CLASSIFICATION, MULTICLASS_CLASSIFICATION, REGRESSION, AlgorithmsRegistry
  from supervised.utils.config import LOG_LEVEL
  from supervised.utils.metric import lightgbm_eval_metric_accuracy, lightgbm_eval_metric_average_precision, lightgbm_eval_metric_f1, lightgbm_eval_metric_pearson, lightgbm_eval_metric_r2, lightgbm_eval_metric_spearman, lightgbm_eval_metric_user_defined
label_desc: Use image node_id 10 for calling the LightgbmAlgorithm obj's underlying member method code with example usage: obj.get_metric_name() and returns: metric, None, custom_metric, str, str