Advertisement
s4ros

Datastore Collector

Oct 12th, 2016
250
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.74 KB | None | 0 0
  1. import diamond.collector
  2. import datetime
  3. import os
  4.  
  5. class DatastoreCollector(diamond.collector.Collector):
  6. #class DatastoreCollector(object):
  7.  
  8.   def get_size(self):
  9.     now = datetime.datetime.now()
  10.     start_path = '/opt/ang/var/datastore/ang/data/daily/' + now.strftime("%Y/%m")+''
  11.     total_size = 0
  12.     for dirpath, dirnames, filenames in os.walk(start_path, topdown=True, followlinks=False):
  13.       for f in filenames:
  14.         fp = os.path.join(dirpath, f)
  15.         if not os.path.islink(fp):
  16.           total_size += os.path.getsize(fp)
  17.     return total_size
  18.  
  19.   def collect(self):
  20.     metric_name = "size"
  21.     self.publish(metric_name,self.get_size())
  22.  
  23. if __name__ == "__main__":
  24.   ds = DatastoreCollector()
  25.   print ds.get_size()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement