调用ListTagResources接口列出资源标签。
前提条件
您已完成以下操作:
参数说明
def list_tag_resources(self, resource_type, resource_id, **filer_tags):
请求参数
名称 | 类型 | 是否必填 | 描述 | 示例值 |
名称 | 类型 | 是否必填 | 描述 | 示例值 |
resource_type | String | 是 | 资源的类型。支持如下5种:
| project |
resource_id | String | 否 | 资源ID。 如果resource_type为
resource_id与 filer_tags应至少配置一个。 | ali-test-project |
filer_tags | Dictionary | 否 | 用于过滤查询的标签键值对,最多设置 20 个键值对。 resource_id与 filer_tags应至少配置一个。 | {'key1': 'value1'} |
返回参数
返回参数说明,请参见ListTagResources - 列出资源标签。
示例代码
from aliyun.log import LogClient
import os
# 日志服务的服务接入点
endpoint = "cn-hangzhou.log.aliyuncs.com"
# 本示例从环境变量中获取AccessKey ID和AccessKey Secret
accessKeyId = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID', '')
accessKey = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET', '')
# 初始化日志服务客户端
client = LogClient(endpoint, accessKeyId, accessKey)
def get_resource_tags():
all_tags = set()
for response in client.list_tag_resources(resource_type, resource_id, **filer_tags):
all_tags.update(response.get_tags())
return all_tags
if __name__ == '__main__':
project_name = "proj-test"
logstore_name = "logstore-test"
# 获取project的标签
resource_type = 'project'
resource_id = ''
filer_tags = {'proj1': 'v1'}
tags = get_resource_tags()
for tag in tags:
print(f"resource_id: {tag.get_resource_id()}, Tag Key: {tag.get_tag_key()}, Tag Value: {tag.get_tag_value()}")
# 获取logstore的标签
# resource_type = 'logstore'
# resource_id = project_name + '#' + logstore_name
# filer_tags = {}
# tags = get_resource_tags()
# for tag in tags:
# print(f"resource_id: {tag.get_resource_id()}, Tag Key: {tag.get_tag_key()}, Tag Value: {tag.get_tag_value()}")
示例返回结果
resource_id: proj-test, Tag Key: proj1, Tag Value: v1
Process finished with exit code 0
相关文档
该文章对您有帮助吗?
- 本页导读 (1)
- 前提条件
- 参数说明
- 请求参数
- 返回参数
- 示例代码
- 示例返回结果
- 相关文档