Gya*_*ngh 5 python algorithm trie flamegraph
我在定期生成的特里中有一些统计数据。我想根据两次尝试之间的差异生成火焰图。我怎么做?
t = pygtrie.StringTrie(separator=os.path.sep)
for dirpath, unused_dirnames, filenames in os.walk(ROOT_DIR):
for filename in filenames:
filename = os.path.join(dirpath, filename)
try:
filestat = os.stat(filename)
except OSError:
continue
if stat.S_IFMT(filestat.st_mode) == stat.S_IFREG:
t[filename] = filestat.st_size
Run Code Online (Sandbox Code Playgroud)
不确定差异。但是您可以使用FlameGraph 工具在文件(或其他任何东西,如果您生成类似的输出)上绘制火焰图。
这是该工具的作者关于如何为文件系统制作火焰图的主题。使用此工具,您只需执行以下命令即可获取图表。
./files.pl /Users | ./flamegraph.pl --hash --countname=bytes > out.svg
Run Code Online (Sandbox Code Playgroud)
这是类似的工具 - duviz,它创建类似的图表,但对于 CLI 来说不是作为图像输出。优点 - 它是用 Python 编写的。