def test_carbon_protocol_read(self): metric_name = 'fake.name' metric = bg_test_utils.make_metric(_METRIC_NAME) # Custom aggregator to make sure all goes right. metric.metadata.aggregator = bg_accessor.Aggregator.minimum self.accessor.create_metric(metric) self.accessor.flush() self.reader = bg_graphite.Reader( self.accessor, self.metadata_cache, self.carbonlink, metric_name ) with mock.patch('graphite.carbonlink.CarbonLinkPool.query') as carbonlink_query_mock: carbonlink_query_mock.return_value = [ (864005.0, 100.0), (864065.0, 101.0), (864125.0, 102.0) ] (start, end, step), points = self.fetch( start_time=self._POINTS_START + 3, end_time=self._POINTS_END - 3, now=self._POINTS_END + 10, ) # Check that we really have a 1sec resolution self.assertEqual(start, self._POINTS_START + 3) self.assertEqual(end, self._POINTS_END - 3) self.assertEqual(step, 1) # Check that this returns at least one value different from None. self.assertEqual(len(points), end - start) # Check that at least one point is at the correct place. self.assertEqual(points[864005 - start], 100.0)
def setUp(self): super(TestReader, self).setUp() self.accessor.connect() self.accessor.create_metric(self._METRIC) self.accessor.insert_points(self._METRIC, self._POINTS) self.accessor.flush() self.finder = bg_graphite.Finder( accessor=self.accessor, metadata_cache=self.metadata_cache, ) self.carbonlink = self.finder.carbonlink() self.reader = bg_graphite.Reader(self.accessor, self.metadata_cache, self.carbonlink, _METRIC_NAME)
def setUp(self): super(TestReader, self).setUp() self.accessor.connect() self.accessor.create_metric(self._METRIC) self.accessor.insert_points(self._METRIC, self._POINTS) self.accessor.flush() self.finder = bg_graphite.Finder(accessor=self.accessor, metadata_cache=self.metadata_cache) # Make sure that carbonlink is enabled. from django.conf import settings as django_settings django_settings.CARBONLINK_HOSTS = ["localhost:12345"] self.carbonlink = self.finder.carbonlink() self.reader = bg_graphite.Reader(self.accessor, self.metadata_cache, self.carbonlink, _METRIC_NAME)