def test_CeresReader_init(self): self.create_ceres('ceres.reader.tests.worker1.cpu') self.addCleanup(self.wipe_ceres) reader = CeresReader( ceres.CeresTree( self.test_dir).getNode('ceres.reader.tests.worker1.cpu'), 'ceres.reader.tests.worker1.cpu') self.assertIsNotNone(reader)
def create_ceres(self, metric): if not isdir(self.test_dir): os.makedirs(self.test_dir) tree = ceres.CeresTree(self.test_dir) options = {'timeStep': 1} tree.createNode(metric, **options) tree.store(metric, [(self.start_ts, 60)])
def create_ceres(metric): if not isdir(test_dir): os.makedirs(test_dir) tree = ceres.CeresTree(test_dir) options = {} tree.createNode(metric, **options) tree.store(metric, [(1, 60)])
def test_CeresReader_fetch(self): self.create_ceres('ceres.reader.tests.worker1.cpu') self.addCleanup(self.wipe_ceres) reader = CeresReader( ceres.CeresTree( self.test_dir).getNode('ceres.reader.tests.worker1.cpu'), 'ceres.reader.tests.worker1.cpu') (_, values) = reader.fetch(self.start_ts, self.start_ts + 1) self.assertEqual(values, [60])
def test_CeresReader_get_intervals(self): self.create_ceres('ceres.reader.tests.worker1.cpu') self.addCleanup(self.wipe_ceres) reader = CeresReader( ceres.CeresTree( self.test_dir).getNode('ceres.reader.tests.worker1.cpu'), 'ceres.reader.tests.worker1.cpu') intervals = reader.get_intervals() for interval in intervals: self.assertEqual(interval.start, self.start_ts) self.assertEqual(interval.end, self.start_ts + 1)
def __init__(self, settings): super(CeresDatabase, self).__init__(settings) self.data_dir = settings.LOCAL_DATA_DIR ceres.setDefaultNodeCachingBehavior(settings.CERES_NODE_CACHING_BEHAVIOR) ceres.setDefaultSliceCachingBehavior(settings.CERES_SLICE_CACHING_BEHAVIOR) ceres.MAX_SLICE_GAP = int(settings.CERES_MAX_SLICE_GAP) if settings.CERES_LOCK_WRITES: if ceres.CAN_LOCK: log.msg("Enabling Ceres file locking") ceres.LOCK_WRITES = True else: log.err("CERES_LOCK_WRITES is enabled but import of fcntl module failed.") self.tree = ceres.CeresTree(self.data_dir)