)]}'
{"etc/object-server.conf-sample":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"037373145e664c4b1ba9be4cd8cbbba242384595","unresolved":true,"context_lines":[{"line_number":603,"context_line":"# unwind the iterator of applications"},{"line_number":604,"context_line":"# unwind \u003d false"},{"line_number":605,"context_line":""},{"line_number":606,"context_line":"[object-relinker]"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"c4342698_99250c2a","line":606,"updated":"2021-02-08 16:08:14.000000000","message":"all (I think) of the other daemon sections have\n\n  You can override the default log routing for this app here (don\u0027t use set!)\n  etc...\n\nwhich is highly repetitive, but should we do the same here to avoid giving the impression that it is not true for relinker?","commit_id":"7294270291db331bacda72593b07e9a4f4cad92f"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"a69b750d23508481bc2e4256405234821231f53b","unresolved":true,"context_lines":[{"line_number":603,"context_line":"# unwind the iterator of applications"},{"line_number":604,"context_line":"# unwind \u003d false"},{"line_number":605,"context_line":""},{"line_number":606,"context_line":"[object-relinker]"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"a88660a7_ea8db41e","line":606,"in_reply_to":"c4342698_99250c2a","updated":"2021-02-08 17:00:03.000000000","message":"Good call.","commit_id":"7294270291db331bacda72593b07e9a4f4cad92f"}],"swift/cli/relinker.py":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"037373145e664c4b1ba9be4cd8cbbba242384595","unresolved":true,"context_lines":[{"line_number":327,"context_line":"    parser \u003d argparse.ArgumentParser("},{"line_number":328,"context_line":"        description\u003d\u0027Relink and cleanup objects to increase partition power\u0027)"},{"line_number":329,"context_line":"    parser.add_argument(\u0027action\u0027, choices\u003d[\u0027relink\u0027, \u0027cleanup\u0027])"},{"line_number":330,"context_line":"    parser.add_argument(\u0027conf_file\u0027, nargs\u003d\u0027?\u0027, help\u003d("},{"line_number":331,"context_line":"        \u0027Path to config file with [object-relinker] section\u0027))"},{"line_number":332,"context_line":"    parser.add_argument(\u0027--swift-dir\u0027, default\u003dNone,"},{"line_number":333,"context_line":"                        dest\u003d\u0027swift_dir\u0027, help\u003d\u0027Path to swift directory\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"0ea5ba4f_97d11555","line":330,"updated":"2021-02-08 16:08:14.000000000","message":"probably worth a statement that unless otherwise noted, command line options will override their equivalents in a conf file.\n\nor given that not all cli options can be in a conf file, a statement per option that can override?\n\nAlso, is this deliberately a positional arg? to make it similar to daemons?","commit_id":"7294270291db331bacda72593b07e9a4f4cad92f"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"a69b750d23508481bc2e4256405234821231f53b","unresolved":true,"context_lines":[{"line_number":327,"context_line":"    parser \u003d argparse.ArgumentParser("},{"line_number":328,"context_line":"        description\u003d\u0027Relink and cleanup objects to increase partition power\u0027)"},{"line_number":329,"context_line":"    parser.add_argument(\u0027action\u0027, choices\u003d[\u0027relink\u0027, \u0027cleanup\u0027])"},{"line_number":330,"context_line":"    parser.add_argument(\u0027conf_file\u0027, nargs\u003d\u0027?\u0027, help\u003d("},{"line_number":331,"context_line":"        \u0027Path to config file with [object-relinker] section\u0027))"},{"line_number":332,"context_line":"    parser.add_argument(\u0027--swift-dir\u0027, default\u003dNone,"},{"line_number":333,"context_line":"                        dest\u003d\u0027swift_dir\u0027, help\u003d\u0027Path to swift directory\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"90582e10_9ce2b2e3","line":330,"in_reply_to":"0ea5ba4f_97d11555","updated":"2021-02-08 17:00:03.000000000","message":"\u003e Also, is this deliberately a positional arg? to make it similar to daemons?\n\nThat was my thinking, yeah.","commit_id":"7294270291db331bacda72593b07e9a4f4cad92f"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"037373145e664c4b1ba9be4cd8cbbba242384595","unresolved":true,"context_lines":[{"line_number":339,"context_line":"                        help\u003d\u0027Don\\\u0027t test if disk is mounted\u0027,"},{"line_number":340,"context_line":"                        action\u003d\"store_true\", dest\u003d\u0027skip_mount_check\u0027)"},{"line_number":341,"context_line":"    parser.add_argument(\u0027--logfile\u0027, default\u003dNone, dest\u003d\u0027logfile\u0027,"},{"line_number":342,"context_line":"                        help\u003d\u0027Set log file name. Ignored if using conf_file.\u0027)"},{"line_number":343,"context_line":"    parser.add_argument(\u0027--debug\u0027, default\u003dFalse, action\u003d\u0027store_true\u0027,"},{"line_number":344,"context_line":"                        help\u003d\u0027Enable debug mode\u0027)"},{"line_number":345,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"f83ad973_4196dfd2","line":342,"updated":"2021-02-08 16:08:14.000000000","message":"would it be more consistent to have this also override conf file?","commit_id":"7294270291db331bacda72593b07e9a4f4cad92f"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"8c5e30303d5ecf82fcfee2fd86befe19d5f49aa4","unresolved":true,"context_lines":[{"line_number":339,"context_line":"                        help\u003d\u0027Don\\\u0027t test if disk is mounted\u0027,"},{"line_number":340,"context_line":"                        action\u003d\"store_true\", dest\u003d\u0027skip_mount_check\u0027)"},{"line_number":341,"context_line":"    parser.add_argument(\u0027--logfile\u0027, default\u003dNone, dest\u003d\u0027logfile\u0027,"},{"line_number":342,"context_line":"                        help\u003d\u0027Set log file name. Ignored if using conf_file.\u0027)"},{"line_number":343,"context_line":"    parser.add_argument(\u0027--debug\u0027, default\u003dFalse, action\u003d\u0027store_true\u0027,"},{"line_number":344,"context_line":"                        help\u003d\u0027Enable debug mode\u0027)"},{"line_number":345,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"70603247_09e1e0a2","line":342,"in_reply_to":"ac044ecc_fd8aa6a4","updated":"2021-02-09 09:50:26.000000000","message":"yeah, I was thinking it might override using the conf file logging at all, but NM it\u0027s fine as is","commit_id":"7294270291db331bacda72593b07e9a4f4cad92f"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"a69b750d23508481bc2e4256405234821231f53b","unresolved":true,"context_lines":[{"line_number":339,"context_line":"                        help\u003d\u0027Don\\\u0027t test if disk is mounted\u0027,"},{"line_number":340,"context_line":"                        action\u003d\"store_true\", dest\u003d\u0027skip_mount_check\u0027)"},{"line_number":341,"context_line":"    parser.add_argument(\u0027--logfile\u0027, default\u003dNone, dest\u003d\u0027logfile\u0027,"},{"line_number":342,"context_line":"                        help\u003d\u0027Set log file name. Ignored if using conf_file.\u0027)"},{"line_number":343,"context_line":"    parser.add_argument(\u0027--debug\u0027, default\u003dFalse, action\u003d\u0027store_true\u0027,"},{"line_number":344,"context_line":"                        help\u003d\u0027Enable debug mode\u0027)"},{"line_number":345,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ac044ecc_fd8aa6a4","line":342,"in_reply_to":"f83ad973_4196dfd2","updated":"2021-02-08 17:00:03.000000000","message":"But, we don\u0027t have a comparable option in configs! It all goes out through (r)syslog, to be routed as the operator sees fit.","commit_id":"7294270291db331bacda72593b07e9a4f4cad92f"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"037373145e664c4b1ba9be4cd8cbbba242384595","unresolved":true,"context_lines":[{"line_number":341,"context_line":"    parser.add_argument(\u0027--logfile\u0027, default\u003dNone, dest\u003d\u0027logfile\u0027,"},{"line_number":342,"context_line":"                        help\u003d\u0027Set log file name. Ignored if using conf_file.\u0027)"},{"line_number":343,"context_line":"    parser.add_argument(\u0027--debug\u0027, default\u003dFalse, action\u003d\u0027store_true\u0027,"},{"line_number":344,"context_line":"                        help\u003d\u0027Enable debug mode\u0027)"},{"line_number":345,"context_line":""},{"line_number":346,"context_line":"    args \u003d parser.parse_args(args)"},{"line_number":347,"context_line":"    if args.conf_file:"}],"source_content_type":"text/x-python","patch_set":2,"id":"318382a9_4c56a95a","line":344,"updated":"2021-02-08 16:08:14.000000000","message":"this is currently also ignored if using conf file, which is consistent, but could prove frustrating","commit_id":"7294270291db331bacda72593b07e9a4f4cad92f"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"a69b750d23508481bc2e4256405234821231f53b","unresolved":true,"context_lines":[{"line_number":341,"context_line":"    parser.add_argument(\u0027--logfile\u0027, default\u003dNone, dest\u003d\u0027logfile\u0027,"},{"line_number":342,"context_line":"                        help\u003d\u0027Set log file name. Ignored if using conf_file.\u0027)"},{"line_number":343,"context_line":"    parser.add_argument(\u0027--debug\u0027, default\u003dFalse, action\u003d\u0027store_true\u0027,"},{"line_number":344,"context_line":"                        help\u003d\u0027Enable debug mode\u0027)"},{"line_number":345,"context_line":""},{"line_number":346,"context_line":"    args \u003d parser.parse_args(args)"},{"line_number":347,"context_line":"    if args.conf_file:"}],"source_content_type":"text/x-python","patch_set":2,"id":"40afcac5_18c338c0","line":344,"in_reply_to":"318382a9_4c56a95a","updated":"2021-02-08 17:00:03.000000000","message":"Yeah, that behavior definitely isn\u0027t great. IIRC I consciously avoided adding \"Ignored if using conf_file\" so it wouldn\u0027t look like it was an intentional design decision. In general, I\u0027m not quite happy with how the logger stuff shook out :-/","commit_id":"7294270291db331bacda72593b07e9a4f4cad92f"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"8c5e30303d5ecf82fcfee2fd86befe19d5f49aa4","unresolved":true,"context_lines":[{"line_number":347,"context_line":"    if args.conf_file:"},{"line_number":348,"context_line":"        conf \u003d readconf(args.conf_file, \u0027object-relinker\u0027)"},{"line_number":349,"context_line":"        if args.debug:"},{"line_number":350,"context_line":"            conf[\u0027log_level\u0027] \u003d \u0027DEBUG\u0027"},{"line_number":351,"context_line":"        logger \u003d get_logger(conf)"},{"line_number":352,"context_line":"    else:"},{"line_number":353,"context_line":"        conf \u003d {}"}],"source_content_type":"text/x-python","patch_set":3,"id":"ffd1282d_983bc176","line":350,"updated":"2021-02-09 09:50:26.000000000","message":"+1","commit_id":"1b7dd34d38c26c3d26c98341499973cc87bad2e1"}]}
