)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"1e18837998523c4214c5c43f0adf7b3fdf5f88ea","unresolved":true,"context_lines":[{"line_number":7,"context_line":"Fix unit tests when they are run we OS_DEBUG\u003dTrue"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Fix nova.tests.unit.test_fixtures.TestLogging.test_default_logging unit"},{"line_number":10,"context_line":"test by explicitly set OS_DEBUG\u003d0 when running default logging test."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Co-authored-by: Rene Ribaud \u003crribaud@redhat.com\u003e"},{"line_number":13,"context_line":"Closes-Bug: #1964497"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"b198d14c_22d24336","line":10,"updated":"2022-03-10 17:06:51.000000000","message":"I think this commit message should be more detailed - I know you and I both have the context in our heads, but other reviewers could use an introduction to why the Null handler for DEBUG is only being added when running with INFO level, and hence why the test needs to explicitly disable OS_DEBUG.","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"e721ed7991f6e344beeae5c02b758e5f5d7bbc53","unresolved":true,"context_lines":[{"line_number":7,"context_line":"Fix unit tests when they are run we OS_DEBUG\u003dTrue"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Fix nova.tests.unit.test_fixtures.TestLogging.test_default_logging unit"},{"line_number":10,"context_line":"test by explicitly set OS_DEBUG\u003d0 when running default logging test."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Co-authored-by: Rene Ribaud \u003crribaud@redhat.com\u003e"},{"line_number":13,"context_line":"Closes-Bug: #1964497"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"f94607e3_600c129f","line":10,"in_reply_to":"b198d14c_22d24336","updated":"2022-03-10 17:15:22.000000000","message":"Ok, you are right, I will give more context.","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"8716131b2fd3d3d02d363a02d507b672c9c9a5ed","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Fix unit tests when they are run we OS_DEBUG\u003dTrue"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Fix nova.tests.unit.test_fixtures.TestLogging.test_default_logging unit"},{"line_number":10,"context_line":"test by explicitly set OS_DEBUG\u003d0 when running default logging test."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Co-authored-by: Rene Ribaud \u003crribaud@redhat.com\u003e"},{"line_number":13,"context_line":"Closes-Bug: #1964497"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ef7f7316_71a5b872","line":10,"in_reply_to":"f94607e3_600c129f","updated":"2022-03-11 09:33:07.000000000","message":"Done","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"446c77908d33eedd2dd6ba39bd760532d3271456","unresolved":true,"context_lines":[{"line_number":11,"context_line":"1 x to display default messages (info, error, warnings...)"},{"line_number":12,"context_line":"1 x to redirect debug messages to null and so don\u0027t display them."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"However, if OS_DEBUG\u003dTrue is set in a shell session. Then, the test is"},{"line_number":15,"context_line":"run and fails. Because, in debug mode, we should have only one handler"},{"line_number":16,"context_line":"to display all messages. (look at comments for more details and"},{"line_number":17,"context_line":" test_debug_logging test)."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"26e8d413_d7d7dc9c","line":14,"range":{"start_line":14,"start_character":51,"end_line":14,"end_character":57},"updated":"2022-03-21 10:10:03.000000000","message":"femtonit : \", then\"","commit_id":"3657f3aa80ca9fc42a4ca822ba7de2c8642c2c29"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"ecdf84c04d42f630d0790f6f7d38ef92daea84f6","unresolved":false,"context_lines":[{"line_number":11,"context_line":"1 x to display default messages (info, error, warnings...)"},{"line_number":12,"context_line":"1 x to redirect debug messages to null and so don\u0027t display them."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"However, if OS_DEBUG\u003dTrue is set in a shell session. Then, the test is"},{"line_number":15,"context_line":"run and fails. Because, in debug mode, we should have only one handler"},{"line_number":16,"context_line":"to display all messages. (look at comments for more details and"},{"line_number":17,"context_line":" test_debug_logging test)."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"4fae0932_5c8508ea","line":14,"range":{"start_line":14,"start_character":51,"end_line":14,"end_character":57},"in_reply_to":"26e8d413_d7d7dc9c","updated":"2022-03-23 09:34:37.000000000","message":"Done","commit_id":"3657f3aa80ca9fc42a4ca822ba7de2c8642c2c29"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"446c77908d33eedd2dd6ba39bd760532d3271456","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"b0b2d408_0d73af70","updated":"2022-03-21 10:10:03.000000000","message":"I think a comment is good, even if we can \"git blame\" this method.","commit_id":"3657f3aa80ca9fc42a4ca822ba7de2c8642c2c29"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"2d49197c034349453418185952f5886de975e554","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"5f8d06fd_53b0eb91","updated":"2022-03-23 12:37:16.000000000","message":"rebuild","commit_id":"84c6d05ac343029cf151c35d4696cee0dc74f2c9"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"241d9aba37a55691e114269bceb1bd5570f6c490","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"133c8b6b_369a645f","updated":"2022-03-23 13:36:44.000000000","message":"recheck","commit_id":"84c6d05ac343029cf151c35d4696cee0dc74f2c9"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"7a603b535aaaef63842d21e8a9081dc36515b4d1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"1531c7e1_4df90288","updated":"2022-03-23 12:47:51.000000000","message":"reverify","commit_id":"84c6d05ac343029cf151c35d4696cee0dc74f2c9"}],"nova/tests/unit/test_fixtures.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"d0197fcd82a155de8a84a6648a33ed98a8d7d1a0","unresolved":true,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"class TestLogging(testtools.TestCase):"},{"line_number":53,"context_line":"    def test_default_logging(self):"},{"line_number":54,"context_line":"        self.useFixture(fx.EnvironmentVariable(\u0027OS_DEBUG\u0027, \u00270\u0027))"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"},{"line_number":57,"context_line":"        root \u003d logging.getLogger()"}],"source_content_type":"text/x-python","patch_set":2,"id":"19464279_bd1f7a87","line":54,"updated":"2022-03-10 17:07:53.000000000","message":"... and/or maybe add a # NOTE here as well.","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"241e7e82c17b49204fb9edba73ab34eaca9d4a97","unresolved":true,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"class TestLogging(testtools.TestCase):"},{"line_number":53,"context_line":"    def test_default_logging(self):"},{"line_number":54,"context_line":"        self.useFixture(fx.EnvironmentVariable(\u0027OS_DEBUG\u0027, \u00270\u0027))"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"},{"line_number":57,"context_line":"        root \u003d logging.getLogger()"}],"source_content_type":"text/x-python","patch_set":2,"id":"5cb34cab_5b382368","line":54,"updated":"2022-03-11 09:31:44.000000000","message":"The line force the normal mode even if OS_DEBUG\u003dtrue is set in the shell session. To make sure we will have 2 handlers and that we will not fail at line 59.","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"43e78620041031916c60c9020c0ddb4cb55d10c0","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"class TestLogging(testtools.TestCase):"},{"line_number":53,"context_line":"    def test_default_logging(self):"},{"line_number":54,"context_line":"        self.useFixture(fx.EnvironmentVariable(\u0027OS_DEBUG\u0027, \u00270\u0027))"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"},{"line_number":57,"context_line":"        root \u003d logging.getLogger()"}],"source_content_type":"text/x-python","patch_set":2,"id":"012b062f_9b6c248e","line":54,"in_reply_to":"19464279_bd1f7a87","updated":"2022-03-11 09:35:16.000000000","message":"Done","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"8716131b2fd3d3d02d363a02d507b672c9c9a5ed","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"class TestLogging(testtools.TestCase):"},{"line_number":53,"context_line":"    def test_default_logging(self):"},{"line_number":54,"context_line":"        self.useFixture(fx.EnvironmentVariable(\u0027OS_DEBUG\u0027, \u00270\u0027))"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"},{"line_number":57,"context_line":"        root \u003d logging.getLogger()"}],"source_content_type":"text/x-python","patch_set":2,"id":"caae213f_1a50a237","line":54,"in_reply_to":"5cb34cab_5b382368","updated":"2022-03-11 09:33:07.000000000","message":"Ack","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"241e7e82c17b49204fb9edba73ab34eaca9d4a97","unresolved":true,"context_lines":[{"line_number":56,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"},{"line_number":57,"context_line":"        root \u003d logging.getLogger()"},{"line_number":58,"context_line":"        # there should be a null handler as well at DEBUG"},{"line_number":59,"context_line":"        self.assertEqual(2, len(root.handlers), root.handlers)"},{"line_number":60,"context_line":"        log \u003d logging.getLogger(__name__)"},{"line_number":61,"context_line":"        log.info(\"at info\")"},{"line_number":62,"context_line":"        log.debug(\"at debug\")"}],"source_content_type":"text/x-python","patch_set":2,"id":"bc3f9ed3_1a3a75d8","line":59,"updated":"2022-03-11 09:31:44.000000000","message":"Here with default logging we have 2 handlers.\n1 handler to display messages wich are not debug (info, warn, error...)\n1 handler to send all debug messages to null and so don\u0027t display them.","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"8716131b2fd3d3d02d363a02d507b672c9c9a5ed","unresolved":false,"context_lines":[{"line_number":56,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"},{"line_number":57,"context_line":"        root \u003d logging.getLogger()"},{"line_number":58,"context_line":"        # there should be a null handler as well at DEBUG"},{"line_number":59,"context_line":"        self.assertEqual(2, len(root.handlers), root.handlers)"},{"line_number":60,"context_line":"        log \u003d logging.getLogger(__name__)"},{"line_number":61,"context_line":"        log.info(\"at info\")"},{"line_number":62,"context_line":"        log.debug(\"at debug\")"}],"source_content_type":"text/x-python","patch_set":2,"id":"febc57c2_91a61f10","line":59,"in_reply_to":"bc3f9ed3_1a3a75d8","updated":"2022-03-11 09:33:07.000000000","message":"Ack","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"241e7e82c17b49204fb9edba73ab34eaca9d4a97","unresolved":true,"context_lines":[{"line_number":75,"context_line":"        self.assertIn(\"warn_log at error\", stdlog.logger.output)"},{"line_number":76,"context_line":"        self.assertNotIn(\"warn_log at info\", stdlog.logger.output)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"    def test_debug_logging(self):"},{"line_number":79,"context_line":"        self.useFixture(fx.EnvironmentVariable(\u0027OS_DEBUG\u0027, \u00271\u0027))"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"}],"source_content_type":"text/x-python","patch_set":2,"id":"ce62dd68_6ba7660c","line":78,"updated":"2022-03-11 09:31:44.000000000","message":"This test check that we have one log handler if we are in debug mode.","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"8716131b2fd3d3d02d363a02d507b672c9c9a5ed","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        self.assertIn(\"warn_log at error\", stdlog.logger.output)"},{"line_number":76,"context_line":"        self.assertNotIn(\"warn_log at info\", stdlog.logger.output)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"    def test_debug_logging(self):"},{"line_number":79,"context_line":"        self.useFixture(fx.EnvironmentVariable(\u0027OS_DEBUG\u0027, \u00271\u0027))"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"}],"source_content_type":"text/x-python","patch_set":2,"id":"14a2094b_be49c9ef","line":78,"in_reply_to":"ce62dd68_6ba7660c","updated":"2022-03-11 09:33:07.000000000","message":"Ack","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"241e7e82c17b49204fb9edba73ab34eaca9d4a97","unresolved":true,"context_lines":[{"line_number":81,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"},{"line_number":82,"context_line":"        root \u003d logging.getLogger()"},{"line_number":83,"context_line":"        # there should no longer be a null handler"},{"line_number":84,"context_line":"        self.assertEqual(1, len(root.handlers), root.handlers)"},{"line_number":85,"context_line":"        log \u003d logging.getLogger(__name__)"},{"line_number":86,"context_line":"        log.info(\"at info\")"},{"line_number":87,"context_line":"        log.debug(\"at debug\")"}],"source_content_type":"text/x-python","patch_set":2,"id":"2b97253a_423f7467","line":84,"updated":"2022-03-11 09:31:44.000000000","message":"One handler to display all log messages. Which is the behavior we wish in debug mode.","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"8716131b2fd3d3d02d363a02d507b672c9c9a5ed","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"},{"line_number":82,"context_line":"        root \u003d logging.getLogger()"},{"line_number":83,"context_line":"        # there should no longer be a null handler"},{"line_number":84,"context_line":"        self.assertEqual(1, len(root.handlers), root.handlers)"},{"line_number":85,"context_line":"        log \u003d logging.getLogger(__name__)"},{"line_number":86,"context_line":"        log.info(\"at info\")"},{"line_number":87,"context_line":"        log.debug(\"at debug\")"}],"source_content_type":"text/x-python","patch_set":2,"id":"0a7d0013_0bf35d8b","line":84,"in_reply_to":"2b97253a_423f7467","updated":"2022-03-11 09:33:07.000000000","message":"Ack","commit_id":"0ed1a6f399f2db3135a8877ff5b8e25a30e4d946"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"446c77908d33eedd2dd6ba39bd760532d3271456","unresolved":true,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"class TestLogging(testtools.TestCase):"},{"line_number":53,"context_line":"    def test_default_logging(self):"},{"line_number":54,"context_line":"        self.useFixture(fx.EnvironmentVariable(\u0027OS_DEBUG\u0027, \u00270\u0027))"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"},{"line_number":57,"context_line":"        root \u003d logging.getLogger()"}],"source_content_type":"text/x-python","patch_set":3,"id":"0c395284_b5c6030a","line":54,"updated":"2022-03-21 10:10:03.000000000","message":"I\u0027d have appreciated a bit of comment here explaining why we need to disable the DEBUG mode in this test.\n\nI can imagine some people later that would wonder why this test doesn\u0027t provide DEBUG log level while others do.","commit_id":"3657f3aa80ca9fc42a4ca822ba7de2c8642c2c29"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"40b5d4a672fb09d3c50cc6822d398feb18791989","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"class TestLogging(testtools.TestCase):"},{"line_number":53,"context_line":"    def test_default_logging(self):"},{"line_number":54,"context_line":"        self.useFixture(fx.EnvironmentVariable(\u0027OS_DEBUG\u0027, \u00270\u0027))"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"},{"line_number":57,"context_line":"        root \u003d logging.getLogger()"}],"source_content_type":"text/x-python","patch_set":3,"id":"32568c1f_caa1c286","line":54,"in_reply_to":"0c395284_b5c6030a","updated":"2022-03-23 09:33:56.000000000","message":"Ack","commit_id":"3657f3aa80ca9fc42a4ca822ba7de2c8642c2c29"},{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"ecdf84c04d42f630d0790f6f7d38ef92daea84f6","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"class TestLogging(testtools.TestCase):"},{"line_number":53,"context_line":"    def test_default_logging(self):"},{"line_number":54,"context_line":"        self.useFixture(fx.EnvironmentVariable(\u0027OS_DEBUG\u0027, \u00270\u0027))"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        stdlog \u003d self.useFixture(fixtures.StandardLogging())"},{"line_number":57,"context_line":"        root \u003d logging.getLogger()"}],"source_content_type":"text/x-python","patch_set":3,"id":"095fbb5e_3c28f5bc","line":54,"in_reply_to":"0c395284_b5c6030a","updated":"2022-03-23 09:34:37.000000000","message":"Done","commit_id":"3657f3aa80ca9fc42a4ca822ba7de2c8642c2c29"}]}
