)]}'
{"ceilometer/api/controllers/v2.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4d90ef091557be701d88837e6c81eaa65dc50c3f","unresolved":false,"context_lines":[{"line_number":967,"context_line":""},{"line_number":968,"context_line":"        return samples"},{"line_number":969,"context_line":""},{"line_number":970,"context_line":"    @wsme_pecan.wsexpose([Statistics], [Query], [unicode], int, [Aggregate])"},{"line_number":971,"context_line":"    def statistics(self, q\u003dNone, groupby\u003dNone, period\u003dNone, aggregate\u003dNone):"},{"line_number":972,"context_line":"        \"\"\"Computes the statistics of the samples in the time range given."},{"line_number":973,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8c0949_b7351148","line":970,"updated":"2014-10-30 19:41:47.000000000","message":"This was also checking statistics:\n\nhttps://review.openstack.org/#/c/130854/2/ceilometer/api/controllers/v2.py","commit_id":"ebad8cbec418c1f6eafccbd2bb995bd6bbb12bd4"},{"author":{"_account_id":10608,"name":"Matthew Edmonds","email":"edmondsw@us.ibm.com","username":"edmondsw"},"change_message_id":"2d052d02247ce8acdff16778c8b7188edb27e18d","unresolved":false,"context_lines":[{"line_number":967,"context_line":""},{"line_number":968,"context_line":"        return samples"},{"line_number":969,"context_line":""},{"line_number":970,"context_line":"    @wsme_pecan.wsexpose([Statistics], [Query], [unicode], int, [Aggregate])"},{"line_number":971,"context_line":"    def statistics(self, q\u003dNone, groupby\u003dNone, period\u003dNone, aggregate\u003dNone):"},{"line_number":972,"context_line":"        \"\"\"Computes the statistics of the samples in the time range given."},{"line_number":973,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8c0949_f7da39e8","line":970,"in_reply_to":"7a8c0949_b7351148","updated":"2014-10-30 19:51:13.000000000","message":"yes, will need to do similar here. Good catch.","commit_id":"ebad8cbec418c1f6eafccbd2bb995bd6bbb12bd4"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4d90ef091557be701d88837e6c81eaa65dc50c3f","unresolved":false,"context_lines":[{"line_number":1065,"context_line":"    def _lookup(self, meter_name, *remainder):"},{"line_number":1066,"context_line":"        return MeterController(meter_name), remainder"},{"line_number":1067,"context_line":""},{"line_number":1068,"context_line":"    @wsme_pecan.wsexpose([Meter], [Query])"},{"line_number":1069,"context_line":"    def get_all(self, q\u003dNone):"},{"line_number":1070,"context_line":"        \"\"\"Return all known meters, based on the data recorded so far."},{"line_number":1071,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8c0949_374921d1","line":1068,"updated":"2014-10-30 19:41:47.000000000","message":"How about this?","commit_id":"ebad8cbec418c1f6eafccbd2bb995bd6bbb12bd4"},{"author":{"_account_id":10608,"name":"Matthew Edmonds","email":"edmondsw@us.ibm.com","username":"edmondsw"},"change_message_id":"2d052d02247ce8acdff16778c8b7188edb27e18d","unresolved":false,"context_lines":[{"line_number":1065,"context_line":"    def _lookup(self, meter_name, *remainder):"},{"line_number":1066,"context_line":"        return MeterController(meter_name), remainder"},{"line_number":1067,"context_line":""},{"line_number":1068,"context_line":"    @wsme_pecan.wsexpose([Meter], [Query])"},{"line_number":1069,"context_line":"    def get_all(self, q\u003dNone):"},{"line_number":1070,"context_line":"        \"\"\"Return all known meters, based on the data recorded so far."},{"line_number":1071,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8c0949_f78879c8","line":1068,"in_reply_to":"7a8c0949_374921d1","updated":"2014-10-30 19:51:13.000000000","message":"Don\u0027t think we need anything here. This just let\u0027s you list what meters there are. Doesn\u0027t give you access to the data of those meters.","commit_id":"ebad8cbec418c1f6eafccbd2bb995bd6bbb12bd4"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"1810233d7149eaeae9ed097e1aefd414b04234b9","unresolved":false,"context_lines":[{"line_number":989,"context_line":""},{"line_number":990,"context_line":"        kwargs \u003d _query_to_kwargs(q, storage.SampleFilter.__init__)"},{"line_number":991,"context_line":"        kwargs[\u0027meter\u0027] \u003d self.meter_name"},{"line_number":992,"context_line":"        if self.meter_name in (\u0027http.request\u0027, \u0027http.response\u0027):"},{"line_number":993,"context_line":"            # Audit data is sensitive and needs additional restrictions"},{"line_number":994,"context_line":"            usr_limit, proj_limit \u003d acl.get_limited_to(pecan.request.headers)"},{"line_number":995,"context_line":"            if usr_limit and proj_limit:"}],"source_content_type":"text/x-python","patch_set":2,"id":"7a8c0949_881aa46c","line":992,"updated":"2014-10-31 15:03:26.000000000","message":"Can\u0027t we pull this common code into a utility method so we don\u0027t have to copy/paste it?","commit_id":"e2fb513d16630859816e12cbe8133cb146a4b9d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"1810233d7149eaeae9ed097e1aefd414b04234b9","unresolved":false,"context_lines":[{"line_number":1078,"context_line":"    def _lookup(self, meter_name, *remainder):"},{"line_number":1079,"context_line":"        return MeterController(meter_name), remainder"},{"line_number":1080,"context_line":""},{"line_number":1081,"context_line":"    @wsme_pecan.wsexpose([Meter], [Query])"},{"line_number":1082,"context_line":"    def get_all(self, q\u003dNone):"},{"line_number":1083,"context_line":"        \"\"\"Return all known meters, based on the data recorded so far."},{"line_number":1084,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7a8c0949_4810bc4e","line":1081,"updated":"2014-10-31 15:03:26.000000000","message":"What about this one?","commit_id":"e2fb513d16630859816e12cbe8133cb146a4b9d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"5db08c8db6921dc2819e041f9657d4a6fa24e105","unresolved":false,"context_lines":[{"line_number":881,"context_line":""},{"line_number":882,"context_line":"    def _get_restrictions(self):"},{"line_number":883,"context_line":"        restrictions \u003d {}"},{"line_number":884,"context_line":"        if self.meter_name in (\u0027http.request\u0027, \u0027http.response\u0027):"},{"line_number":885,"context_line":"            # Audit data is sensitive and needs additional restrictions"},{"line_number":886,"context_line":"            usr_limit, proj_limit \u003d acl.get_limited_to(pecan.request.headers)"},{"line_number":887,"context_line":"            if usr_limit and proj_limit:"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_8fbcbe07","line":884,"updated":"2014-11-25 16:37:45.000000000","message":"Is it possible to change the meter name and bypass this check?","commit_id":"cbb9ec771a10f85fd35fce41c7214b21519c5516"},{"author":{"_account_id":10608,"name":"Matthew Edmonds","email":"edmondsw@us.ibm.com","username":"edmondsw"},"change_message_id":"fe5f09cd1684669b26d92e710016d145ad2b0b59","unresolved":false,"context_lines":[{"line_number":881,"context_line":""},{"line_number":882,"context_line":"    def _get_restrictions(self):"},{"line_number":883,"context_line":"        restrictions \u003d {}"},{"line_number":884,"context_line":"        if self.meter_name in (\u0027http.request\u0027, \u0027http.response\u0027):"},{"line_number":885,"context_line":"            # Audit data is sensitive and needs additional restrictions"},{"line_number":886,"context_line":"            usr_limit, proj_limit \u003d acl.get_limited_to(pecan.request.headers)"},{"line_number":887,"context_line":"            if usr_limit and proj_limit:"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_d609ff95","line":884,"in_reply_to":"5a890539_8fbcbe07","updated":"2014-11-25 18:43:19.000000000","message":"No, these meter names are hardcoded in pycadf/middleware/notifier.py","commit_id":"cbb9ec771a10f85fd35fce41c7214b21519c5516"},{"author":{"_account_id":10608,"name":"Matthew Edmonds","email":"edmondsw@us.ibm.com","username":"edmondsw"},"change_message_id":"c34c83c17897936fb63234382c8a28008c532ba5","unresolved":false,"context_lines":[{"line_number":881,"context_line":""},{"line_number":882,"context_line":"    def _get_restrictions(self):"},{"line_number":883,"context_line":"        restrictions \u003d {}"},{"line_number":884,"context_line":"        if self.meter_name in (\u0027http.request\u0027, \u0027http.response\u0027):"},{"line_number":885,"context_line":"            # Audit data is sensitive and needs additional restrictions"},{"line_number":886,"context_line":"            usr_limit, proj_limit \u003d acl.get_limited_to(pecan.request.headers)"},{"line_number":887,"context_line":"            if usr_limit and proj_limit:"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_d95bef83","line":884,"in_reply_to":"5a890539_d609ff95","updated":"2014-11-25 19:40:37.000000000","message":"I should have said pycadf/middleware/notifier.py and ceilometer/middleware.py","commit_id":"cbb9ec771a10f85fd35fce41c7214b21519c5516"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"931e704f7054af506c91c266317fd1b43219a5aa","unresolved":false,"context_lines":[{"line_number":1079,"context_line":"    def _lookup(self, meter_name, *remainder):"},{"line_number":1080,"context_line":"        return MeterController(meter_name), remainder"},{"line_number":1081,"context_line":""},{"line_number":1082,"context_line":"    @wsme_pecan.wsexpose([Meter], [Query])"},{"line_number":1083,"context_line":"    def get_all(self, q\u003dNone):"},{"line_number":1084,"context_line":"        \"\"\"Return all known meters, based on the data recorded so far."},{"line_number":1085,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_12030e0e","line":1082,"updated":"2014-11-20 22:09:25.000000000","message":"Any issues with this one?","commit_id":"cbb9ec771a10f85fd35fce41c7214b21519c5516"},{"author":{"_account_id":10608,"name":"Matthew Edmonds","email":"edmondsw@us.ibm.com","username":"edmondsw"},"change_message_id":"d7f1787f7af63c744a386492f1d54167b2611532","unresolved":false,"context_lines":[{"line_number":1079,"context_line":"    def _lookup(self, meter_name, *remainder):"},{"line_number":1080,"context_line":"        return MeterController(meter_name), remainder"},{"line_number":1081,"context_line":""},{"line_number":1082,"context_line":"    @wsme_pecan.wsexpose([Meter], [Query])"},{"line_number":1083,"context_line":"    def get_all(self, q\u003dNone):"},{"line_number":1084,"context_line":"        \"\"\"Return all known meters, based on the data recorded so far."},{"line_number":1085,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_2986b8db","line":1082,"in_reply_to":"5a890539_12030e0e","updated":"2014-11-21 21:42:19.000000000","message":"Nope, the changes in MeterController appear to fix the issues with MetersController as well.","commit_id":"cbb9ec771a10f85fd35fce41c7214b21519c5516"}]}
