ラクチンで高機能な監視ツールmunin

Posted on 2007/06/06 (水) 13:09
Filed Under 技術 | 6 Comments | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

page thumbnail設定が ラクチンで高機能だという評判の監視ツール「munin」を入れてみた。
読んだ記事:「MRTGよりお手軽に負荷やトラフィックをグラフ化できる「Munin」 - GIGAZINE
手もとのCentOSやFedoraCoreのLinux環境はyum一発で入っていきなりデフォルトの監視項目で動き出した、というぐらいラクチン設定だった。標準添付のps_プラグインを使ってffmpegのプロセス数を数えると走ってるfoltiaのトラコン数も数えられる。
 こりゃーいい、とおもって1日使ってみたところ温度を取得する項目が物足りない気がしたのでlm_sensorsの取得内容を元にグラフを描くプラグインを作ってみた。ただlm_sensorsの取得内容だけを描いてもまだ物足りなかったので、アメダスの実況気温をlivedoor 天気情報あたりから得て描くようにもした。
 自宅サーバなど年中エアコン入れると電気代がもったいないよなーという向きにも外気温がわかるとなんかの参考になりそう。

表示例はこんな感じ。
サンプルは宗子時空の動いてるサーバ。
まず一日の日中の動き。
munin 温度 merleawe day
一週間だとこんな。
munin 温度 merleawe day

ためしにfoltiaを動かしてる機械だとこんな感じ。
munin 温度 sync day
録画がおわってトラコンが走ると猛烈に熱くなるというのがとてもよくわかる。

 インストールは他のプラグインとおんなじで、lm_sensorsが入ってれば、ほぼ自動で動くはず。アメダスの地域を変えるには108行目のRSS URLを変える。

ダウンロードはこちら
munin lm_sensors温度プラグイン temperature.pl.txt

ソースはこんな。

PERL:
  1. #!/usr/bin/perl -w
  2. #
  3. # Anime recording system foltia
  4. # http://www.dcc-jpl.com/soft/foltia/
  5. #
  6. # munin用温度監視モジュール/Linux / lm_sensors
  7. #
  8. # DCC-JPL Japan/foltia project
  9. #
  10. #
  11. # How to install to munin.
  12. # munin : http://munin.projects.linpro.no/
  13. #
  14. # su -
  15. # cp temperature.pl /usr/share/munin/plugins/temperature
  16. # ln -s /usr/share/munin/plugins/temperature /etc/munin/plugins/
  17. # restart munin-node Ex. service munin-node reload
  18. #
  19. #
  20. use strict;
  21. use warnings;
  22.  
  23. if ($#ARGV> -1 ){
  24.  
  25. if ( $ARGV[0] eq "autoconf" ){
  26.     my $lmsensorspath = `which sensors`;
  27.         if ($lmsensorspath eq ""){
  28.         print "no\n";
  29.         }else{
  30.         print "yes\n";
  31.         }
  32.     exit 0;
  33. }elsif($ARGV[0] eq "config"){
  34. print "graph_title Universal temperatures. \n";
  35. print "graph_args --base 1000 -l 0\n";
  36. print "graph_vlabel Celsius\n";
  37. print "graph_scale no\n";
  38. print "graph_category sensors\n";
  39. print "graph_info This graph shows the temperature in degrees Celsius of lm_sensors in the machine and AMEDAS.\n";
  40. &extracttempratures("config");
  41. print "amedas.label amedas\n";
  42. #print "amedas.type DERIVE\n";
  43. print "amedas.info temperature from amedas\n";
  44.  
  45. }else{
  46. &extracttempratures();
  47. my $amedasvalue = &getamedastemp();
  48. print "amedas.value $amedasvalue\n";
  49. }
  50.  
  51. }else{
  52. &extracttempratures();
  53. my $amedasvalue = &getamedastemp();
  54. print "amedas.value $amedasvalue\n";
  55. }
  56.  
  57. sub extracttempratures(){
  58. #print "$#_\n\n";
  59. my $flag = "";
  60. if ($#_ == 0){
  61.     if ($_[0] eq "config"){
  62.         $flag = "config";
  63.     }
  64. }else{
  65.     $flag = "value";
  66. }#endif value
  67.  
  68. #my $sensors=`cat ./mer-sensors.txt`;
  69. my $sensors = `which sensors`;
  70. $sensors = `$sensors`;
  71. my @sensor = split(/\n/, $sensors);
  72. my $data = "";
  73. my $counter = "0";
  74. my @tmp1 = "";
  75. my $temperature = "";
  76.  
  77. foreach $data (@sensor){
  78.     if ($data =~ /[0-9].*C/){
  79.         @tmp1 =split(/\(/, $data);
  80.         @tmp1 =split(/:/, $tmp1[0]);
  81.         $temperature = $tmp1[1];
  82.         $temperature =~ s/[^0-9.-]//gi;
  83.         if ($flag eq "config"){
  84.             print "$tmp1[0]_$counter.label $tmp1[0]_$counter\n";
  85.             #print "$tmp1[0]_$counter.type DERIVE\n";
  86.             print "$tmp1[0]_$counter.info temperature on $tmp1[0]_$counter\n";
  87.             #print "$tmp1[0]_$counter.max 200\n";
  88.             #print "$tmp1[0]_$counter.min -20\n";
  89.         }else{
  90.             print "$tmp1[0]_$counter.value $temperature\n";
  91.         }
  92.     $counter++;
  93.     }#if
  94. }#foreach
  95. }#endsub
  96.  
  97. sub getamedastemp(){
  98. use LWP::Simple;
  99. my $rssurl = "";
  100. if ($#_> -1 ){
  101.     $rssurl = $_[0] ;
  102. }else{
  103. #Config section
  104. #デフォルトで八王子
  105.     $rssurl = "http://weather.livedoor.com/forecast/rss/amedas/point/44112.xml";
  106. }
  107.  
  108. my ($content) = get("$rssurl");
  109. my (@line) = split(/\n/, $content);
  110.  
  111. foreach(@line){
  112.     if( /の気温/){
  113.     my (@linetmp) = "";
  114.     @linetmp = split(/]/, $_);
  115.     @linetmp = split(/</, $linetmp[1]);
  116.     my $temperature = "$linetmp[0]";
  117.     $temperature =~ s/[^0-9\.]//gi;
  118.     return ("$temperature");
  119.     last;
  120.     }
  121. }#foreach
  122. }#endsub

