english

makefeedmap

NetNewsのPathフィールドから得られる情報をもとに記事のフローの様子をgif データとして作成する。サンプル実際の配送図
ダウンロード
makefeedmap 1.4(updated 2003/05/16 JST)
他に必要なもの:
perl5.001 以上
GD
collect-sw
使い方(tstの使い方およびmakefeedmapの使い方):
  1. tst(collect-swパッケージの中のある)スクリプトを編集し、集 めたPathを保存するためのデータベースを指定する。
    例: $db = "/var/log/news/tstdb";
  2. INNのnewsfeedsの設定をする。
    例: TST:!*,fj.*,japan.*:Tc,WH:/usr/news/local/tst
    ニュースグループは集めたいNGについて記述すればよい。この例 ではfj.*とjapan.*のみについてPath集めている。
  3. newsfeedsをreloadする。
    例: % ctlinnd reload newsfeeds tst
    これで、/var/log/news/に tstdb.dir, tstdb.pagが作成される はずである。じっと待っているとtstdb.pagにPathが集積されて いくはずである。
  4. 適当に集まった時点でtst_outを用いてファイルに落とすわけで あるが、tst_outでいろいろ設定しておく必要がある。
    例:
    # $dbp1: tstで設定したデータベースがあるディレクトリ
    $dbp1 = "/var/log/news/log/";
    # $dbp2: 作業用ディレクトリ
    $dbp2 = "/var/log/news/log/db/";
    # $dbnam: tstで指定したデータベースのファイル名
    $dbnam = "tstdb";
    # $cflush: ctlinnd flush コマンド
    $cflush="/usr/news/bin/ctlinnd flush";
    # $host: ホスト名
    $host='hoge.fuge-u.ac.jp'
  5. tst_outを実行する。
    例: tst_out -f
    これを実行すると$dbp2で示されるディレクトリにtstdataという ファイルができるはずである。このファイルが次のようになって いれば正常に動作していることが確認できる。
    Site: hoge.fuge-u.ac.jp
    Total: 10714
    tamaru-news!kuee-news!9289
    kuee-news!kuis-news!1398
    ※ Total: だけが表示されてそれ以降のPathが表示されない場合 はtst_out中の $cutoffをもっと小さい値に変更すればよい。
  6. tst_outを定期的にcronで起動するように設定する。
    例: 30 23 * * 0 /usr/news/local/tst_out >/dev/null 2>&1
  7. tst_outによって得られたファイルをmakefeedmapに通す。
    例: % makefeedmap /var/log/news/db/tstdata >output.gif これでoutput.gifに何か表示されれば終了である。
makefeedmapのオプション
-a
2つのホスト間のフィードに矢印をつけて表示する。
-e pathhost
tstを動かしたホストのpathhostを指定する。以降の検索はここ を起点に行なわれる。
-d num
最大ホップ数を指定する。これより大きなホップ数のホストは無 視される。デフォルトは10ホップ。
-w num
横に並べる最大のホスト数を指定する。デフォルトは8ホスト。
-r num
ホストを示す円の半径を指定する。デフォルトは20pixel。
-R num
ノード(ホスト)が置かれる場所を乱数により適当にずらせる。こ の値が大きいほどずれは大きくなる。0だと一直線上に並ぶこと になる。デフォルトは50pixel。
-g x,y
作成されるgifの大きさ(xとy)を指定する。デフォルトは 1200,1000。
-c
-eで指定されたpathhostを中心に放射上に配置。
-h
ヘルプメッセージの表示。
その他の情報
makefeedmap(unofficial) 〜藤原誠さんのドキュメント(設定方法が分かりやすく解説されています)

ono @ ono.org