Ejemplo n.º 1
0
    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)
Ejemplo n.º 2
0
    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)])
Ejemplo n.º 3
0
        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)])
Ejemplo n.º 4
0
    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])
Ejemplo n.º 5
0
    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)
Ejemplo n.º 6
0
    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)