この文書の現在のバージョンと選択したバージョンの差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
software:vizexec [2011/02/11 18:47] sunagae [VizEXEC] |
software:vizexec [2014/06/06 23:03] (現在) sunagae [Download] |
||
---|---|---|---|
ライン 10: | ライン 10: | ||
===== Demo video ===== | ===== Demo video ===== | ||
* 文字が小さくてすいません。。。 | * 文字が小さくてすいません。。。 | ||
+ | * これはリアルタイムに視覚化するサンプルです | ||
+ | |||
{{youtube>large:AdXfukHjwx0}} | {{youtube>large:AdXfukHjwx0}} | ||
+ | |||
+ | |||
+ | ===== 構成 ===== | ||
+ | ==== ファイルの場合 ==== | ||
+ | <graphviz dot right> | ||
+ | digraph usage { | ||
+ | node [fontsize=10 style=filled ]; | ||
+ | node [shape = box style=filled fillcolor="#FFF0F0"]; | ||
+ | cpp_prog[ label = "C++ Programs" ]; | ||
+ | py_prog[ label = "Python Programs" ]; | ||
+ | |||
+ | node [shape = ellipse fillcolor = "#CCCCFF"]; | ||
+ | py_lw[ label = "LogWriter for Python" ]; | ||
+ | cpp_lw[ label = "LogWriter for C++" ]; | ||
+ | |||
+ | node [shape = note]; | ||
+ | logfile[ label = "LogFile \n (File or Pipe)" fillcolor = "#FFFFFF"]; | ||
+ | |||
+ | node [shape = box]; | ||
+ | vizexec[ label = "vizexec.py (Visualizer)" fillcolor = "#F0FFF0" ]; | ||
+ | |||
+ | cpp_prog -> cpp_lw [ label = "Use marker" ]; | ||
+ | cpp_lw -> logfile [ label = "Output" ]; | ||
+ | py_prog -> py_lw [ label = "Use marker" ]; | ||
+ | py_lw -> logfile [ label = "Output" ]; | ||
+ | logfile -> vizexec [ label = "Read" ]; | ||
+ | } | ||
+ | </graphviz> | ||
+ | |||
+ | * LogFileのところをmkfifoとかでパイプ (FIFO) にするとリアルタイムな視覚化ができる | ||
+ | |||
+ | ==== TCPで接続する場合 ==== | ||
+ | <graphviz dot right> | ||
+ | digraph usage { | ||
+ | node [fontsize=10 style=filled ]; | ||
+ | node [shape = box style=filled fillcolor="#FFF0F0"]; | ||
+ | subgraph cluster_cpp_prog | ||
+ | { | ||
+ | label = "C++ Program (Process)" | ||
+ | node [shape = box style=filled fillcolor="#FFF0F0"]; | ||
+ | cpp_thread1 [ label = "Thread1" ]; | ||
+ | cpp_thread2 [ label = "Thread2" ]; | ||
+ | cpp_thread3 [ label = "Thread3" ]; | ||
+ | node [shape = ellipse fillcolor = "#CCCCFF"]; | ||
+ | cpp_lw[ label = "LogWriter for C++" ]; | ||
+ | } | ||
+ | node [shape = box style=filled fillcolor="#FFF0F0"]; | ||
+ | subgraph cluster_py_prog | ||
+ | { | ||
+ | label = "Python Program (Process)" | ||
+ | py_thread1 [ label = "Thread1" ]; | ||
+ | py_thread2 [ label = "Thread2" ]; | ||
+ | node [shape = ellipse fillcolor = "#CCCCFF"]; | ||
+ | py_lw[ label = "LogWriter for Python" ]; | ||
+ | } | ||
+ | |||
+ | |||
+ | node [shape = box]; | ||
+ | vizexec[ label = "vizexec.py (Visualize Server)" fillcolor = "#F0FFF0" ]; | ||
+ | |||
+ | node [shape = note]; | ||
+ | logfile[ label = "LogFile" fillcolor = "#FFFFFF"]; | ||
+ | |||
+ | cpp_thread1 -> cpp_lw [ ]; | ||
+ | cpp_thread2 -> cpp_lw [ ]; | ||
+ | cpp_thread3 -> cpp_lw [ label = "Use marker" ]; | ||
+ | cpp_lw -> vizexec [ label = "TCP/IP" ]; | ||
+ | py_thread1 -> py_lw [ ]; | ||
+ | py_thread2 -> py_lw [ label = "Use marker or Hook" ]; | ||
+ | py_lw -> vizexec [ label = "TCP/IP" ]; | ||
+ | vizexec -> logfile [ label = "Write out" ]; | ||
+ | } | ||
+ | </graphviz> | ||
+ | |||
+ | * vizexecをサーバーとして動かすことができる | ||
+ | * ファイルの場合と同様にスレッドごとに出力 | ||
+ | * プロセスをまたがったやりとりも可視化可能 | ||
+ | * 必要に応じて履歴をすべてファイルに書き出すことができる | ||
====== Download ====== | ====== Download ====== | ||
- | * [[http://www.sunaga-lab.net/hgrepos/vizexec/archive/bd4f5de27059.zip|VizEXEC 0.1]] | + | * [[http://www.sunaga-lab.com/hgrepos/vizexec/archive/b83a93532eac.zip|VizEXEC 0.2]] |
+ | * [[http://www.sunaga-lab.com/hgrepos/vizexec/archive/bd4f5de27059.zip|VizEXEC 0.1]] | ||
===== インストール ===== | ===== インストール ===== | ||
ライン 29: | ライン 110: | ||
* PyCairo 1.8.10 | * PyCairo 1.8.10 | ||
- | ===== ライセンス ===== | + | ====== 使い方・仕様等 ====== |
+ | * [[software:vizexec:logformat]] | ||
+ | * その他準備中・・・ | ||
+ | |||
+ | ====== ライセンス ====== | ||
* MIT License | * MIT License | ||
* MIT Licence: http://www.opensource.org/licenses/mit-license.php | * MIT Licence: http://www.opensource.org/licenses/mit-license.php | ||