<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><meta http-equiv="content-type" content="text/html; charset=utf-8" class=""><div dir="auto" class=""><div class=""></div><div class=""><br class=""></div><div class=""><br class="">On Mar 30, 2018, at 4:08 AM, Renat Akhmerov <<a href="mailto:renat.akhmerov@gmail.com" class="">renat.akhmerov@gmail.com</a>> wrote:<br class=""><br class=""></div><blockquote type="cite" class=""><div class="">

<title class=""></title>


<div name="messageBodySection" style="font-size: 14px; font-family: -apple-system, BlinkMacSystemFont, sans-serif;" class="">On 29 Mar 2018, 20:20 +0700, Doug Hellmann <<a href="mailto:doug@doughellmann.com" class="">doug@doughellmann.com</a>>, wrote:</div>
<div name="messageReplySection" style="font-size: 14px; font-family: -apple-system, BlinkMacSystemFont, sans-serif;" class=""><br class="">
<blockquote type="cite" style="margin: 5px 5px; padding-left: 10px; border-left: thin solid #1abc9c;" class="">What sorts of tools are you talking about building? <br class=""></blockquote>
<div class=""><br class=""></div>
<div class="">Well, some more high level functions to diagnose memory usage, especially aids to help find memory leaks. Or not even necessary memory leaks, we may also want/need to reduce the memory footprint. Although objgraph is very helpful on its own it is still pretty low level and, for example, if we want to inject some diagnostic message somewhere in the code (e.g. “top 5 object types whose total size increased memory consumption since the last call”) we’d have to directly invoke objgraph and remember what exact parameters to use to achieve that. I think it’d be more convenient to have some more high-level functions that already encapsulate all necessary logic related to using objgraph and achieve what’s needed. Also, I wouldn’t want to spread out uses of objgraph all of the code, I would better have one module that uses it. Just to reduce coupling with a 3rd party lib.</div>
<div class=""><br class=""></div>
<div class="">Sorry if that sounds too abstract now, I’ll try to come with concrete examples to demonstrate what I mean.</div>
<div class=""><br class=""></div>
<div class="">Renat<br class=""></div>
</div>


</div></blockquote><blockquote type="cite" class=""><div class=""><span class="">__________________________________________________________________________</span><br class=""><span class="">OpenStack Development Mailing List (not for usage questions)</span><br class=""><span class="">Unsubscribe: <a href="mailto:OpenStack-dev-request@lists.openstack.org" class="">OpenStack-dev-request@lists.openstack.org</a>?subject:unsubscribe</span><br class=""><span class=""><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" class="">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a></span><br class=""></div></blockquote><br class=""><div class="">It sounds like you have ideas for things that could either live in objgraph directly or a new library that wraps objgraph. Either way I think it’s a good idea to build something concrete so we can see the impact of integrating it. </div><div class=""><br class=""></div><div class="">You might want to have a look at oslo.reports as an integration point. </div><div class=""><br class=""></div><div class="">Doug</div><div class=""><br class=""></div></div></body></html>