code: func (c *Cloud) GetAzureDiskLabels(diskURI string) (map[string]string, error) {
  	// Get disk's resource group.
  	diskName := path.Base(diskURI)
  	resourceGroup, err := getResourceGroupFromDiskURI(diskURI)
  	if err != nil {
  		klog.Errorf("Failed to get resource group for AzureDisk %q: %v", diskName, err)
  		return nil, err
  	}
  
  	// Get information of the disk.
  	ctx, cancel := getContextWithCancel()
  	defer cancel()
  	disk, err := c.DisksClient.Get(ctx, resourceGroup, diskName)
  	if err != nil {
  		klog.Errorf("Failed to get information for AzureDisk %q: %v", diskName, err)
  		return nil, err
  	}
  
  	// Check whether availability zone is specified.
  	if disk.Zones == nil || len(*disk.Zones) == 0 {
  		klog.V(4).Infof("Azure disk %q is not zoned", diskName)
  		return nil, nil
  	}
  
  	zones := *disk.Zones
  	zoneID, err := strconv.Atoi(zones[0])
  	if err != nil {
  		return nil, fmt.Errorf("failed to parse zone %v for AzureDisk %v: %v", zones, diskName, err)
  	}
  
  	zone := c.makeZone(zoneID)
  	klog.V(4).Infof("Got zone %q for Azure disk %q", zone, diskName)
  	labels := map[string]string{
  		v1.LabelZoneRegion:        c.Location,
  		v1.LabelZoneFailureDomain: zone,
  	}
  	return labels, nil
  }
docs: // GetAzureDiskLabels gets availability zone labels for Azuredisk.