検索条件
全2件
(1/1ページ)
「Graphviz::DSL」がレポートで活躍しています。
#!/usr/bin/env perl
use strict;
use warnings;
use utf8;
use Graphviz::DSL;
use open IO => qw/:utf8 :std/;
my $graph = graph {
name 'Miscellaneous Symbols';
global rankdir => 'LR';
my $cnt = 0;
for my $dec ( hex('2600') .. hex('2609') )
{
$cnt++;
my $char = chr $dec;
node "node${cnt}", shape => 'record', label => "{<p>$char|<n>}";
}
while ($cnt > 1)
{
edge [ "node" . ($cnt - 1) . ":n" => "node" . $cnt . ":p" ];
$cnt--;
}
};
$graph->save(path => 'symbols', type => 'png', encoding => 'utf-8');
だけで以下のグラフが出ます。
日本語WordNetに使うとかなり面白いグラフが出ます。
こんなんして意味あんのか?と思ってたけど、ログを解析してOSのデッドロック状態をグラフで表したりすると全然わかりやすさが違って驚きました。
一応メンテナンスされている MojoMojo というWikiがあったのでインストールしました。インストールで少しハマりどころがあったのでメモです。
git clone https://github.com/mojomojo/mojomojo.git
cd mojomojo
perl Makefile.pl
(多分エラーが出るのでエラーメッセージ見て必要なモジュールを入れる)
cpanm http://cpan.metacpan.org/authors/id/B/BO/BOBTFISH/Catalyst-Devel-1.37.tar.gz
(↑は1.38だと動かないため)
sudo yum install libxslt-devel.x86_64
perl Makefile.pl
make
make test
cp mojomojo.conf mojomojo_local.conf
vim mojomojo_local.conf
# イカを編集
user **** (一応ユーザ名を変更)
dsn dbi:SQLite:__HOME__/db/sqlite/mojomojo.db
# 編集終わり
mkdir db/sqlite -p
touch db/sqlite/mojomojo.db
./script/mojomojo_spawn_db.pl
# ↓が表示される
Creating a new wiki ...
dsn: dbi:SQLite:./db/sqlite/mojomojo.db
wiki name: MojoMojo
admin username: admin
admin password: admin
admin name: ****
admin email: ****@localhost
anon email: anonymous.coward@localhost
Deploying schema to dbi:SQLite:./db/sqlite/mojomojo.db
Creating initial data
Success!
# 表示終わり
./script/mojomojo_server.pl -p 3020
# 以下 nginx の設定
server {
listen 80;
server_name ドメイン名;
access_log アクセスログのパス;
allow 自分のIP;
deny all;
location / {
proxy_pass http://127.0.0.1:3020; # 3000番使用済みのため
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
# nginx の設定終わり
↓のように動きます。
編集がリアルタイムで反映されて中々良い感じ。
参考サイト: