This page linked from [ __RO_GPS.pmBBS過去ログ一覧 ]

RO_GPS.pmBBS_2003Q2

履歴閲覧: 最新 {2003/08/27[差分表示]}


過去ログ:2002年,2003年Q1,2003年Q2,2003年Q3,2003年Q4,最新


名前 : Min(2003/05/30 19:00)
素早い・・・!


名前 : ynakata(2003/05/30 13:02)
CGIっぽいものの実行させることを見据えたtrial20030530_0版を出しました。
HTTPモジュールの都合でマルチスレッド(orマルチプロセス)化が必要になりそうなので、その実験です。
手元のLinux(Red Hat8.0/Vine2.5)ではそれなりに動いていますが、環境によってはメモリリークによりシステムを停止させる可能性があります。


名前 : Min(2003/05/29 15:59)
説明不足ですいません><
後者に近いですが、微妙に違うっぽいです。
rotooldのHTTPサーバでGETメソッドの引数に応じたレスポンスを可能にする、という風なイメージでした。

最終的に行いたいのはHTMLでのrotooldの出す情報のデコレーションでして、
それには個々の情報を取り出せると便利だと思ったわけです。


名前 : ynakata(2003/05/29 14:29)
ときに、「CGIとして動作」ってのは,

のどちらの意味でしょうか(あるいはそれ以外?)>Minさん

前者はできない(実現不可能だと思う)相談ですが、後者についてはもともとそんなふうにしたいなあ、とは思ってました(元々、デバッグ用に内部情報を出すってのが目的ですし)。とはいえ、しばらく(忙しくて)手が着けられないので放置されると思いますが。


名前 : (2003/05/29 09:18)
--nodummyオプションの追加ありがとうございました。
迅速な対応に感謝します。

週末に入替をしてみます。


名前 : Min(2003/05/28 22:30)
ありがとうございます〜
試してみます!

>それより複雑なパターンは結構面倒(なんにしても、プロセス間通信が必要)になりそうなので
どっちにしろ大変だとおもいますが(TT
HTTPモジュールを利用してGETメソッドで引数を渡すというのは
どうでしょうか?


名前 : ynakata(2003/05/28 20:22)
> 紫さん
ダミー情報の抑制を行なうための、--nodummyオプションを追加しました。

> Minさん
20030528_1版のetc/call_rotoold.cgiに、サンプルのCGIスクリプトを追加してみました。
ものすごくベタベタなスクリプトです。
必要に応じて、スクリプト内の以下の行のURLを編集して使って下さい。

   $url    = "http://localhost:5963/";


名前 : Min(2003/05/28 11:21)
すばやいレスありがとうございます。

recv 関数の中の変更、了解です
CGIに関してはなによりPerl(というかCGIとして動作することが可能な言語)
いじれないので、サンプルお待ちしています(TT


名前 : (2003/05/28 08:16)
はじめまして。rotoold+RO-GIS環境で便利に使わせて頂いています。

ダミー接続情報なのですが、出力を抑制するオプションをつけてもらえないでしょうか
RO-GISは表示しないユーザを選べるので起動のたびにrotooldというユーザを消しています。
ギルド人員ちょうどのウィンドウサイズにしているのでrotooldユーザ一人分が多くなっているのです。

1ヶ月以上連続稼動していますが、ノートラブルなので抑制しても構わないと思いました。

動作環境はVine Linux2.5です。
面倒であれば、ここからここまでをコメントアウトするなどと教えていただければ自分で抑制してみます。


名前 : ynakata(2003/05/27 13:03)
HTML化については、rotoold/ROTool/HTTP/Client.pm の、recv 関数の中を変更すれば可能です。
# $bodyの生成部分でHTMLを作るようにして、Content-Typeをtext/htmlにする。
で、自動リロードは、生成するHTMLに<META HTTP-EQUIV="refresh" CONTENT="(時間)">を入れておけばよいかと思います。

CGI化ですが、単純にやるならCGIの中からrotooldを(httpで)呼び出すのがよいと思います。
それより複雑なパターンは結構面倒(なんにしても、プロセス間通信が必要)になりそうなので、あんまり考えたくないかも。

HTML化関連については、HTTPモジュールの出力回りの見通しを良くしたコードを出したいと思います。
CGIの方は、気がむいたらサンプルを書くかもしれません。
そんなところでよろしいでしょうか?


名前 : Min(2003/05/27 07:15)
はじめまして。rotooldいつも重宝させていただいています。

要望なのですが、HTTPモジュールをHTML化して、自動更新が可能なようにしたり、
CGIとして動作できるようにすことは可能でしょうか?


名前 : 大宮(2003/05/08 03:37)
20030507_2版、試してみました。
とりあえず、クライアント1つの状態では、正常に動くようになりました。
明日以降、多人数でチェックしてみます。

Win98のPerlなんていう変な環境に対応していただいて、ありがとうございました。
もうこれがないと、安心して夜も眠れません。


名前 : ynakata(2003/05/07 19:52)
20030507_2版公開、HTTPモジュールについて更に小手先の修正をしました。

HTTPモジュールが動作しまくって他の動作を阻害してしまうというバグがあるようです。発生条件は不明ですが、怪しい挙動をした場合に接続を切ってしまうようにしてみました。
#むしろまともな実装をしろ、という話もありますが。


名前 : ynakata(2003/05/07 11:24)
20030507_1版を公開しました。
大宮さんから詳細な情報の提供を受けましたので、再現試験を行なって、状況が発生するのを確認しました。
どうやら、Windows9x(?)上でのソケット回りの挙動が想定と違うのが原因だったようです。
とりあえずの回避策を取り、Windows98 (On VMware 4.0)でのとりあえず動作するのを確認しました。


名前 : ynakata(2003/05/07 01:36)
REVISIONを直したのと、HTTPモジュール回りの怪しいあたりを少々いじった20030507_0版を公開しました。

なお、大宮さんの報告してくださった状況ですが、当方では確認できていません。
(現状のHTTPモジュールのコードはろくなものではないので、何が起こっても不思議ではないですが(--;
微妙にそれっぽいあたりを修正しましたが、あまり確実ではありません。
できれば、rotooldを動かしているPCのOS、接続に使ったブラウザ、障害発生時の接続クライアント数などを教えていただけないでしょうか?(状況の推定に役立つかもしれません) また、--loglevelオプションでレベルを4にしたログでも構いません。


名前 : 大宮(2003/05/07 00:24)
えーと、たびたびすいません。
20030506_0ですが、
my $REVISION = 'rotoold/20030415_0';
となってますが…。

あと、エラーメッセージは出なくなりましたが、相変わらずhttpで接続することができません。
まず、ブラウザから接続しても、何も応答がありません。
また、ブラウザと通信している(?)間、RO-GPSで接続してもうまく動きません。
ブラウザを停止すると、再び正常に動き出します。

なんかわかりにくいですね…。


名前 : ynakata(2003/05/06 11:14)
ご報告ありがとうございます。同じエラーの発生を確認しました。>大宮さん

原因は、HTTPモジュール中での変数名のタイプミスと、sprintfの書式選択ミスでした。
これらを修正した20030506_0版をテスト版として公開しました。


名前 : 大宮(2003/05/06 09:36)
こんにちは、20030502_0、使わせていただきました。
httpで接続できなかったので、報告です。

httpで接続すると、以下のメッセージを大量に(一度に2〜6個程度)吐きました。

Use of uninitialized value in sprintf at ROTool/HTTP/Client.pm line 79.
Argument "--" isn't numeric in sprintf at ROTool/HTTP/Client.pm line 79.

使ったPerlは「ActivePerl?5.6.1 Build633」「ActivePerl?5.8.0 Build806」です。

以上、報告でした。


名前 : ynakata(2003/05/02 19:56)
20030502_0版、HTTPモジュールのプロトタイプを追加しました。サンプルはhttp://ynwhite.dyndns.org:5963/にて御覧ください。
このモジュール、応用すればあれこれ作れるんじゃないかと思いますです。


名前 : 大宮(2003/04/16 05:08)
希望した機能、20030414_0版にて動作を確認しました。
どうもありがとうございます。
messageを適当に書き換えて使わせていただいています。
これで、無意味にクライアントを立ち上げておかずにすみそうです。


名前 : ynakata(2003/04/15 16:48)
あれこれコードを見直して、それっぽいあたりを修正した20030415_0版を公開しました。
痕跡の残留や接続トラブルに関する不具合も、これによっていくぶん治るかもしれません。(確証はできません)

また、ここ最近のリリースではログ出力の見直しも行っています。
loglevel 2 ぐらいでログを取っておいた上で送り付けていただけると、対応しやすくなるかも、です。


名前 : ynakata(2003/04/14 18:14)
rcスクリプトの修正と、ダミー接続情報表示を追加した20030414_0版を公開しました。
IDや接続情報の残留については、状況を手元で再現出来ていません。(一応コードの洗い出しはしてみますが)


名前 : (2003/04/14 04:27)
0410版ダウンロードさせて頂きました。
RedHat用のrcスクリプトですが、start)内のpidオプションの記述が間違っておりました。
( cd $ROTOOLDDIR ; $ROTOOLD --pidfie 〜を
( cd $ROTOOLDDIR ; $ROTOOLD --pidfile
に書き直したら、Unknownエラーの発生がなくなりました。

他は特に問題なく、RedHat 7.0 (Kernel 2.2.24-7.0.3)/Perl 5.6.1
にてdaemon起動が可能になりました。


名前 : ynakata(2003/04/12 01:49)
長くなってきたんで、2002年分を別のページに移動させてみました


名前 : ynakata(2003/04/12 01:46)
技術的なことが多いのは、私の性分のせいかと思います。申し訳ないところです>大宮さん

で、要望について。
確かに、一人のときに一人しか表示しないのは不親切かもしれません。
次のバージョンアップのときに、適当な表示を出すようにしてみたいと思います。


名前 : 大宮(2003/04/12 01:27)
この掲示板、技術的なことが多くて、なんか要望とか言いづらいんですが、
とりあえず要望もこちらでいいのかな?

現在のrotooldは、サーバーに1人しかアクセスしていないとき、
ちゃんと稼動しているのかどうかが、クライアントの見た目では判断がつきにくい状態です。
つまり、RO-GPSでちゃんと接続しても、見えるのは自分1人。
サーバーを立てている自分はそこらへんは把握できるのですが、他の参加者は
サーバーが落ちているかクライアントの調子が悪いと思ってしまうようです。

そこで、何かダミーの接続情報を入れることはできませんか?
アクセスしている人が1人だったら、表示される、みたいな感じで。
あるいは、常時表示されていてもいいと思います。

一考をお願い致します。
それでは。


名前 : もひろ(2003/04/11 09:37)
早速の書き込み・・・ありがとうございますー。

なるほど、すでに情報出力をお考えでしたか。 ynakata様のペースで結構ですので、ぼちぼち、
ご無理をなさらぬ程度にひとつ。今後ともがむばってくださいっ。


名前 : ynakata(2003/04/11 09:24)
動作バージョンについて。
実を言うと、ろくな確認を行っていません。従って、私の手元の環境に大きく依存します。
人柱作業を要求してしまうことになると思いますが、どうぞご容赦くださいませ。


名前 : ynakata(2003/04/11 09:19)
情報取り出しについて。
デバッグ絡みでそろそろ欲しくなってきたという事情もありますので、そんな感じの機能は近いうちに実装したいと思っています。シグナル案、httpモジュール案、telnetモジュール案、UDPソケット(+専用クライアント)案、など各種考えてますが、とにかくいずれかの形では実装すると思います。


名前 : もひろ(2003/04/11 03:01)
rotoold 0410-test 版 ちょうだい致しましたです。お世話になっておりまする〜。

今回から、必要とする perl のバージョンが 5.6.1 にあがったんですねぇ。
私、自宅の MacOS X 10.2.4 で rotoold の2月版を使ってましたが、最初この 0410 版が動きませんで。(^^;
( MacOS X 10.2.4 では、デフォルトの perl が 5.6.0 で、そのままでは 起動時にエラーになりました。)
まぁ、無事 MacOS上の perl を 5.8.0 にすることで事なきを得ましたです。(^^)

要望ひとつ。

別プロセスで稼働中の rotoold について、何かのトリガで 現在接続中の情報を取得したり書き出したりできますかね?
やっぱ SIGNAL 使わないとダメですかねー? ・・・perl のシグナルハンドリング、よく判ってないんだよなぁ。(=x=;
それができれば、外部から CGI キックして、CGI から rotoold の状態を HTML に加工して 自サイトに出せるなぁ、とか
目論んでたりするんですが。 もし ものごっつー余裕があれば、ご検討いただけると うれしいですー。(*^_^*)

まぁ そのうち自分で ログの時間部分( time() まんまのところ )を 2003/04/10 12:34:56 の形式に書き換えたり
するところから触ってみるかー、とか思ってたんですが、貧乏ヒマ無し・・・まぁそのうち・・・(泣


名前 : ynakata(2003/04/10 21:08)
ということで、本職が一段落ついたのでぼちぼちメンテナンス再開しますです。


名前 : ynakata(2003/04/10 19:27)
rotooldの20030410-0版を公開しました。