)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"363bc105fe5d36d3ce4fee41605baf178294de76","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     dotrontron \u003czadoraemonzu@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2018-11-04 00:53:56 +0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"modify and add doc guide"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"fixed error following the exist comments"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: I179720cb7042c96142945190c9b9a4584fa22b0c"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"3f79a3b5_4fccb5bd","line":9,"range":{"start_line":7,"start_character":0,"end_line":9,"end_character":40},"updated":"2018-11-04 03:38:25.000000000","message":"Please update this commit message","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"change_message_id":"45acb1a52ff89e8bd7ba34d7f614f7296178befe","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     dotrontron \u003czadoraemonzu@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2018-11-25 14:12:48 +0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"modify files: api, background, collector, setup"},{"line_number":8,"context_line":" following the exist comments"},{"line_number":9,"context_line":"remove redundance `space`"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"3f79a3b5_3377e63e","line":7,"updated":"2018-12-10 17:15:36.000000000","message":"Can you add a blank line after this? The way it\u0027s formatted right now the entire commit message will be included in the git oneline output, which is not ideal.","commit_id":"07cf6a182eefa53b50349d8528cb174af6099ace"}],"doc/source/user/api.rst":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":55,"context_line":"How profiler works?"},{"line_number":56,"context_line":"-------------------"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"When the request passes the tracepoint, it calls `notifier` that is defied in OS provider source code"},{"line_number":59,"context_line":"and what notifier does is to store data like timestamp, name of service that cause notifier and so on to the trace database (redis, jaeger tracing, mongoDB, elasticSearch, loginsite)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"* **profiler.Trace()** and **@profiler.trace()** are just syntax sugar,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_f0b92beb","line":59,"range":{"start_line":58,"start_character":0,"end_line":59,"end_character":182},"updated":"2018-10-31 11:05:06.000000000","message":"Can you wrap this, please? I\u0027m not actually sure why the CI isn\u0027t failing on it","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":55,"context_line":"How profiler works?"},{"line_number":56,"context_line":"-------------------"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"When the request passes the tracepoint, it calls `notifier` that is defied in OS provider source code"},{"line_number":59,"context_line":"and what notifier does is to store data like timestamp, name of service that cause notifier and so on to the trace database (redis, jaeger tracing, mongoDB, elasticSearch, loginsite)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"* **profiler.Trace()** and **@profiler.trace()** are just syntax sugar,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_2911395d","line":59,"range":{"start_line":58,"start_character":0,"end_line":59,"end_character":182},"in_reply_to":"3f79a3b5_f0b92beb","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":55,"context_line":"How profiler works?"},{"line_number":56,"context_line":"-------------------"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"When the request passes the tracepoint, it calls `notifier` that is defied in OS provider"},{"line_number":59,"context_line":"source code and what notifier does is to store data like timestamp, name of service"},{"line_number":60,"context_line":"that cause notifier and so on to the trace database"},{"line_number":61,"context_line":"(redis, jaeger tracing, mongoDB, elasticSearch, loginsite)"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_0f9f9db3","line":58,"range":{"start_line":58,"start_character":78,"end_line":58,"end_character":89},"updated":"2018-11-04 03:37:20.000000000","message":"OSProfiler?","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":55,"context_line":"How profiler works?"},{"line_number":56,"context_line":"-------------------"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"When the request passes the tracepoint, it calls `notifier` that is defied in OS provider"},{"line_number":59,"context_line":"source code and what notifier does is to store data like timestamp, name of service"},{"line_number":60,"context_line":"that cause notifier and so on to the trace database"},{"line_number":61,"context_line":"(redis, jaeger tracing, mongoDB, elasticSearch, loginsite)"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_cfd68555","line":58,"range":{"start_line":58,"start_character":79,"end_line":58,"end_character":89},"updated":"2018-11-04 03:37:20.000000000","message":"try to limit line length below 80 characters","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":58,"context_line":"When the request passes the tracepoint, it calls `notifier` that is defied in OS provider"},{"line_number":59,"context_line":"source code and what notifier does is to store data like timestamp, name of service"},{"line_number":60,"context_line":"that cause notifier and so on to the trace database"},{"line_number":61,"context_line":"(redis, jaeger tracing, mongoDB, elasticSearch, loginsite)"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"* **profiler.Trace()** and **@profiler.trace()** are just syntax sugar,"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_6f9891ca","line":61,"range":{"start_line":61,"start_character":33,"end_line":61,"end_character":46},"updated":"2018-11-04 03:37:20.000000000","message":"`elasticsearch` or `Elasticsearch`","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":58,"context_line":"When the request passes the tracepoint, it calls `notifier` that is defied in OS provider"},{"line_number":59,"context_line":"source code and what notifier does is to store data like timestamp, name of service"},{"line_number":60,"context_line":"that cause notifier and so on to the trace database"},{"line_number":61,"context_line":"(redis, jaeger tracing, mongoDB, elasticSearch, loginsite)"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"* **profiler.Trace()** and **@profiler.trace()** are just syntax sugar,"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_4f959593","line":61,"range":{"start_line":61,"start_character":24,"end_line":61,"end_character":31},"updated":"2018-11-04 03:37:20.000000000","message":"`mongodb` or `mongo` or `MongoDB`","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":55,"context_line":"How profiler works?"},{"line_number":56,"context_line":"-------------------"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"When the request passes the tracepoint, it calls `notifier` that is defied in OS provider"},{"line_number":59,"context_line":"source code and what notifier does is to store data like timestamp, name of service"},{"line_number":60,"context_line":"that cause notifier and so on to the trace database"},{"line_number":61,"context_line":"(redis, jaeger tracing, mongoDB, elasticSearch, loginsite)"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"* **profiler.Trace()** and **@profiler.trace()** are just syntax sugar,"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_2fa299fc","line":61,"range":{"start_line":58,"start_character":0,"end_line":61,"end_character":58},"updated":"2018-11-04 03:37:20.000000000","message":"this should be re-write or move to other location","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":58,"context_line":"When the request passes the tracepoint, it calls `notifier` that is defied in OS provider"},{"line_number":59,"context_line":"source code and what notifier does is to store data like timestamp, name of service"},{"line_number":60,"context_line":"that cause notifier and so on to the trace database"},{"line_number":61,"context_line":"(redis, jaeger tracing, mongoDB, elasticSearch, loginsite)"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"* **profiler.Trace()** and **@profiler.trace()** are just syntax sugar,"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_af58e924","line":61,"range":{"start_line":61,"start_character":48,"end_line":61,"end_character":57},"updated":"2018-11-04 03:37:20.000000000","message":"typo","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"change_message_id":"45acb1a52ff89e8bd7ba34d7f614f7296178befe","unresolved":false,"context_lines":[{"line_number":55,"context_line":"How profiler works?"},{"line_number":56,"context_line":"-------------------"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"When the request passes the tracepoint, it calls `notifier` that is defied in OS provider"},{"line_number":59,"context_line":"source code and what notifier does is to store data like timestamp, name of service"},{"line_number":60,"context_line":"that cause notifier and so on to the trace database"},{"line_number":61,"context_line":"(redis, jaeger tracing, mongoDB, elasticSearch, loginsite)"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3f79a3b5_b383f605","line":58,"range":{"start_line":58,"start_character":68,"end_line":58,"end_character":74},"updated":"2018-12-10 17:15:36.000000000","message":"*defined","commit_id":"07cf6a182eefa53b50349d8528cb174af6099ace"}],"doc/source/user/background.rst":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":11,"context_line":"To resolve this issue, we introduce a tiny but powerful library,"},{"line_number":12,"context_line":"**osprofiler**, that is going to be used by all OpenStack projects and their"},{"line_number":13,"context_line":"python clients. It generates 1 trace per request, that goes through"},{"line_number":14,"context_line":"all involved services, and builds a tree of calls. Otherwise, It can generate trace report in: HTML/JSON/DOT."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"It can trace and categorize WSGI, RPC, DB calls"},{"line_number":17,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_30948341","line":14,"range":{"start_line":14,"start_character":51,"end_line":14,"end_character":109},"updated":"2018-10-31 11:05:06.000000000","message":"ditto - this is \u003e 80 chars","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":11,"context_line":"To resolve this issue, we introduce a tiny but powerful library,"},{"line_number":12,"context_line":"**osprofiler**, that is going to be used by all OpenStack projects and their"},{"line_number":13,"context_line":"python clients. It generates 1 trace per request, that goes through"},{"line_number":14,"context_line":"all involved services, and builds a tree of calls. Otherwise, It can generate trace report in: HTML/JSON/DOT."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"It can trace and categorize WSGI, RPC, DB calls"},{"line_number":17,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_c907651e","line":14,"range":{"start_line":14,"start_character":51,"end_line":14,"end_character":109},"in_reply_to":"3f79a3b5_30948341","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"It can trace and categorize WSGI, RPC, DB calls"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"A trace contains"},{"line_number":19,"context_line":"----------------"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"* Call hierachy"},{"line_number":22,"context_line":"* Time spent in each service/methods"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_f09e0b67","line":19,"range":{"start_line":18,"start_character":0,"end_line":19,"end_character":16},"updated":"2018-10-31 11:05:06.000000000","message":"I don\u0027t think this is a header. Could you just make it a standard sentence, please?\n\n  A trace contains:","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"It can trace and categorize WSGI, RPC, DB calls"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"A trace contains"},{"line_number":19,"context_line":"----------------"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"* Call hierachy"},{"line_number":22,"context_line":"* Time spent in each service/methods"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_a9fc690d","line":19,"range":{"start_line":18,"start_character":0,"end_line":19,"end_character":16},"in_reply_to":"3f79a3b5_f09e0b67","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"**The scope of this library is quite different:**"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"* We do not want tight coupling with a non-OpenStack solution"},{"line_number":34,"context_line":"* We should be able to enable or disable tracing without restarting the services"},{"line_number":35,"context_line":"* We should be able to enable tracing for specific API request"},{"line_number":36,"context_line":"* Only certain users should be able to enable tracing"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"* We are interested in getting one trace of points from different services,"},{"line_number":39,"context_line":"  not tracing all Python calls inside one process."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_708afb1e","line":36,"range":{"start_line":33,"start_character":0,"end_line":36,"end_character":53},"updated":"2018-10-31 11:05:06.000000000","message":"nit: Could you put a newline between each of these, like the other points below","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"**The scope of this library is quite different:**"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"* We do not want tight coupling with a non-OpenStack solution"},{"line_number":34,"context_line":"* We should be able to enable or disable tracing without restarting the services"},{"line_number":35,"context_line":"* We should be able to enable tracing for specific API request"},{"line_number":36,"context_line":"* Only certain users should be able to enable tracing"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"* We are interested in getting one trace of points from different services,"},{"line_number":39,"context_line":"  not tracing all Python calls inside one process."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_74fce40a","line":36,"range":{"start_line":33,"start_character":0,"end_line":36,"end_character":53},"in_reply_to":"3f79a3b5_708afb1e","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":11,"context_line":"To resolve this issue, we introduce a tiny but powerful library,"},{"line_number":12,"context_line":"**osprofiler**, that is going to be used by all OpenStack projects and their"},{"line_number":13,"context_line":"python clients. It generates 1 trace per request, that goes through"},{"line_number":14,"context_line":"all involved services, and builds a tree of calls."},{"line_number":15,"context_line":"Ohterwise, It can generate trace report in: HTML/JSON/DOT."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"It can trace and categorize WSGI, RPC, DB calls"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_afad49e8","line":14,"updated":"2018-11-04 03:37:20.000000000","message":"add a new line here","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":12,"context_line":"**osprofiler**, that is going to be used by all OpenStack projects and their"},{"line_number":13,"context_line":"python clients. It generates 1 trace per request, that goes through"},{"line_number":14,"context_line":"all involved services, and builds a tree of calls."},{"line_number":15,"context_line":"Ohterwise, It can generate trace report in: HTML/JSON/DOT."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"It can trace and categorize WSGI, RPC, DB calls"},{"line_number":18,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_cfa8c5db","line":15,"range":{"start_line":15,"start_character":0,"end_line":15,"end_character":9},"updated":"2018-11-04 03:37:20.000000000","message":"typo","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"* We do not want tight coupling with a non-OpenStack solution"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"* We should be able to enable or disable tracing without restarting the services"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"* We should be able to enable tracing for specific API request"},{"line_number":38,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_4f7ef56d","line":35,"range":{"start_line":35,"start_character":0,"end_line":35,"end_character":80},"updated":"2018-11-04 03:37:20.000000000","message":"currently, we still need to restart the service\n\nwe can use `oslo.config`, but not all projects support mutable configuration\n\n[1] https://docs.openstack.org/oslo.config/ocata/mutable.html","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"change_message_id":"45acb1a52ff89e8bd7ba34d7f614f7296178befe","unresolved":false,"context_lines":[{"line_number":12,"context_line":"**osprofiler**, that is going to be used by all OpenStack projects and their"},{"line_number":13,"context_line":"python clients. It generates 1 trace per request, that goes through"},{"line_number":14,"context_line":"all involved services, and builds a tree of calls."},{"line_number":15,"context_line":"When the request passes the tracepoint, it calls `notifier` that is"},{"line_number":16,"context_line":"defied in OS provider source code and what notifier does is to store"},{"line_number":17,"context_line":"data like timestamp, name of service that cause notifier and so on to"},{"line_number":18,"context_line":"the trace database"},{"line_number":19,"context_line":"(redis, jaeger tracing, mongoDB, elasticSearch, loginsite)"},{"line_number":20,"context_line":"Ohterwise, It can generate trace report in: HTML/JSON/DOT,"},{"line_number":21,"context_line":"trace and categorize WSGI, RPC, DB calls"},{"line_number":22,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3f79a3b5_53970238","line":19,"range":{"start_line":15,"start_character":0,"end_line":19,"end_character":58},"updated":"2018-12-10 17:15:36.000000000","message":"This seems to be an exact duplicate of the addition to the api doc. Can we just write it one place and refer to it from the other?","commit_id":"07cf6a182eefa53b50349d8528cb174af6099ace"}],"doc/source/user/collectors.rst":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Redis"},{"line_number":8,"context_line":"-----"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"* Overview"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"  The Redis driver allows profiling data to be collected into a redis"},{"line_number":13,"context_line":"  database instance. The traces are stored as key-value pairs where the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_b0e413e1","line":10,"range":{"start_line":10,"start_character":0,"end_line":10,"end_character":10},"updated":"2018-10-31 11:05:06.000000000","message":"Want to make these headers? That can be a follow-up","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Redis"},{"line_number":8,"context_line":"-----"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"* Overview"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"  The Redis driver allows profiling data to be collected into a redis"},{"line_number":13,"context_line":"  database instance. The traces are stored as key-value pairs where the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_1403300e","line":10,"range":{"start_line":10,"start_character":0,"end_line":10,"end_character":10},"in_reply_to":"3f79a3b5_b0e413e1","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":46,"context_line":"      Defaults to: \"mymaster\""},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Config services for redis"},{"line_number":49,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"- Services: Nova, keystone, glance, cinder"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_f087eb10","line":49,"range":{"start_line":49,"start_character":0,"end_line":49,"end_character":25},"updated":"2018-10-31 11:05:06.000000000","message":"Could you switch the order of these headers underlines\n\n   \u003d\u003d\u003d\n   ---\n   ~~~\n   ^^^","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":46,"context_line":"      Defaults to: \"mymaster\""},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Config services for redis"},{"line_number":49,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"- Services: Nova, keystone, glance, cinder"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_34066c1d","line":49,"range":{"start_line":49,"start_character":0,"end_line":49,"end_character":25},"in_reply_to":"3f79a3b5_f087eb10","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Config services for redis"},{"line_number":49,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"- Services: Nova, keystone, glance, cinder"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"Step 1-location of files config:"},{"line_number":54,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_d0874f0a","line":51,"range":{"start_line":50,"start_character":0,"end_line":51,"end_character":42},"updated":"2018-10-31 11:05:06.000000000","message":"You should call out that this is assuming a DevStack deployment too. The instructions won\u0027t necessarily apply for e.g. TripleO or Kolla","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Config services for redis"},{"line_number":49,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"- Services: Nova, keystone, glance, cinder"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"Step 1-location of files config:"},{"line_number":54,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_d40cd83b","line":51,"range":{"start_line":50,"start_character":0,"end_line":51,"end_character":42},"in_reply_to":"3f79a3b5_d0874f0a","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":80,"context_line":"    sudo systemctl restart \u003cservice-name\u003e"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"replacing `\u003cservice-name\u003e` by the corresponding name:"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Nova: devstack@n-api.service"},{"line_number":86,"context_line":"* Keystone: devstack@keystone.service \u003cneglected\u003e"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_907c7723","line":83,"range":{"start_line":83,"start_character":27,"end_line":83,"end_character":29},"updated":"2018-10-31 11:05:06.000000000","message":"with","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":80,"context_line":"    sudo systemctl restart \u003cservice-name\u003e"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"replacing `\u003cservice-name\u003e` by the corresponding name:"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Nova: devstack@n-api.service"},{"line_number":86,"context_line":"* Keystone: devstack@keystone.service \u003cneglected\u003e"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_f4079414","line":83,"range":{"start_line":83,"start_character":27,"end_line":83,"end_character":29},"in_reply_to":"3f79a3b5_907c7723","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":82,"context_line":""},{"line_number":83,"context_line":"replacing `\u003cservice-name\u003e` by the corresponding name:"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Nova: devstack@n-api.service"},{"line_number":86,"context_line":"* Keystone: devstack@keystone.service \u003cneglected\u003e"},{"line_number":87,"context_line":"* Cinder: devstack@c-api.service"},{"line_number":88,"context_line":"* Glance: devstack@g-api.service"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_7073db50","line":85,"range":{"start_line":85,"start_character":8,"end_line":85,"end_character":30},"updated":"2018-10-31 11:05:06.000000000","message":"format as ``literal``","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":82,"context_line":""},{"line_number":83,"context_line":"replacing `\u003cservice-name\u003e` by the corresponding name:"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Nova: devstack@n-api.service"},{"line_number":86,"context_line":"* Keystone: devstack@keystone.service \u003cneglected\u003e"},{"line_number":87,"context_line":"* Cinder: devstack@c-api.service"},{"line_number":88,"context_line":"* Glance: devstack@g-api.service"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_9416604a","line":85,"range":{"start_line":85,"start_character":8,"end_line":85,"end_character":30},"in_reply_to":"3f79a3b5_7073db50","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":91,"context_line":"Jaeger"},{"line_number":92,"context_line":"------"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"Why jaeger"},{"line_number":95,"context_line":"^^^^^^^^^^"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"* High Scalability"},{"line_number":98,"context_line":"* Native support for OpenTracing"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_f0036b74","line":95,"range":{"start_line":94,"start_character":0,"end_line":95,"end_character":10},"updated":"2018-10-31 11:05:06.000000000","message":"There\u0027s no \"Why Redis\" section above. Could you ensure both are using the same styles to help side-by-side comparison? For example:\n\n  * Overview\n\n    Jaeger is an open source, end-to-end distributed tracing system that provides:\n\n    * High Scalability\n    ...","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":91,"context_line":"Jaeger"},{"line_number":92,"context_line":"------"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"Why jaeger"},{"line_number":95,"context_line":"^^^^^^^^^^"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"* High Scalability"},{"line_number":98,"context_line":"* Native support for OpenTracing"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_b4111c53","line":95,"range":{"start_line":94,"start_character":0,"end_line":95,"end_character":10},"in_reply_to":"3f79a3b5_f0036b74","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"More detail: https://github.com/jaegertracing/jaeger"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"Start Jaeger"},{"line_number":108,"context_line":"^^^^^^^^^^^^"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"We will be using an open source distributed tracing system Jaeger to collect and view the traces and analyze the application’s behavior. Let’s run Jaeger backend as an all-in-one Docker image (see up to date instructions):"},{"line_number":111,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_10ece7ba","line":108,"range":{"start_line":107,"start_character":0,"end_line":108,"end_character":12},"updated":"2018-10-31 11:05:06.000000000","message":"As with Redis:\n\n  * Setup","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"More detail: https://github.com/jaegertracing/jaeger"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"Start Jaeger"},{"line_number":108,"context_line":"^^^^^^^^^^^^"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"We will be using an open source distributed tracing system Jaeger to collect and view the traces and analyze the application’s behavior. Let’s run Jaeger backend as an all-in-one Docker image (see up to date instructions):"},{"line_number":111,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_542208a8","line":108,"range":{"start_line":107,"start_character":0,"end_line":108,"end_character":12},"in_reply_to":"3f79a3b5_10ece7ba","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":107,"context_line":"Start Jaeger"},{"line_number":108,"context_line":"^^^^^^^^^^^^"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"We will be using an open source distributed tracing system Jaeger to collect and view the traces and analyze the application’s behavior. Let’s run Jaeger backend as an all-in-one Docker image (see up to date instructions):"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":".. code-block:: bash"},{"line_number":113,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_30e9e3aa","line":110,"range":{"start_line":110,"start_character":0,"end_line":110,"end_character":222},"updated":"2018-10-31 11:05:06.000000000","message":"Wrap this","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":107,"context_line":"Start Jaeger"},{"line_number":108,"context_line":"^^^^^^^^^^^^"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"We will be using an open source distributed tracing system Jaeger to collect and view the traces and analyze the application’s behavior. Let’s run Jaeger backend as an all-in-one Docker image (see up to date instructions):"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":".. code-block:: bash"},{"line_number":113,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_7425c4ac","line":110,"range":{"start_line":110,"start_character":0,"end_line":110,"end_character":222},"in_reply_to":"3f79a3b5_30e9e3aa","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":109,"context_line":""},{"line_number":110,"context_line":"We will be using an open source distributed tracing system Jaeger to collect and view the traces and analyze the application’s behavior. Let’s run Jaeger backend as an all-in-one Docker image (see up to date instructions):"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":".. code-block:: bash"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"   $ docker run -d --name jaeger \\"},{"line_number":115,"context_line":"  -e COLLECTOR_ZIPKIN_HTTP_PORT\u003d9411 \\"},{"line_number":116,"context_line":"  -p 5775:5775/udp \\"},{"line_number":117,"context_line":"  -p 6831:6831/udp \\"},{"line_number":118,"context_line":"  -p 6832:6832/udp \\"},{"line_number":119,"context_line":"  -p 5778:5778 \\"},{"line_number":120,"context_line":"  -p 16686:16686 \\"},{"line_number":121,"context_line":"  -p 14268:14268 \\"},{"line_number":122,"context_line":"  -p 9411:9411 \\"},{"line_number":123,"context_line":"  jaegertracing/all-in-one:1.7"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"Once the container starts, open http://127.0.0.1:16686/ in the browser to access the Jaeger UI."},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Read more: https://www.jaegertracing.io/docs/1.7/getting-started/"},{"line_number":128,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_70c19b30","line":125,"range":{"start_line":112,"start_character":0,"end_line":125,"end_character":95},"updated":"2018-10-31 11:05:06.000000000","message":"Please don\u0027t duplicate this here as it\u0027s likely to get out of date. Just do what you did for Redis and link to the official docs. You even have the link here already :)","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":109,"context_line":""},{"line_number":110,"context_line":"We will be using an open source distributed tracing system Jaeger to collect and view the traces and analyze the application’s behavior. Let’s run Jaeger backend as an all-in-one Docker image (see up to date instructions):"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":".. code-block:: bash"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"   $ docker run -d --name jaeger \\"},{"line_number":115,"context_line":"  -e COLLECTOR_ZIPKIN_HTTP_PORT\u003d9411 \\"},{"line_number":116,"context_line":"  -p 5775:5775/udp \\"},{"line_number":117,"context_line":"  -p 6831:6831/udp \\"},{"line_number":118,"context_line":"  -p 6832:6832/udp \\"},{"line_number":119,"context_line":"  -p 5778:5778 \\"},{"line_number":120,"context_line":"  -p 16686:16686 \\"},{"line_number":121,"context_line":"  -p 14268:14268 \\"},{"line_number":122,"context_line":"  -p 9411:9411 \\"},{"line_number":123,"context_line":"  jaegertracing/all-in-one:1.7"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"Once the container starts, open http://127.0.0.1:16686/ in the browser to access the Jaeger UI."},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Read more: https://www.jaegertracing.io/docs/1.7/getting-started/"},{"line_number":128,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_141c9064","line":125,"range":{"start_line":112,"start_character":0,"end_line":125,"end_character":95},"in_reply_to":"3f79a3b5_70c19b30","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":10,"context_line":"Why redis"},{"line_number":11,"context_line":"~~~~~~~~~"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"  The Redis driver allows profiling data to be collected into a redis"},{"line_number":14,"context_line":"  database instance. The traces are stored as key-value pairs where the"},{"line_number":15,"context_line":"  key is a string built using trace ids and timestamps and the values"},{"line_number":16,"context_line":"  are JSON strings containing the trace information. A second driver is"},{"line_number":17,"context_line":"  included to use Redis Sentinel in addition to single node Redis."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Start redis"},{"line_number":20,"context_line":"~~~~~~~~~~~"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_6f81714c","line":17,"range":{"start_line":13,"start_character":0,"end_line":17,"end_character":66},"updated":"2018-11-04 03:37:20.000000000","message":"indent","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":19,"context_line":"Start redis"},{"line_number":20,"context_line":"~~~~~~~~~~~"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"* setup:"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"  Read more: https://redis.io/topics/quickstart"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_0f78fd7b","line":22,"range":{"start_line":22,"start_character":2,"end_line":22,"end_character":7},"updated":"2018-11-04 03:37:20.000000000","message":"`Setup`","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":19,"context_line":"Start redis"},{"line_number":20,"context_line":"~~~~~~~~~~~"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"* setup:"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"  Read more: https://redis.io/topics/quickstart"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_2f7b797a","line":22,"range":{"start_line":22,"start_character":7,"end_line":22,"end_character":8},"updated":"2018-11-04 03:37:20.000000000","message":"redundant","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":48,"context_line":"      value. Defaults to: 0.1 seconds"},{"line_number":49,"context_line":"    * sentinel_service_name: The name of the Sentinel service to use."},{"line_number":50,"context_line":"      Defaults to: \"mymaster\""},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"Config services for redis"},{"line_number":53,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~~~"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"- Assume that we deploy Services: Nova, Keystone, glance, cinder"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"Step 1-location of files config:"},{"line_number":58,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* Nova: /etc/nova/nova.conf"},{"line_number":61,"context_line":"* Keystone: /etc/keystone/keystone.conf \u003cneglected\u003e"},{"line_number":62,"context_line":"* Cinder: /etc/cinder/cinder.conf"},{"line_number":63,"context_line":"* Glance: /etc/glance/glance-api.conf"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Step 2-Adding content to files service"},{"line_number":66,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":".. code-block:: bash"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    [profiler]"},{"line_number":71,"context_line":"    enabled \u003d true"},{"line_number":72,"context_line":"    trace_sqlalchemy \u003d true"},{"line_number":73,"context_line":"    connection_string \u003d redis://localhost:6379"},{"line_number":74,"context_line":"    hmac_keys \u003d your encryption"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"`With keystone: trace_sqlalchemy \u003d false`"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"Step 3-Restart services"},{"line_number":80,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":".. code-block:: bash"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"    sudo systemctl restart \u003cservice-name\u003e"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"replacing `\u003cservice-name\u003e` with the corresponding name:"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"* Nova: ``devstack@n-api.service``"},{"line_number":90,"context_line":"* Keystone: ``devstack@keystone.service``"},{"line_number":91,"context_line":"* Cinder: ``devstack@c-api.service``"},{"line_number":92,"context_line":"* Glance: ``devstack@g-api.service``"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"Jaeger"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_cf91a59d","line":92,"range":{"start_line":51,"start_character":0,"end_line":92,"end_character":36},"updated":"2018-11-04 03:37:20.000000000","message":"this should be re-write","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":86,"context_line":""},{"line_number":87,"context_line":"replacing `\u003cservice-name\u003e` with the corresponding name:"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"* Nova: ``devstack@n-api.service``"},{"line_number":90,"context_line":"* Keystone: ``devstack@keystone.service``"},{"line_number":91,"context_line":"* Cinder: ``devstack@c-api.service``"},{"line_number":92,"context_line":"* Glance: ``devstack@g-api.service``"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"Jaeger"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_ef8ca182","line":92,"range":{"start_line":89,"start_character":0,"end_line":92,"end_character":36},"updated":"2018-11-04 03:37:20.000000000","message":"too specific","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":111,"context_line":"Start Jaeger"},{"line_number":112,"context_line":"~~~~~~~~~~~~"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"* setup:"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"  Read more: https://www.jaegertracing.io/docs/1.7/getting-started/"},{"line_number":117,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_8f8bad67","line":114,"range":{"start_line":114,"start_character":2,"end_line":114,"end_character":8},"updated":"2018-11-04 03:37:20.000000000","message":"the same with above","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":"* setup:"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"  Read more: https://www.jaegertracing.io/docs/1.7/getting-started/"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"* Install Jaeger-client"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_af86a95e","line":116,"range":{"start_line":116,"start_character":13,"end_line":116,"end_character":67},"updated":"2018-11-04 03:37:20.000000000","message":"should be this URL instead: https://www.jaegertracing.io/docs","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":120,"context_line":""},{"line_number":121,"context_line":".. code-block:: bash"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    sudo pip install jaeger-client"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"Config services for jaeger"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_4fe3553b","line":123,"range":{"start_line":123,"start_character":4,"end_line":123,"end_character":9},"updated":"2018-11-04 03:37:20.000000000","message":"you can remove this","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":126,"context_line":"Config services for jaeger"},{"line_number":127,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~~~~"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"- Assume that we deploy Services: Nova, Keystone, glance, cinder"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"Step 1-location of files config:"},{"line_number":132,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"- Nova: /etc/nova/nova.conf"},{"line_number":135,"context_line":"- Keystone: /etc/keystone/keystone.conf \u003cneglected\u003e"},{"line_number":136,"context_line":"- Cinder: /etc/cinder/cinder.conf"},{"line_number":137,"context_line":"- Glance: /etc/glance/glance-api.conf"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"Step 2-Adding content to files service:"},{"line_number":140,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":".. code-block:: bash"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"    [profiler]"},{"line_number":145,"context_line":"    enabled \u003d true"},{"line_number":146,"context_line":"    trace_sqlalchemy \u003d true"},{"line_number":147,"context_line":"    connection_string \u003d jaeger://localhost:6831"},{"line_number":148,"context_line":"    hmac_keys \u003d your encryption"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"`With keystone: trace_sqlalchemy \u003d false`"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"Step 3-Restart services"},{"line_number":153,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":154,"context_line":""},{"line_number":155,"context_line":".. code-block:: bash"},{"line_number":156,"context_line":""},{"line_number":157,"context_line":"    sudo systemctl restart \u003cservice-name\u003e"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"replacing `\u003cservice-name\u003e` with the corresponding name:"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"* Nova: ``devstack@n-api.service``"},{"line_number":162,"context_line":"* Keystone: ``devstack@keystone.service``"},{"line_number":163,"context_line":"* Cinder: ``devstack@c-api.service``"},{"line_number":164,"context_line":"* Glance: ``devstack@g-api.service``"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_6fe6514c","line":164,"range":{"start_line":129,"start_character":0,"end_line":164,"end_character":36},"updated":"2018-11-04 03:37:20.000000000","message":"this should be re-write","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"}],"doc/source/user/index.rst":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":13,"context_line":"   :maxdepth: 2"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"   background"},{"line_number":16,"context_line":"   setup_env"},{"line_number":17,"context_line":"   api"},{"line_number":18,"context_line":"   integration"},{"line_number":19,"context_line":"   collectors"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_d00c2f98","line":16,"range":{"start_line":16,"start_character":3,"end_line":16,"end_character":12},"updated":"2018-10-31 11:05:06.000000000","message":"I know that the one below is wrong, but can you replace \u0027_\u0027 with \u0027-\u0027, as the latter make for far nicer URLs","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":13,"context_line":"   :maxdepth: 2"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"   background"},{"line_number":16,"context_line":"   setup_env"},{"line_number":17,"context_line":"   api"},{"line_number":18,"context_line":"   integration"},{"line_number":19,"context_line":"   collectors"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_341f4c5b","line":16,"range":{"start_line":16,"start_character":3,"end_line":16,"end_character":12},"in_reply_to":"3f79a3b5_d00c2f98","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"}],"doc/source/user/setup-env.rst":[{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"    .. code-block:: bash"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    enp0s3 Link encap:Ethernet  HWaddr 08:00:27:ea:97:9f"},{"line_number":32,"context_line":"        inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0"},{"line_number":33,"context_line":"        inet6 addr: fe80::d715:6025:f469:6f7c/64 Scope:Link"},{"line_number":34,"context_line":"        UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1"},{"line_number":35,"context_line":"        RX packets:1364291 errors:0 dropped:0 overruns:0 frame:0"},{"line_number":36,"context_line":"        TX packets:406550 errors:0 dropped:0 overruns:0 carrier:0"},{"line_number":37,"context_line":"        collisions:0 txqueuelen:1000"},{"line_number":38,"context_line":"        RX bytes:1415725472 (1.4 GB)  TX bytes:27942474 (27.9 MB)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    lo     Link encap:Local Loopback"},{"line_number":41,"context_line":"        inet addr:127.0.0.1  Mask:255.0.0.0"},{"line_number":42,"context_line":"        inet6 addr: ::1/128 Scope:Host"},{"line_number":43,"context_line":"        UP LOOPBACK RUNNING  MTU:65536  Metric:1"},{"line_number":44,"context_line":"        RX packets:229208 errors:0 dropped:0 overruns:0 frame:0"},{"line_number":45,"context_line":"        TX packets:229208 errors:0 dropped:0 overruns:0 carrier:0"},{"line_number":46,"context_line":"        collisions:0 txqueuelen:1000"},{"line_number":47,"context_line":"        RX bytes:89805124 (89.8 MB)  TX bytes:89805124 (89.8 MB)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    You’re looking for the addr: value in an interface other than lo.  For example, in this case, it’s 10.0.2.15.  Make note of that for the next step. If you run your VM on the cloud, make sure to use the public IP of your VM in the link."},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"#. Create a local.conf file"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_0fed5d23","line":49,"range":{"start_line":31,"start_character":2,"end_line":49,"end_character":239},"updated":"2018-11-04 03:37:20.000000000","message":"please remove this","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"a3104cd5f8aca5148650bcd96bfcea5ad474deb2","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        cat \u003e  local.conf \u003c\u003cEOF"},{"line_number":58,"context_line":"        [[local|localrc]]"},{"line_number":59,"context_line":"        ADMIN_PASSWORD\u003dsecret"},{"line_number":60,"context_line":"        DATABASE_PASSWORD\u003d\\$ADMIN_PASSWORD"},{"line_number":61,"context_line":"        RABBIT_PASSWORD\u003d\\$ADMIN_PASSWORD"},{"line_number":62,"context_line":"        SERVICE_PASSWORD\u003d\\$ADMIN_PASSWORD"},{"line_number":63,"context_line":"        HOST_IP\u003d10.0.2.15"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_2ff059fc","line":60,"range":{"start_line":60,"start_character":26,"end_line":60,"end_character":27},"updated":"2018-11-04 03:37:20.000000000","message":"remove this","commit_id":"aa4bee092e1763d040ed4f672091a0f15b58934a"},{"author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"change_message_id":"45acb1a52ff89e8bd7ba34d7f614f7296178befe","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    .. code-block:: bash"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"        sudo ifconfig"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"#. Create a local.conf file"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3f79a3b5_d3023271","line":25,"updated":"2018-12-10 17:15:36.000000000","message":"Nit: ifconfig is replaced by ip addr. As a result, I believe some distros are not installing ifconfig by default these days.","commit_id":"07cf6a182eefa53b50349d8528cb174af6099ace"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"c12ccd029cb0a1d842c8ff6efad9641bbee4106a","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"#. Create a local.conf file"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"    Create the local.conf file with 4 passwords "},{"line_number":31,"context_line":"    and your host IP, which you determined in the last step:"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    .. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3f79a3b5_ad06f118","line":30,"range":{"start_line":30,"start_character":47,"end_line":30,"end_character":48},"updated":"2018-11-30 16:20:43.000000000","message":"trailing white space","commit_id":"07cf6a182eefa53b50349d8528cb174af6099ace"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"c12ccd029cb0a1d842c8ff6efad9641bbee4106a","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        [[local|localrc]]"},{"line_number":37,"context_line":"        ADMIN_PASSWORD\u003dsecret"},{"line_number":38,"context_line":"        DATABASE_PASSWORD\u003d$ADMIN_PASSWORD"},{"line_number":39,"context_line":"        RABBIT_PASSWORD\u003d\\$ADMIN_PASSWORD"},{"line_number":40,"context_line":"        SERVICE_PASSWORD\u003d\\$ADMIN_PASSWORD"},{"line_number":41,"context_line":"        HOST_IP\u003d10.0.2.15"},{"line_number":42,"context_line":"        RECLONE\u003dyes"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3f79a3b5_0d1fe55d","line":39,"range":{"start_line":39,"start_character":24,"end_line":39,"end_character":25},"updated":"2018-11-30 16:20:43.000000000","message":"do not need this backslash","commit_id":"07cf6a182eefa53b50349d8528cb174af6099ace"},{"author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"change_message_id":"45acb1a52ff89e8bd7ba34d7f614f7296178befe","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        DATABASE_PASSWORD\u003d$ADMIN_PASSWORD"},{"line_number":39,"context_line":"        RABBIT_PASSWORD\u003d\\$ADMIN_PASSWORD"},{"line_number":40,"context_line":"        SERVICE_PASSWORD\u003d\\$ADMIN_PASSWORD"},{"line_number":41,"context_line":"        HOST_IP\u003d10.0.2.15"},{"line_number":42,"context_line":"        RECLONE\u003dyes"},{"line_number":43,"context_line":"        EOF"},{"line_number":44,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3f79a3b5_f3e88ea8","line":41,"updated":"2018-12-10 17:15:36.000000000","message":"You don\u0027t even strictly need HOST_IP if you\u0027re doing single-node devstack.","commit_id":"07cf6a182eefa53b50349d8528cb174af6099ace"},{"author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"change_message_id":"45acb1a52ff89e8bd7ba34d7f614f7296178befe","unresolved":false,"context_lines":[{"line_number":56,"context_line":""},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"Install OpenStack Client"},{"line_number":60,"context_line":"------------------------"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"After installing devstack, usually, openstackclient will be installed."}],"source_content_type":"text/x-rst","patch_set":6,"id":"3f79a3b5_5333825f","line":59,"updated":"2018-12-10 17:15:36.000000000","message":"Nit: I can\u0027t imagine a circumstance where this is necessary. OpenStackClient is a dependency to run devstack.","commit_id":"07cf6a182eefa53b50349d8528cb174af6099ace"}],"doc/source/user/setup_env.rst":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3f79a3b5_101aa7c6","updated":"2018-10-31 11:05:06.000000000","message":"You need to strip all the whitespace here","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3f79a3b5_f430f4ec","in_reply_to":"3f79a3b5_101aa7c6","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2ce2ad7d5420d6c03b8ce237f4c5577d3a9e6ef7","unresolved":false,"context_lines":[{"line_number":12,"context_line":"For local virtual machine"},{"line_number":13,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~~~"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"`Step 1`"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Change to the devstack directory:"},{"line_number":18,"context_line":".. code-block:: "},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    cd devstack/"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_9006b774","line":17,"range":{"start_line":15,"start_character":0,"end_line":17,"end_character":33},"updated":"2018-10-31 11:05:06.000000000","message":"Can you just make these bullet points.\n\n  #. Change to the devstack directory\n\n     .. code-block::\n\n         cd devstack/\n\netc.","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"},{"author":{"_account_id":29248,"name":"Ta Do","email":"zadoraemonzu@gmail.com","username":"dotrontron"},"change_message_id":"b88c936ea2c311e0b660712bb92c6d67979ef70e","unresolved":false,"context_lines":[{"line_number":12,"context_line":"For local virtual machine"},{"line_number":13,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~~~"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"`Step 1`"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Change to the devstack directory:"},{"line_number":18,"context_line":".. code-block:: "},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    cd devstack/"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_942f4088","line":17,"range":{"start_line":15,"start_character":0,"end_line":17,"end_character":33},"in_reply_to":"3f79a3b5_9006b774","updated":"2018-11-03 19:32:33.000000000","message":"Done","commit_id":"e9b33497e146d4e0c723056aab7ffad0f987ff1d"}]}