アニメラクチン感想書きツールStarlight Breaker公開

Posted on 2007/05/07 (月) 13:17
Filed Under Starlight Breaker | 1 Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

スタブレアニメ感想書きツールStarlight Breakerのつくりかけのバージョンをひっそりと公開しました。早いウチに、書き込むときに評価収集サーバに自動的に集計できる機能を追加したいと考えてはいます。

Subversionでfoltiaの最新版を取得すると/install/php/StarlightBreaker/ディレクトリに入ってます。
取得するときはこんな感じです。

$svn co http://svn.dcc-jpl.com/foltia/trunk foltia

ソースに書き込んだガイドからまんまコピペしておきます。

・機能
WordPressなどのXML-RPCで書き込めるブログツールにラクチンにアニメの感想を書き込みます。
スタブレとも略されます。
簡単な使い方の説明
http://www.dcc-jpl.com/diary/2007/04/10/starlight-breaker/

・インストール
sb-config.php.templateを名前を変えてsb-config.phpとします。

sb-config.php
sb-edit.php
sb-write.php
の3つを親ディレクトリのphpディレクトリに移動します。

PEARのライブラリServices_Bloggingをインストールします。
なぜかバージョン0.1.1では期待通り動作しなかったんで0.1.0を使っています。
Services_Blogging日本語ガイド

書き込む先のブログサーバAPIはMetaWeblog決め打ちとなっています。
ブログツールがWordPressやMovable Typeならばそのまま使えます。
別のAPIを使う場合はsb-write.phpの98-99行目あたりを書き換えてください。

foltiaサーバからブログサーバへの画像の転送にscpを使っています。
なんかもっといい方法があったら変更したいのですが現在はチト敷居が高いです。
foltiaサーバからプログサーバへ適正なアカウントでscpできるように設定してあげてください。

sb-config.phpの内容を適切な値に設定します。

今後は
・自動集計機能
・画像複数枚対応
・インストールと設定をラクチンに
などすすめていきたいと思うものです。
Starlight Breaker(スターライトブレイカー)の名前の由来はぐぐるといっぱい出てくる通り、なのはさんの最大の技からです。

