)]}'
{"docs/Agent.md":[{"author":{"_account_id":22157,"name":"Andrea Adams","email":"aadams@hpe.com","username":"andrea.adams"},"change_message_id":"12ef7479689329b5a7f80ad599289b4110abb606","unresolved":false,"context_lines":[{"line_number":234,"context_line":"             env: stage"},{"line_number":235,"context_line":"             newDim: test"},{"line_number":236,"context_line":""},{"line_number":237,"context_line":"monasca-collector service can receive a `--config-file` argument, which represents an alternate agent configuration file, instead of the default /etc/monasca/agent.yaml."},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"# Running"},{"line_number":240,"context_line":"The monasca-setup command will create an appropriate startup script for the agent and so the agent can be run by using the standard daemon control tool for your operating system. If you have configured manually the startup script templates can be found in the code under the packaging directory."}],"source_content_type":"text/x-markdown","patch_set":15,"id":"3a98d1f4_d4f627f8","line":237,"range":{"start_line":237,"start_character":0,"end_line":237,"end_character":169},"updated":"2016-09-30 18:11:44.000000000","message":"Can you add an example here or just explicitly say that it expects an equals sign between --config-file and the argument please.","commit_id":"8075ee91ba0615b6612244d08f50bc42e6557cd1"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"8226906a939555c4950ad57ca1bf2066cc9f2110","unresolved":false,"context_lines":[{"line_number":234,"context_line":"             env: stage"},{"line_number":235,"context_line":"             newDim: test"},{"line_number":236,"context_line":""},{"line_number":237,"context_line":"monasca-collector service can receive a `--config-file` argument, which represents an alternate agent configuration file, instead of the default /etc/monasca/agent.yaml."},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"# Running"},{"line_number":240,"context_line":"The monasca-setup command will create an appropriate startup script for the agent and so the agent can be run by using the standard daemon control tool for your operating system. If you have configured manually the startup script templates can be found in the code under the packaging directory."}],"source_content_type":"text/x-markdown","patch_set":15,"id":"fa6399be_67a51103","line":237,"range":{"start_line":237,"start_character":0,"end_line":237,"end_character":169},"in_reply_to":"3a98d1f4_d4f627f8","updated":"2016-10-11 16:44:06.000000000","message":"Done","commit_id":"8075ee91ba0615b6612244d08f50bc42e6557cd1"}],"monasca_agent/common/config.py":[{"author":{"_account_id":14273,"name":"Joe Keen","email":"joe.keen@hpe.com","username":"jkeen"},"change_message_id":"8dd80c98b25e2027a8d38b2a88b7840a0344d0a9","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"    def __init__(self, configFile\u003dNone):"},{"line_number":30,"context_line":"        # importing it here, in order to avoid a circular import."},{"line_number":31,"context_line":"        from monasca_agent.common import util"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        options, args \u003d util.get_parsed_args()"},{"line_number":34,"context_line":"        if configFile is not None:"}],"source_content_type":"text/x-python","patch_set":7,"id":"7aa08908_61b5eece","line":31,"range":{"start_line":31,"start_character":0,"end_line":31,"end_character":45},"updated":"2016-06-17 02:25:21.000000000","message":"Can you explain what the circular import was?","commit_id":"7ed8fef04254c80de9651b6686540269804ad5a9"}],"monasca_agent/common/util.py":[{"author":{"_account_id":18179,"name":"Kaiyan Sheng","email":"kaiyan.sheng@hpe.com","username":"kaiyan-sheng"},"change_message_id":"a0590ff5e6207454c4b740b1c19d9f0a8f9d059b","unresolved":false,"context_lines":[{"line_number":441,"context_line":""},{"line_number":442,"context_line":"def get_parsed_args():"},{"line_number":443,"context_line":"    parser \u003d optparse.OptionParser()"},{"line_number":444,"context_line":"    parser.add_option(\u0027-c\u0027, \u0027--clean\u0027, action\u003d\u0027store_true\u0027, default\u003dFalse, dest\u003d\u0027clean\u0027)"},{"line_number":445,"context_line":"    parser.add_option(\u0027-v\u0027, \u0027--verbose\u0027, action\u003d\u0027store_true\u0027, default\u003dFalse, dest\u003d\u0027verbose\u0027,"},{"line_number":446,"context_line":"                      help\u003d\u0027Print out stacktraces for errors in checks\u0027)"},{"line_number":447,"context_line":"    parser.add_option(\u0027--config-file\u0027, default\u003dNone, dest\u003d\u0027config_file\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"3aaa91ec_40ac4935","line":444,"range":{"start_line":444,"start_character":22,"end_line":444,"end_character":26},"updated":"2016-06-22 23:42:52.000000000","message":"Is this gonna conflict with the new \u0027-c\u0027 short for \u0027--config-file\u0027?","commit_id":"7ed8fef04254c80de9651b6686540269804ad5a9"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"1f85c5ba1767a1b05589b1d7650ad17c997debb0","unresolved":false,"context_lines":[{"line_number":441,"context_line":""},{"line_number":442,"context_line":"def get_parsed_args():"},{"line_number":443,"context_line":"    parser \u003d optparse.OptionParser()"},{"line_number":444,"context_line":"    parser.add_option(\u0027-c\u0027, \u0027--clean\u0027, action\u003d\u0027store_true\u0027, default\u003dFalse, dest\u003d\u0027clean\u0027)"},{"line_number":445,"context_line":"    parser.add_option(\u0027-v\u0027, \u0027--verbose\u0027, action\u003d\u0027store_true\u0027, default\u003dFalse, dest\u003d\u0027verbose\u0027,"},{"line_number":446,"context_line":"                      help\u003d\u0027Print out stacktraces for errors in checks\u0027)"},{"line_number":447,"context_line":"    parser.add_option(\u0027--config-file\u0027, default\u003dNone, dest\u003d\u0027config_file\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"3aaa91ec_90b13404","line":444,"range":{"start_line":444,"start_character":22,"end_line":444,"end_character":26},"in_reply_to":"3aaa91ec_40ac4935","updated":"2016-06-29 13:12:49.000000000","message":"Well to avoid this I think --config-file could have \u0027-f\u0027 option or something","commit_id":"7ed8fef04254c80de9651b6686540269804ad5a9"},{"author":{"_account_id":22210,"name":"Matteus Sthefano Leite da Silva","email":"silvamatteus@lsd.ufcg.edu.br","username":"silvamatteus"},"change_message_id":"bdd324bd8ba154e3a3d7550399f1e329db6dbff6","unresolved":false,"context_lines":[{"line_number":441,"context_line":""},{"line_number":442,"context_line":"def get_parsed_args():"},{"line_number":443,"context_line":"    parser \u003d optparse.OptionParser()"},{"line_number":444,"context_line":"    parser.add_option(\u0027-c\u0027, \u0027--clean\u0027, action\u003d\u0027store_true\u0027, default\u003dFalse, dest\u003d\u0027clean\u0027)"},{"line_number":445,"context_line":"    parser.add_option(\u0027-v\u0027, \u0027--verbose\u0027, action\u003d\u0027store_true\u0027, default\u003dFalse, dest\u003d\u0027verbose\u0027,"},{"line_number":446,"context_line":"                      help\u003d\u0027Print out stacktraces for errors in checks\u0027)"},{"line_number":447,"context_line":"    parser.add_option(\u0027--config-file\u0027, default\u003dNone, dest\u003d\u0027config_file\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"3aaa91ec_706f68fc","line":444,"range":{"start_line":444,"start_character":22,"end_line":444,"end_character":26},"in_reply_to":"3aaa91ec_90b13404","updated":"2016-06-29 13:18:38.000000000","message":"I think now that you are right. It would be nice to have a short for --config-file.","commit_id":"7ed8fef04254c80de9651b6686540269804ad5a9"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"1f85c5ba1767a1b05589b1d7650ad17c997debb0","unresolved":false,"context_lines":[{"line_number":444,"context_line":"    parser.add_option(\u0027-c\u0027, \u0027--clean\u0027, action\u003d\u0027store_true\u0027, default\u003dFalse, dest\u003d\u0027clean\u0027)"},{"line_number":445,"context_line":"    parser.add_option(\u0027-v\u0027, \u0027--verbose\u0027, action\u003d\u0027store_true\u0027, default\u003dFalse, dest\u003d\u0027verbose\u0027,"},{"line_number":446,"context_line":"                      help\u003d\u0027Print out stacktraces for errors in checks\u0027)"},{"line_number":447,"context_line":"    parser.add_option(\u0027--config-file\u0027, default\u003dNone, dest\u003d\u0027config_file\u0027,"},{"line_number":448,"context_line":"                      help\u003d\u0027Location for an alternate config rather than using the default config location.\u0027)"},{"line_number":449,"context_line":""},{"line_number":450,"context_line":"    try:"}],"source_content_type":"text/x-python","patch_set":7,"id":"3aaa91ec_70b2c8e6","line":447,"updated":"2016-06-29 13:12:49.000000000","message":"Please add a short option here","commit_id":"7ed8fef04254c80de9651b6686540269804ad5a9"},{"author":{"_account_id":11809,"name":"Craig Bryant","email":"craig.bryant@hpe.com","username":"craig-bryant"},"change_message_id":"39c21aac3c073a35ded2583c0ce38ebca7617239","unresolved":false,"context_lines":[{"line_number":444,"context_line":"    parser.add_option(\u0027-c\u0027, \u0027--clean\u0027, action\u003d\u0027store_true\u0027, default\u003dFalse, dest\u003d\u0027clean\u0027)"},{"line_number":445,"context_line":"    parser.add_option(\u0027-v\u0027, \u0027--verbose\u0027, action\u003d\u0027store_true\u0027, default\u003dFalse, dest\u003d\u0027verbose\u0027,"},{"line_number":446,"context_line":"                      help\u003d\u0027Print out stacktraces for errors in checks\u0027)"},{"line_number":447,"context_line":"    parser.add_option(\u0027-f\u0027, \u0027--config-file\u0027, default\u003dNone, dest\u003d\u0027config_file\u0027,"},{"line_number":448,"context_line":"                      help\u003d\u0027Location for an alternate config rather than \u0027"},{"line_number":449,"context_line":"                           \u0027using the default config location.\u0027)"},{"line_number":450,"context_line":""},{"line_number":451,"context_line":"    try:"},{"line_number":452,"context_line":"        options, args \u003d parser.parse_args()"}],"source_content_type":"text/x-python","patch_set":11,"id":"9a89bdaa_e8dcc748","line":449,"range":{"start_line":447,"start_character":4,"end_line":449,"end_character":64},"updated":"2016-09-02 20:59:07.000000000","message":"I think this argument should be documented in docs/Agent.md under ## Manual Configuration of the Agent","commit_id":"c819eb38706cc9a5b9d2654a24db2e293efa9c1f"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"3bb7544d54c17809e702a171f5419d08d9dead0e","unresolved":false,"context_lines":[{"line_number":444,"context_line":"    parser.add_option(\u0027-c\u0027, \u0027--clean\u0027, action\u003d\u0027store_true\u0027, default\u003dFalse, dest\u003d\u0027clean\u0027)"},{"line_number":445,"context_line":"    parser.add_option(\u0027-v\u0027, \u0027--verbose\u0027, action\u003d\u0027store_true\u0027, default\u003dFalse, dest\u003d\u0027verbose\u0027,"},{"line_number":446,"context_line":"                      help\u003d\u0027Print out stacktraces for errors in checks\u0027)"},{"line_number":447,"context_line":"    parser.add_option(\u0027-f\u0027, \u0027--config-file\u0027, default\u003dNone, dest\u003d\u0027config_file\u0027,"},{"line_number":448,"context_line":"                      help\u003d\u0027Location for an alternate config rather than \u0027"},{"line_number":449,"context_line":"                           \u0027using the default config location.\u0027)"},{"line_number":450,"context_line":""},{"line_number":451,"context_line":"    try:"},{"line_number":452,"context_line":"        options, args \u003d parser.parse_args()"}],"source_content_type":"text/x-python","patch_set":11,"id":"9a89bdaa_21a86e1f","line":449,"range":{"start_line":447,"start_character":4,"end_line":449,"end_character":64},"in_reply_to":"9a89bdaa_e8dcc748","updated":"2016-09-05 07:05:43.000000000","message":"Done","commit_id":"c819eb38706cc9a5b9d2654a24db2e293efa9c1f"}],"monasca_agent/forwarder/daemon.py":[{"author":{"_account_id":22157,"name":"Andrea Adams","email":"aadams@hpe.com","username":"andrea.adams"},"change_message_id":"6891946d5e4f9d7467ecf7355bc8c171e79a2739","unresolved":false,"context_lines":[{"line_number":208,"context_line":"    tornado.options.define(\"sslcheck\", default\u003d1, help\u003d\"Verify SSL hostname, on by default\")"},{"line_number":209,"context_line":"    tornado.options.define(\"use_simple_http_client\", default\u003d0,"},{"line_number":210,"context_line":"                           help\u003d\"Use Tornado SimpleHTTPClient instead of CurlAsyncHTTPClient\")"},{"line_number":211,"context_line":"    tornado.options.define(\"config_file\", default\u003dNone,"},{"line_number":212,"context_line":"                           help\u003d\"Location for an alternate config rather than \""},{"line_number":213,"context_line":"                                \"using the default config location.\")"},{"line_number":214,"context_line":"    args \u003d tornado.options.parse_command_line()"}],"source_content_type":"text/x-python","patch_set":15,"id":"3a98d1f4_c0506c0d","line":211,"range":{"start_line":211,"start_character":42,"end_line":211,"end_character":54},"updated":"2016-09-29 16:46:57.000000000","message":"When I run the forwarder on my windows machine I get an error: \nTraceback (most recent call last):\nFile \".\\daemon.py\", line 248, in \u003cmodule\u003e\nsys.exit(main())\nFile \".\\daemon.py\", line 218, in main\nargs \u003d tornado.options.parse_command_line()\nFile \"C:\\Python27\\lib\\site-packages\\tornado\\options.py\", line 554, in parse_command_line\nreturn options.parse_command_line(args, final\u003dfinal)\nFile \"C:\\Python27\\lib\\site-packages\\tornado\\options.py\", line 285, in parse_command_line\nraise Error(\u0027Option %r requires a value\u0027 % name)\ntornado.options.Error: Option \u0027config-file\u0027 requires a value","commit_id":"8075ee91ba0615b6612244d08f50bc42e6557cd1"},{"author":{"_account_id":22157,"name":"Andrea Adams","email":"aadams@hpe.com","username":"andrea.adams"},"change_message_id":"12ef7479689329b5a7f80ad599289b4110abb606","unresolved":false,"context_lines":[{"line_number":208,"context_line":"    tornado.options.define(\"sslcheck\", default\u003d1, help\u003d\"Verify SSL hostname, on by default\")"},{"line_number":209,"context_line":"    tornado.options.define(\"use_simple_http_client\", default\u003d0,"},{"line_number":210,"context_line":"                           help\u003d\"Use Tornado SimpleHTTPClient instead of CurlAsyncHTTPClient\")"},{"line_number":211,"context_line":"    tornado.options.define(\"config_file\", default\u003dNone,"},{"line_number":212,"context_line":"                           help\u003d\"Location for an alternate config rather than \""},{"line_number":213,"context_line":"                                \"using the default config location.\")"},{"line_number":214,"context_line":"    args \u003d tornado.options.parse_command_line()"}],"source_content_type":"text/x-python","patch_set":15,"id":"3a98d1f4_f44de33e","line":211,"range":{"start_line":211,"start_character":42,"end_line":211,"end_character":54},"in_reply_to":"3a98d1f4_4cbbab27","updated":"2016-09-30 18:11:44.000000000","message":"After re-testing it, I see my error. Thanks Craig.","commit_id":"8075ee91ba0615b6612244d08f50bc42e6557cd1"},{"author":{"_account_id":11809,"name":"Craig Bryant","email":"craig.bryant@hpe.com","username":"craig-bryant"},"change_message_id":"7a5e061a67de6a160f0815207b812482195cd287","unresolved":false,"context_lines":[{"line_number":208,"context_line":"    tornado.options.define(\"sslcheck\", default\u003d1, help\u003d\"Verify SSL hostname, on by default\")"},{"line_number":209,"context_line":"    tornado.options.define(\"use_simple_http_client\", default\u003d0,"},{"line_number":210,"context_line":"                           help\u003d\"Use Tornado SimpleHTTPClient instead of CurlAsyncHTTPClient\")"},{"line_number":211,"context_line":"    tornado.options.define(\"config_file\", default\u003dNone,"},{"line_number":212,"context_line":"                           help\u003d\"Location for an alternate config rather than \""},{"line_number":213,"context_line":"                                \"using the default config location.\")"},{"line_number":214,"context_line":"    args \u003d tornado.options.parse_command_line()"}],"source_content_type":"text/x-python","patch_set":15,"id":"3a98d1f4_4cbbab27","line":211,"range":{"start_line":211,"start_character":42,"end_line":211,"end_character":54},"in_reply_to":"3a98d1f4_c0506c0d","updated":"2016-09-29 21:09:02.000000000","message":"I get the same behavior on linux running the collector with:\n\npython ./daemon.py --config-file /etc/monasca/agent/agent.yaml\n\nAlthough, this does work:\n\npython ./daemon.py --config-file\u003d/etc/monasca/agent/agent.yaml","commit_id":"8075ee91ba0615b6612244d08f50bc42e6557cd1"}],"monasca_agent/statsd/daemon.py":[{"author":{"_account_id":18179,"name":"Kaiyan Sheng","email":"kaiyan.sheng@hpe.com","username":"kaiyan-sheng"},"change_message_id":"ae219985c9c3bb7094fdf44dafaacc3681c870af","unresolved":false,"context_lines":[{"line_number":88,"context_line":"def main():"},{"line_number":89,"context_line":"    \"\"\"The main entry point for the unix version of monasca_statsd. \"\"\""},{"line_number":90,"context_line":"    parser \u003d argparse.ArgumentParser(description\u003d\u0027Monasca statsd - statsd server supporting metric dimensions\u0027)"},{"line_number":91,"context_line":"    parser.add_argument(\u0027--config\u0027, \u0027--config-file\u0027, \u0027-c\u0027,"},{"line_number":92,"context_line":"                        help\u003d\"Location for an alternate config rather than using the default config location.\")"},{"line_number":93,"context_line":"    args \u003d parser.parse_args()"},{"line_number":94,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"fad55976_932f06f6","line":91,"range":{"start_line":91,"start_character":54,"end_line":91,"end_character":56},"updated":"2016-07-15 15:09:07.000000000","message":"should be -f here too?","commit_id":"4299845f3aca29e9e145edb379daa80979a6f25d"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"e87708b6c8379a1ae64b83f93ee65e16bfc7d8a3","unresolved":false,"context_lines":[{"line_number":88,"context_line":"def main():"},{"line_number":89,"context_line":"    \"\"\"The main entry point for the unix version of monasca_statsd. \"\"\""},{"line_number":90,"context_line":"    parser \u003d argparse.ArgumentParser(description\u003d\u0027Monasca statsd - statsd server supporting metric dimensions\u0027)"},{"line_number":91,"context_line":"    parser.add_argument(\u0027--config\u0027, \u0027--config-file\u0027, \u0027-c\u0027,"},{"line_number":92,"context_line":"                        help\u003d\"Location for an alternate config rather than using the default config location.\")"},{"line_number":93,"context_line":"    args \u003d parser.parse_args()"},{"line_number":94,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"fad55976_d7693f8d","line":91,"range":{"start_line":91,"start_character":54,"end_line":91,"end_character":56},"in_reply_to":"fad55976_1bcfa1b1","updated":"2016-07-16 00:52:54.000000000","message":"from what I understood, you want to replace \u0027-c\u0027 with \u0027-f\u0027. People typically have scripts / services / daemons that rely on the fact that these arguments exist and are valid. Doing this will inconvenience them, as their daemon won\u0027t start due to invalid argument.","commit_id":"4299845f3aca29e9e145edb379daa80979a6f25d"},{"author":{"_account_id":22210,"name":"Matteus Sthefano Leite da Silva","email":"silvamatteus@lsd.ufcg.edu.br","username":"silvamatteus"},"change_message_id":"bcb485beba7d805a0caa5a52a19db252f4b739a2","unresolved":false,"context_lines":[{"line_number":88,"context_line":"def main():"},{"line_number":89,"context_line":"    \"\"\"The main entry point for the unix version of monasca_statsd. \"\"\""},{"line_number":90,"context_line":"    parser \u003d argparse.ArgumentParser(description\u003d\u0027Monasca statsd - statsd server supporting metric dimensions\u0027)"},{"line_number":91,"context_line":"    parser.add_argument(\u0027--config\u0027, \u0027--config-file\u0027, \u0027-c\u0027,"},{"line_number":92,"context_line":"                        help\u003d\"Location for an alternate config rather than using the default config location.\")"},{"line_number":93,"context_line":"    args \u003d parser.parse_args()"},{"line_number":94,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"fad55976_1bcfa1b1","line":91,"range":{"start_line":91,"start_character":54,"end_line":91,"end_character":56},"in_reply_to":"fad55976_47f8217d","updated":"2016-07-15 20:37:23.000000000","message":"Sorry, I did not understand. Could you explain how it can break stuff for people?","commit_id":"4299845f3aca29e9e145edb379daa80979a6f25d"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"cbd82bd00ab6aaebf61d353f160935b3bab6a26e","unresolved":false,"context_lines":[{"line_number":88,"context_line":"def main():"},{"line_number":89,"context_line":"    \"\"\"The main entry point for the unix version of monasca_statsd. \"\"\""},{"line_number":90,"context_line":"    parser \u003d argparse.ArgumentParser(description\u003d\u0027Monasca statsd - statsd server supporting metric dimensions\u0027)"},{"line_number":91,"context_line":"    parser.add_argument(\u0027--config\u0027, \u0027--config-file\u0027, \u0027-c\u0027,"},{"line_number":92,"context_line":"                        help\u003d\"Location for an alternate config rather than using the default config location.\")"},{"line_number":93,"context_line":"    args \u003d parser.parse_args()"},{"line_number":94,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"fad55976_47f8217d","line":91,"range":{"start_line":91,"start_character":54,"end_line":91,"end_character":56},"in_reply_to":"fad55976_932f06f6","updated":"2016-07-15 17:18:33.000000000","message":"no, we can\u0027t simply change a parser argument, it could break stuff for people.","commit_id":"4299845f3aca29e9e145edb379daa80979a6f25d"},{"author":{"_account_id":20033,"name":"Artur Basiak","email":"artur.basiak@ts.fujitsu.com","username":"abasiak"},"change_message_id":"33b48a79b0a8b7bebaff6d72e5c45efe144e4d80","unresolved":false,"context_lines":[{"line_number":88,"context_line":"def main():"},{"line_number":89,"context_line":"    \"\"\"The main entry point for the unix version of monasca_statsd. \"\"\""},{"line_number":90,"context_line":"    parser \u003d argparse.ArgumentParser(description\u003d\u0027Monasca statsd - statsd server supporting metric dimensions\u0027)"},{"line_number":91,"context_line":"    parser.add_argument(\u0027--config\u0027, \u0027--config-file\u0027, \u0027-c\u0027,"},{"line_number":92,"context_line":"                        help\u003d\"Location for an alternate config rather than using the default config location.\")"},{"line_number":93,"context_line":"    args \u003d parser.parse_args()"},{"line_number":94,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"9a89bdaa_2c163af1","line":91,"range":{"start_line":91,"start_character":55,"end_line":91,"end_character":56},"updated":"2016-09-07 05:31:02.000000000","message":"For me it is confusing. Here is used option -c for config file, and in  monasca_agent/common/util.py -c is for clean , and -f is for config file. Maybe we should unified those options.","commit_id":"7066d53069594a73ad49aedcbf6e16f754f8d91b"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"200a879983dcf3c0bebebd9cd78eee642a50a60d","unresolved":false,"context_lines":[{"line_number":88,"context_line":"def main():"},{"line_number":89,"context_line":"    \"\"\"The main entry point for the unix version of monasca_statsd. \"\"\""},{"line_number":90,"context_line":"    parser \u003d argparse.ArgumentParser(description\u003d\u0027Monasca statsd - statsd server supporting metric dimensions\u0027)"},{"line_number":91,"context_line":"    parser.add_argument(\u0027--config\u0027, \u0027--config-file\u0027, \u0027-c\u0027,"},{"line_number":92,"context_line":"                        help\u003d\"Location for an alternate config rather than using the default config location.\")"},{"line_number":93,"context_line":"    args \u003d parser.parse_args()"},{"line_number":94,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"9a89bdaa_2247234c","line":91,"range":{"start_line":91,"start_character":55,"end_line":91,"end_character":56},"in_reply_to":"9a89bdaa_2c163af1","updated":"2016-09-07 06:21:37.000000000","message":"i agree that it is inconsistent, but some things like the arguments passed to a daemon / service / application have to be consistent across versions. Typically, to remove arguments, they would need a deprecation period. But that is not my call.","commit_id":"7066d53069594a73ad49aedcbf6e16f754f8d91b"}],"tests/test_config.py":[{"author":{"_account_id":11809,"name":"Craig Bryant","email":"craig.bryant@hpe.com","username":"craig-bryant"},"change_message_id":"8b1a7ebe33358e5d6d495e71059a860eb3ac5e85","unresolved":false,"context_lines":[{"line_number":95,"context_line":"        conf.__init__()"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"        self.assertEqual(mock_options.config_file, conf._configFile)"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"if __name__ \u003d\u003d \u0027__main__\u0027:"},{"line_number":101,"context_line":"    unittest.main()"}],"source_content_type":"text/x-python","patch_set":12,"id":"9a89bdaa_0ea7c04f","line":98,"updated":"2016-09-07 14:43:11.000000000","message":"I also like to test I didn\u0027t break the default behavior. Below is a suggested test to add (it requires an import of \"from monasca_agent.common.config import DEFAULT_CONFIG_FILE\").\n\nI\u0027ll be honest however, I\u0027m not sure if this is mocking too much to be a really good test. So, I\u0027ll let people give feedback on whether it is overkill.\n\n    @mock.patch.object(Config, \u0027_read_config\u0027)\n    @mock.patch(\u0027monasca_agent.common.util.get_parsed_args\u0027)\n    @mock.patch(\u0027monasca_agent.common.config.os\u0027)\n    def testConfigFileFromDefault(self, mock_os, mock_parsed_args, mock_read_config):\n        mock_os.path.exists \u003d mock.create_autospec(mock_os.path.exists, return_value\u003dTrue)\n        mock_options \u003d mock.Mock()\n        mock_options.config_file \u003d None\n        mock_parsed_args.return_value \u003d (mock_options, mock.sentinel.args)\n        conf \u003d Config()\n        # object is singleton, for this case, it needs to be reloaded.\n        conf.__init__()\n\n        self.assertEqual(DEFAULT_CONFIG_FILE, conf._configFile)\n        mock_os.path.exists.assert_called_once_with(DEFAULT_CONFIG_FILE)","commit_id":"7066d53069594a73ad49aedcbf6e16f754f8d91b"}]}
