| 123456789101112131415161718192021222324252627282930313233343536373839 |
- from datetime import datetime
- from resource.enums.region import Region
- from resource.service.FeiShuService import FeiShuService
- from resource.service.KVStoreService import KVStoreService
- kv_store_service = KVStoreService()
- fei_shu_service = FeiShuService()
- # fei_shu_spread_sheet_token = "XzQGsheQzhk74rtknKacClASnTc"
- # fei_shu_sheet_id = "25dce4"
- #
- # tenant_access_token = fei_shu_service.get_tenant_access_token("cli_a89702999f3c900b", "47ewnaxRqJAvHYdUR8idHgfzfeqAu0Pz")
- def main():
- all_instances = kv_store_service.get_all_instance(region=Region.HANG_ZHOU)
- for instance in all_instances:
- dt = datetime.now().strftime('%Y-%m-%d')
- instance_id = instance.instance_id # 实例ID
- instance_name = instance.instance_name # 实例名
- instance_status = instance.instance_status # 实例状态
- instance_type = instance.instance_type # 实例类型
- zone_id = instance.zone_id # 可用区ID
- architecture_type = instance.architecture_type # 架构类型
- engine_version = instance.engine_version # 兼容的Redis版本
- charge_type = instance.charge_type # 付费类型
- capacity = instance.capacity / 1024 # 容量
- values = [[dt, zone_id, instance_id, instance_name, instance_status, instance_type, architecture_type, engine_version, charge_type, capacity]]
- # fei_shu_service.spreadsheet_values_prepend(tenant_access_token, fei_shu_spread_sheet_token, f"{fei_shu_sheet_id}!A2:J2", values)
- instance_attribute = kv_store_service.describe_instance_attribute(instance_id, Region.HANG_ZHOU)
- storage = instance_attribute.storage
- availability_value = instance_attribute.availability_value
- print(f"{instance_id} --> {storage} --> {availability_value}")
- if __name__ == "__main__":
- main()
|