しかし、なんでTracにEUCのソースとUTF-8のソースを混在させると化けてしまうのですかね?

いまどこトラベル

Posted on 2007/05/02 (水) 3:11
Filed Under 技術 | Leave a Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

いまどこトラベルスクリーンショット大型連休らしくちょっと旅に出ることにしました。
で、ちょー急ごしらえでGoogle MapとTwitterを使ってステータスを刻々とモニタ出来るようにしたつもりのものをでっち上げたんで横に貼っときます。

いまどこトラベルと題したこのページ(http://m.dcc-jpl.com/u/sorshi)をたまにひらくと地図が出てきます。
時間がなかったんで軌跡でトラッキングデータを表示したりとかの機能はありません。もっとも新しい測位地点だけが表示されます。なんで画像がふきだしの中に収まらないのかまだよくわかりません。
で、位置の更新はうざったくない程度にTwitterでアナウンスしていこうと思ってます。

どれも作り立てであやしい動作があるかもしれませんがその辺は察して下さい。

しかしRioパラダイス、いい絵ですよね。

foltia記事をご紹介いただきました

Posted on 2007/04/23 (月) 0:06
Filed Under foltia | Leave a Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

page thumbnailApple TVと完全連動する録画システム「foltia」の解説記事が出ていた」(CloseBox and OpenPod)

[解決]スタブレ試運転

Posted on 2007/04/13 (金) 15:57
Filed Under Starlight Breaker | Leave a Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

昨日の「スタブレ試運転」で書いた書き込むタイムスタンプがさらに9時間ずれている問題は使用しているライブラリのPEAR::Services_Bloggingを最新だった0.1.1から0.1.0にバージョンダウンしたらとりあえず解決した。あんまし原因の深追いはしてない。
今後スタブレも拡張して複数画像貼れる仕様にしていきたい。しかし書き込むときのカテゴリが指定出来ないという問題は依然残ってはいるのだった。

スタブレ試運転

Posted on 2007/04/12 (木) 17:10
Filed Under Starlight Breaker | Leave a Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

アニメ感想書き込みツール「スターライトブレイカー」を試運転してみた。なぜかいかにもタイムゾーンが狂っている風な9時間未来の日付
で書き込まれてしまったり、パーマリンクURLが長すぎてBad Requestになったりするのでその辺を変更した。
未来の日付問題についてはWordPrssのデータベースを少し見てみたところ、スタブレで書き込んだ記事がwp_postsテーブルのpost_dateにpost_date_gmt同じものが入っているからというようであった。
なぜだろうか?

追記:[解決編]

MYCOMにfoltia記事書かせていただきました

Posted on 2007/04/11 (水) 0:40
Filed Under foltia | Leave a Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

page thumbnail
毎日コミュニケーションズのマイコミジャーナル内に「Apple TV / iPod / PSP対応! 全自動アニメ録画システム「foltia」」という記事を書かせていただきました。
内容的にはfoltiaの紹介とvideo PodcastのfolcastをApple TVと絡めた感じです。

アニメ感想書きツール「スターライト・ブレイカー」着手

Posted on 2007/04/10 (火) 12:42
Filed Under Starlight Breaker | Leave a Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

長年構想していたアニメ感想ラクチン書き込みツールの作成にいよいよ着手しはじめた。当初の構想は独自のブログツールになる壮大なプランだったがいまはWordPressに書き込むアニメ録画システムのfoltiaの拡張モジュールという形になった。
スクリーンショットを見ればなんとなくわかるように、foltiaがつくり出すサムネールをクリックしていくと番組名やサブタイトルや話数やリンクをあらかじめ入れておいてくれる感じ。
いまのところカテゴリ指定出来なくてデフォルトになってしまったりとかいまひとつ不自由な点もあるけど追って直していく方向で。
記事のURLはAmazonなどでも流行っているタイトルの日本語をそのままエンコードして使う方式とした。
今後スタブレでアニメの感想など多く書けたらー、的に思ってるところ。

関連記事:「スターライト・ブレイカー!!!」 (宗子時空 9/14)

Recently


Categories


Archives


Wish list

宗子さんのほしい物リスト2015/5-
Pages (152): « First ... « 20 21 22 23 24 25 26 27 28 29 [30] 31 32 33 34 35 36 37 38 39 40 ... Last »