​获取阿里云同一账号下多个bucket容量的脚本

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介:

执行脚本前的准备工作请移步:http://chenx1242.blog.51cto.com/10430133/1968378 这篇文章里看,下面就是完整的脚本内容。


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
#这个脚本需要python 2.7+版本
 
from  aliyunsdkcore  import  client
from  aliyunsdkcms.request.v20170301  import  QueryMetricListRequest
import  time,re,os,datetime
 
oss_list = [ 'lechangecloud' , 'lechangecloud-public' , 'lechangehls' , 'online-sz-private' , 'online-sz-public' , 'lechangecloud-public2' ]         #这里就是云存储bucket的列表
 
def  gettodayoss(oss):
         global  today_lechangecloud_GB
         clt  =  client.AcsClient( '这里填写ak' , '这里填写sk' , '这里填写对应的区域' )
         request  =  QueryMetricListRequest.QueryMetricListRequest()
         request.set_accept_format( 'json' )
         request.set_Project( 'acs_oss' )
         request.set_Metric( 'MeteringStorageUtilization' )
         today_time  =  time.strftime( '%Y-%m-%d' + " 04:00:00"
         timestamp_today  =  int (time.mktime(time.strptime(today_time,  "%Y-%m-%d %H:%M:%S" )))  *  1000
         request.set_StartTime(timestamp_today)
         request.set_Dimensions( "{\'BucketName\':" +  oss  + "}" )
         request.set_Period( '3600' )
         result  =  clt.do_action_with_exception(request)
         #print result
         storage  =  int (re.split( '"|}|:' ,result)[ 34 ])
         today_lechangecloud_GB  =  ( '%.2f'  % (storage / float ( 1073741824 )))
         print  oss + "在" + today_time + "的容量大小是:" + today_lechangecloud_GB + "GB。"
 
def  getyesterdayoss(oss):
         global  yes_lechangecloud_GB
         clt  =  client.AcsClient( '这里填写ak' , '这里填写sk' , '这里填写对应的区域' )
         request  =  QueryMetricListRequest.QueryMetricListRequest()
         request.set_accept_format( 'json' )
         request.set_Project( 'acs_oss' )
         request.set_Metric( 'MeteringStorageUtilization' )
         now_time  =  datetime.datetime.now()
         yes_time =  now_time  +  datetime.timedelta(days = - 1 )
         yes_time_start  =  yes_time.strftime( '%Y-%m-%d' ) + " 04:00:00"
         #yes_time_end = yes_time.strftime('%Y-%m-%d')+" 10:00:00"
         timestamp_yesterday_start  =  int (time.mktime(time.strptime(yes_time_start,  "%Y-%m-%d %H:%M:%S" )))  *  1000
         #timestamp_yesterday_end = int(time.mktime(time.strptime(yes_time_end, "%Y-%m-%d %H:%M:%S"))) * 1000
         request.set_StartTime(timestamp_yesterday_start)
         #request.set_EndTime(timestamp_yesterday_end)
         request.set_Dimensions( "{\'BucketName\':" +  oss  + "}" )
         request.set_Period( '3600' )
         yes_result  =  clt.do_action_with_exception(request)
         #print yes_result
         yes_storage  =  int (re.split( '"|}|:' ,yes_result)[ 34 ])
         yes_lechangecloud_GB  =  ( '%.2f'  % (yes_storage / float ( 1073741824 )))
         print  oss + "在" + yes_time_start + "的容量大小是:" + yes_lechangecloud_GB + "GB。"
 
def  getdiff(oss):
         diff  =  float (today_lechangecloud_GB)  -  float (yes_lechangecloud_GB)
         print  "今天与昨天同一时间的云存储差值是" + str (diff) + "GB。"
 
if  __name__  = =  "__main__" :
         for  oss  in  oss_list:
                 oss  =  "'%s'" % oss
                 gettodayoss(oss)
                 getyesterdayoss(oss)
                 getdiff(oss)
print ( "整个脚本执行结束,感谢您的使用!" )


执行效果如下:

wKioL1nMakPjfPapAAKWBp6JSPc022.png


新的知识点!

1)python获取今天日期的方法:

1
2
3
4
5
>>>  import  time
>>> time.strftime( '%Y-%m-%d' )
'2017-09-28'
>>>  type (time.strftime( '%Y-%m-%d' ))
< type  'str' >

2)python获取昨天的日期的办法:

1
2
3
4
5
6
7
8
>>>  import  datetime
>>> now_time  =  datetime.datetime.now()
>>> yes_time  =  now_time  +  datetime.timedelta(days = - 1 )
>>> yes_time_nyr  =  yes_time.strftime( '%Y-%m-%d' )
>>>  print  (yes_time_nyr)
2017 - 09 - 27
>>>  type (yes_time_nyr)
< type  'str' >

