Skip to content

Instantly share code, notes, and snippets.

View drohr's full-sized avatar

David Röhr drohr

  • Stockholm, Sweden
View GitHub Profile
@drohr
drohr / s3size.py
Last active May 3, 2018 06:51
Hack to fetch all bucket sizes in S3
from datetime import timedelta, datetime
import math
import boto3
cloudwatch = boto3.client('cloudwatch')
s3 = boto3.resource('s3')
def get_bucket_size(bucket):
try:
return cloudwatch.get_metric_statistics(
@drohr
drohr / bucketsize.sh
Created December 9, 2015 06:38
calculate bucket size
#!/bin/sh
BUCKET=$1
aws cloudwatch get-metric-statistics --namespace AWS/S3 --start-time 2015-12-07T10:00:00 --end-time 2015-12-08T01:00:00 --period 86400 --statistics Average --region eu-west-1 --metric-name BucketSizeBytes --dimensions Name=BucketName,Value=$BUCKET Name=StorageType,Value=StandardStorage
@drohr
drohr / ec2tags.rb
Created February 27, 2013 15:29
Hack to get ec2 tags to facter.
require 'facter'
instance_id = Facter::Util::Resolution.exec("ec2-metadata -i | awk '{print $2}'")
tags = Facter::Util::Resolution.exec("ec2-describe-tags --region eu-west-1 --filter \"resource-id=#{instance_id}\" | cut -f 4-")
tags.scan(/(\w+)\s+(\w+)/) do |key, value|
fact = "ec2_tag_#{key}"
Facter.add(fact) { setcode { value } }
end
@drohr
drohr / bloom_filter_calc.py
Created January 7, 2013 15:45
Script to calculate bloom filter size on a Cassandra Node
#!/usr/bin/env python
import shlex
import subprocess
def main():
cmd = '/usr/bin/nodetool -h localhost cfstats'
p = subprocess.Popen(shlex.split(cmd), stdout = subprocess.PIPE)
out = p.communicate()[0]
@drohr
drohr / gist:3786979
Created September 26, 2012 09:20
get fabric role from ip
def _get_role(ip):
role = [k for k, v in env.roledefs.iteritems() if ip in v]
return role[0]