)]}'
{"specs/juno/osprofiler_plugin.rst":[{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"9038f939b7e7a51108cbe4ddbe6668f41e46d3c6","unresolved":false,"context_lines":[{"line_number":23,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"In OpenStack we have bunch of services inside every project. It\u0027s really hard"},{"line_number":26,"context_line":"to understand where and why your request works slow. To resolve this issue we"},{"line_number":27,"context_line":"introduce tiny library, that can be easily integrated in all existing service"},{"line_number":28,"context_line":"and will allow us to get 1 trace (tree of elements) per API request."},{"line_number":29,"context_line":"It\u0027s simpler to see, then to explain sample:"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1ae5cdf2_bc892227","line":26,"updated":"2014-06-25 21:03:19.000000000","message":"When figuring out why the request runs slowly, presumably the trace data accumulated by osprofiler need to be drilled down into, right?\n\nHow would analysis this be achieved if the ceilometer notification-agent was consuming and persisting the trace notifications?\n\nIs the ceilometer API suitable for this kind of diagnostic interpretation?","commit_id":"a09fc2e03268688b710b70a581789797883ce067"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"1b9b9617c0a6dc6fc2997336fcb58fcf7b447421","unresolved":false,"context_lines":[{"line_number":23,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"In OpenStack we have bunch of services inside every project. It\u0027s really hard"},{"line_number":26,"context_line":"to understand where and why your request works slow. To resolve this issue we"},{"line_number":27,"context_line":"introduce tiny library, that can be easily integrated in all existing service"},{"line_number":28,"context_line":"and will allow us to get 1 trace (tree of elements) per API request."},{"line_number":29,"context_line":"It\u0027s simpler to see, then to explain sample:"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1ae5cdf2_7c287a97","line":26,"in_reply_to":"1ae5cdf2_bc892227","updated":"2014-06-25 21:11:54.000000000","message":"Yep it works good. \n\n1) For every event we are sending 2 notifications (when it started and when finished)\n\n2) Every notification contains 2 ids (parent trace element, current trace element id) \u003d\u003e so we are able to build tree \n\n3) To be able to retrieve all trace elements by one request we are sending as well base_id, that is similar for all trace elements related to one trace.\nAs well we are using for resource id next tempalte \"profiler-\u003cbase_id\u003e\". \n\n\nSo Ceilometer API is great for this:\n\nceil.query_samples.query(\u0027{\"\u003d\": {\"resource_id\": \"profiler-%s\"}}\u0027 % base_id, None, None)","commit_id":"a09fc2e03268688b710b70a581789797883ce067"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"9038f939b7e7a51108cbe4ddbe6668f41e46d3c6","unresolved":false,"context_lines":[{"line_number":37,"context_line":"Proposed change"},{"line_number":38,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Add new Ceilometer notification pluging, that will collect notifications"},{"line_number":41,"context_line":"related to profiler."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1ae5cdf2_3ce0b2f7","line":40,"updated":"2014-06-25 21:03:19.000000000","message":"s/pluging/plugin/","commit_id":"a09fc2e03268688b710b70a581789797883ce067"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"9038f939b7e7a51108cbe4ddbe6668f41e46d3c6","unresolved":false,"context_lines":[{"line_number":44,"context_line":"Alternatives"},{"line_number":45,"context_line":"------------"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"Use existing notification plugin. Dislike this idea cause it will produce mess"},{"line_number":48,"context_line":"from notification \u0026 profiler notification that have different nature and"},{"line_number":49,"context_line":"purpose."},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1ae5cdf2_9c2aa62d","line":47,"updated":"2014-06-25 21:03:19.000000000","message":"Can you provide a reference to the code for this \"existing notification plugin\"?\n\nI\u0027d be interested in seeing where and how it currently stores the data it derives from the incoming trace notifications and whether this data model would fit comfortably with the ceilometer notification agent and data storage logic.","commit_id":"a09fc2e03268688b710b70a581789797883ce067"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"1b9b9617c0a6dc6fc2997336fcb58fcf7b447421","unresolved":false,"context_lines":[{"line_number":44,"context_line":"Alternatives"},{"line_number":45,"context_line":"------------"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"Use existing notification plugin. Dislike this idea cause it will produce mess"},{"line_number":48,"context_line":"from notification \u0026 profiler notification that have different nature and"},{"line_number":49,"context_line":"purpose."},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1ae5cdf2_97fd210b","line":47,"in_reply_to":"1ae5cdf2_9c2aa62d","updated":"2014-06-25 21:11:54.000000000","message":"seems like I said here crap\u003d) sorry for that","commit_id":"a09fc2e03268688b710b70a581789797883ce067"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"9038f939b7e7a51108cbe4ddbe6668f41e46d3c6","unresolved":false,"context_lines":[{"line_number":79,"context_line":"It depends on how heavy you are using osprofiler. By default even if everything"},{"line_number":80,"context_line":"is turned on, osprofiler won\u0027t sent any notifications."},{"line_number":81,"context_line":"profiler will send notifications only in case if person that knows hmac key"},{"line_number":82,"context_line":"sends special trace info in special header."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"Other deployer impact"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1ae5cdf2_fcde4a3d","line":82,"updated":"2014-06-25 21:03:19.000000000","message":"In the case where it is both (a) enabled and (b) used for tracing *some* requests, can you give a sense of the volume of data generated for every traced request?","commit_id":"a09fc2e03268688b710b70a581789797883ce067"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"a03bddc0a9dee420cd5194163bb153a9a8b43a70","unresolved":false,"context_lines":[{"line_number":79,"context_line":"It depends on how heavy you are using osprofiler. By default even if everything"},{"line_number":80,"context_line":"is turned on, osprofiler won\u0027t sent any notifications."},{"line_number":81,"context_line":"profiler will send notifications only in case if person that knows hmac key"},{"line_number":82,"context_line":"sends special trace info in special header."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"Other deployer impact"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1ae5cdf2_37c36d3a","line":82,"in_reply_to":"1ae5cdf2_fcde4a3d","updated":"2014-06-25 21:23:23.000000000","message":"It really depends on:\n1) request\n2) amount of trace points \n\nThe one of worst methods is boot vm. If we trace all rest/rpc/db calls via all services raw data (from sample query) will be about 150kb. \n\nIf we add more points it will create more data.","commit_id":"a09fc2e03268688b710b70a581789797883ce067"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"2930741276fe22238059431380b2f4f3f54aa754","unresolved":false,"context_lines":[{"line_number":81,"context_line":"sends special trace info in special header."},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"Amount of data that will be send depends on API request. One of worst API call"},{"line_number":84,"context_line":"is boot VM. If we trace all rest/rpc/db calls it will be about 150kb of"},{"line_number":85,"context_line":"samples."},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"Other deployer impact"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1ae5cdf2_9aab6ad5","line":84,"updated":"2014-06-26 14:25:51.000000000","message":"so this would require clear caveats I think to use *sparingly* (in docco etc.)\n\ni.e. definitely not to be routinely used, only for a small selected subset of API requests","commit_id":"8c52ff5bae4a4bc172dea064ac23ef407f54af41"},{"author":{"_account_id":9562,"name":"Ildiko Vancsa","email":"ildiko.vancsa@gmail.com","username":"ildikov"},"change_message_id":"67752f6a6c0adc26961b79ed939b2db155332be6","unresolved":false,"context_lines":[{"line_number":149,"context_line":"Documentation Impact"},{"line_number":150,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"None"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"References"},{"line_number":155,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1ae5cdf2_71ddd740","line":152,"updated":"2014-06-26 21:17:05.000000000","message":"I think what is mentioned in the performance/scalability section that should be mentioned in Ceilometer\u0027s documentation too as a warning that if profiling is turned on and in use, then it can have some impact on the DB and prolly also warn about the DDOS, which well, does not sound too good, so would be better to avoid.","commit_id":"460767505b430ad6b07e224fc20c38538ec9d437"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"84b6960c73966efffa62ebc1f481ae8d1c5178fa","unresolved":false,"context_lines":[{"line_number":149,"context_line":"Documentation Impact"},{"line_number":150,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"None"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"References"},{"line_number":155,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1ae5cdf2_2a3d91bb","line":152,"in_reply_to":"1ae5cdf2_71ddd740","updated":"2014-06-27 02:53:29.000000000","message":"Done, thanks for review.","commit_id":"460767505b430ad6b07e224fc20c38538ec9d437"}]}