3)在 if __name__ == "__main__" 这一步的时候,我添加了一句 oss = "'%s'"%oss ,这是因为如果不加这句话,那么传递给阿里云的bucket名称格式不正确,正常的格式应该是:

1
{ 'BucketName' : 'lechangecloud' }


不加这句话,得到的格式是缺少单引号的:

1
{ 'BucketName' :lechangecloud}



最后的最后,如果您觉得本文对您升职加薪有帮助,那么请不吝赞助之手,刷一下下面的二维码,赞助本人继续写更多的博文!

wKioL1l16m3BMYDKAACPHEqd55Q687.jpg


 本文转自 苏幕遮618 51CTO博客,原文链接:http://blog.51cto.com/chenx1242/1969364


相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
相关文章
|
5月前
|
弹性计算 Java PHP
新手用户注册阿里云账号、实名认证、购买云服务器图文教程参考
对于初次购买阿里云产品的用户来说,第一步要做的是注册账号并完成实名认证,然后才是购买阿里云服务器或者其他云产品,本文为大家以图文形式展示一下新手用户从注册阿里云账号、实名认证到购买云服务器完整详细教程,以供参考。
新手用户注册阿里云账号、实名认证、购买云服务器图文教程参考
|
2月前
|
机器学习/深度学习 存储 分布式计算
机器学习PAI常见问题之DLC的数据写入到另外一个阿里云主账号的OSS中如何解决
PAI(平台为智能,Platform for Artificial Intelligence)是阿里云提供的一个全面的人工智能开发平台,旨在为开发者提供机器学习、深度学习等人工智能技术的模型训练、优化和部署服务。以下是PAI平台使用中的一些常见问题及其答案汇总,帮助用户解决在使用过程中遇到的问题。
|
9天前
|
运维 监控 关系型数据库
Serverless 应用引擎产品使用之在阿里云函数计算(FC)中,要访问另一个账号的rds配置rds的白名单如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
25 0
|
16天前
|
敏捷开发 Devops 测试技术
云效产品使用常见问题之不知道每次登录是否会记录在阿里云账号的登录日志中如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
4月前
|
监控 数据安全/隐私保护
基于钉钉的阿里云管理实践(一)之账号绑定
在企业日常运营中,通常都需要对阿里云的资源进行管理,对云资源的运行情况进行监控。而钉钉作为一款企业内部沟通协作工具,其与阿里云的结合使用能够提升企业管理效率,实现资源统一管理。 本教程将指导您如何将钉钉账号与阿里云账号进行绑定,以便于更高效地进行资源管理和接收监控告警。
139 0
|
5月前
|
数据采集 DataWorks 数据安全/隐私保护
有没有方式可以实现dataworks数据迁移(从阿里云一个账号迁移到另外一个账号)?
有没有方式可以实现dataworks数据迁移(从阿里云一个账号迁移到另外一个账号)?
83 0
|
5月前
|
数据库 数据安全/隐私保护
在阿里云中,访问控制(Resource Access Management,简称RAM)是权限管理系统,主要用于控制账号在阿里云中
在阿里云中,访问控制(Resource Access Management,简称RAM)是权限管理系统,主要用于控制账号在阿里云中
523 3
|
6天前
|
存储 弹性计算 固态存储
阿里云服务器CPU内存配置详细指南,如何选择合适云服务器配置?
阿里云服务器配置选择涉及CPU、内存、公网带宽和磁盘。个人开发者或中小企业推荐使用轻量应用服务器或ECS经济型e实例,如2核2G3M配置,适合低流量网站。企业用户则应选择企业级独享型ECS,如通用算力型u1、计算型c7或通用型g7,至少2核4G配置,公网带宽建议5M,系统盘可选SSD或ESSD云盘。选择时考虑实际应用需求和性能稳定性。
103 6
|
8天前
|
域名解析 弹性计算 Linux
阿里云购买云服务器、注册域名、备案及绑定图文教程参考
本文为大家介绍了2024年购买阿里云服务器和注册域名,绑定以及备案的教程,适合需要在阿里云购买云服务器、注册域名并备案的用户参考,新手用户可通过此文您了解在从购买云服务器到完成备案的流程。
阿里云购买云服务器、注册域名、备案及绑定图文教程参考
|
2天前
|
弹性计算
阿里云服务器多少钱一年?2024年5月云服务器价格表曝光!
2024年5月,阿里云服务器价格曝光,ECS云服务器2核2G3M带宽低至99元/年,2核4G5M优惠价199元/年。香港轻量服务器24元/月,4核8G服务器700元/年。其他配置如8核32G也有不同优惠。详细价格表及活动信息见阿里云服务器ECS页面

热门文章

最新文章