pycore.py 文件源码

python
阅读 28 收藏 0 点赞 0 评论 0

项目:sci-pype 作者: jay-johnson 项目源码 文件源码
def s3_calculate_bucket_size(self, bucket_name, debug=False):

        record          = {
                            "Size"     : 0,
                            "SizeMB"   : 0.0,
                            "SizeGB"   : 0.0,
                            "Files"    : 0 
                        }    

        results         = self.build_def_hash("Display Error", "Not Run", record)

        try:
            import boto, math
            import boto.s3

            cur_keys        = self.aws_get_keys(debug)
            conn_s3         = boto.connect_s3(cur_keys["Key"], cur_keys["Secret"])
            bucket          = conn_s3.get_bucket(bucket_name, validate=False)
            total_bytes     = 0
            for key in bucket:
                record["Size"]  += int(key.size)
                record["Files"] += 1
            # end for all keys

            record["SizeMB"]    = float(self.to_float_str(float(float(record["Size"]) / 1024.0 / 1024.0)))
            record["SizeGB"]    = float(self.to_float_str(float(float(record["SizeMB"]) / 1024.0)))

            results             = self.build_def_hash("SUCCESS", "", record)
        except Exception,w:
            self.lg("Failed to Process S3 Bucket(" + str(bucket_name) + ") Size Ex(" + str(w) + ")", 0)
            results         = self.build_def_hash("Display Error", "Not Run", record)

        return results
    # end of s3_calculate_bucket_size
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号