  def ListAvailableMetricsForResource(self, resource_id: str) -> List[str]:
    """List the available metrics for a given resource.

      Args:
        resource_id (str): The resource ID from which to list available
            metrics.

      Returns:
        List[str]: A list of metrics that can be queried for the resource ID.

      Raises:
        RuntimeError: If the resource could not be found.
    """
    try:
      return [metric.name.value for metric
              in self.monitoring_client.metric_definitions.list(resource_id)]
    except HttpResponseError as exception:
      raise RuntimeError(
          'Could not fetch metrics for resource {0:s}. Please make sure you '
          'specified the full resource ID url, i.e. /subscriptions/<>/'
          'resourceGroups/<>/providers/<>/<>/yourResourceName'.format(
              resource_id)) from exception
List the available metrics for a given resource.

Args:
resource_id (str): The resource ID from which to list available
metrics.

Returns:
List[str]: A list of metrics that can be queried for the resource ID.

Raises:
RuntimeError: If the resource could not be found.
libcloudforensics/providers/azure/internal/monitoring.py