Ibm cloud infrastructure 如何知道标记SoftLayer资源所需的密钥名?

Ibm cloud infrastructure 如何知道标记SoftLayer资源所需的密钥名?,ibm-cloud-infrastructure,Ibm Cloud Infrastructure,我想以编程方式标记给定id和类型的资源。它可能是SoftLayer\u Virtual\u来宾或任何其他可标记资源,这无关紧要。 SoftLayer_Tag/setTag api将标记名、键名和资源id作为参数。那么,在哪里可以找到标记给定资源类型的键名?我知道我可以使用SoftLayer_标记/getAllTagTypes获取所有标记类型,但是如何将键名与我需要标记的资源类型关联起来?这张地图有记录吗?我是否可以利用一些api?没有办法从设备中检索相同的keyName值,唯一的办法是在脚本或代

我想以编程方式标记给定id和类型的资源。它可能是SoftLayer\u Virtual\u来宾或任何其他可标记资源,这无关紧要。
SoftLayer_Tag/setTag api将标记名、键名和资源id作为参数。那么,在哪里可以找到标记给定资源类型的键名?我知道我可以使用SoftLayer_标记/getAllTagTypes获取所有标记类型,但是如何将键名与我需要标记的资源类型关联起来?这张地图有记录吗?我是否可以利用一些api?

没有办法从设备中检索相同的keyName值,唯一的办法是在脚本或代码中使用条件,例如,如果您使用来检索虚拟服务器,那么您应该在请求中放入GUEST,如下所示:

https://$user:$apiKey@api.softlayer.com/rest/v3/SoftLayer_Tag/setTags
Method: Post

{  
   "parameters":[  
      "tag1,tag2",
      "GUEST",
      29756959
   ]
}
现在,如果您正在使用检索资源列表,那么您可以知道,在这种情况下,您可以使用条件if,例如:

for item in items:
    resourceId = item['resource']['id']
    if item['resourceType'] == "SoftLayer_Hardware":
        keyName = "HARDWARE"
    if item['resourceType'] == "SoftLayer_Network_Vlan_Firewall":
        keyName = "NETWORK_VLAN_FIREWALL"
    .....
    .....

    result = client['Tag'].setTag("tag1,tag2", keyName, resourceId)
我认为下表目前可以帮助您设置正确的键名

+----------------------+------------------------------------------------------+---------------------------------+ | Object or Device | Resource or Datatype | SoftLayer_Tag::getAllTagTypes | | | | (keyName) | +----------------------+------------------------------------------------------+---------------------------------+ | Bare Metal Server | SoftLayer_Hardware_Server | HARDWARE | | Gateway Member | SoftLayer_Hardware (networkGatewayMemberFlag = true) | HARDWARE | | Virtual Server | SoftLayer_Virtual_Guest | GUEST | | Ticket | SoftLayer_Ticket | TICKET | | FireWall (Dedicated) | SoftLayer_Network_Vlan_Firewall | NETWORK_VLAN_FIREWALL | | Images | SoftLayer_Virtual_Guest_Block_Device_Template_Group | IMAGE_TEMPLATE | | NetScalers | SoftLayer_Network_Application_Delivery_Controller | APPLICATION_DELIVERY_CONTROLLER | | Vlans | SoftLayer_Network_Vlan | NETWORK_VLAN | | Dedicated Hosts | SoftLayer_Virtual_DedicatedHost | DEDICATED_HOST | +----------------------+------------------------------------------------------+---------------------------------+ +----------------------+------------------------------------------------------+---------------------------------+ |对象或设备|资源或数据类型|软件层|标记::getAllTagTypes| || |(关键字名称)| +----------------------+------------------------------------------------------+---------------------------------+ |裸机服务器| |硬件| |网关成员|(networkGatewayMemberFlag=true)|硬件| |虚拟服务器| |来宾| |票| |防火墙(专用)| |网络| VLAN |防火墙| |图像| |图像|模板| |NetScalers | |应用程序|交付|控制器| |VLAN | |网络| VLAN| |专用主机| |专用主机| +----------------------+------------------------------------------------------+---------------------------------+ 一些链接: