Skip to main content

ログ取得ツール

toto paper

totoはマークシートをマークして渡すと紙をもらえる。これをサイフの中に入れておき、試合に行くというスタイルを取っている。 いよいよシーズンがはじまるんでさっき買ったんですけど、この紙がですね、前のほうがよかった。前はお札よりも低い高さだったんで折らなくてもサイフに入ってたんです。今のは入らないので折らなくてはならない。それとデザインもtotoっぽくなくなっている。なんつーか、toto-dreamから夢がなくなった感じ? 紙がダサいので、インターネットで投票するやつに申し込もうと思います。 ちなみに、totoGOAL3の対象試合はいずれも昇格チームの試合でした。totoGOAL2とminitotoというのが新設されてました。totoGOAL2は2試合のtotoGOAL、minitotoは5試合のtotoで、A組とB組に分けられてました。totoGOAL2はカップ戦の準決勝専用? みたいですね。 (追記) 2006-03-03 21:05 登録して買ってみました。とても買いやすくなってますね。でも、この認証はちょっとやりすぎではないかと思います。Amazonくらい単純な認証でも構わないのではないかと。

pgbenchを移植してみたよ…まだ問題は残っているけど

昨日の夜思い立って作りはじめた小さなプログラムが、問題はあるものの、一応動くようになりましたので。 PostgreSQLについてくるpgbenchをPython DB API(python.org)で移植してみた。 興味のある方は、dbench.pyをダウンロードしてみて下さい。 特長は以下の通り。

  • 1つのプログラムでMySQL、PostgreSQL、sqliteに対応 → 同じコード、同じSQL文で測定することで、比較がしやすくなる*はず** pgbenchと同じ負荷をかける(一部制約あり:後述)
  • sqliteの:memory:(メモリDB)でも測定可能(:memory:の場合、-iで初期化後にそのままベンチマークが走るように書いた)

弱点は以下の通りかな。

  • Pythonだからインタプリタ側がネックになるかも → そんなに遅くない気がする。気がするだけ。* 3つのDBMSに対応させるため、SQL文やAPIの呼び出し方に制約がある(後述)
  • MySQL以外では複数コネクションで動かない(致命的。理由の推測は後述)

使い方は以下の通り。引き数を指定しないで実行するとusageが表示されます。 DBの初期化

poll: protocol failure in circuit setupの続き

以前の文章へのコメントで突っ込まれたので、rshで「poll: protocol failure in circuit setup」と言われるときにtcpdumpでログを取ってみた。 client)からserverにrshでpwdを実行するコマンドを投げている。 client# \rsh server pwd tcpdumpの結果は、


IP client.1023 > server.shell: S 4253120909:4253120909(0) win 5840 <略>
IP server.shell > client.1023: S 1119539071:1119539071(0) ack 4253120910 win 5792 <略>
IP client.1023 > server.shell: . ack 1 win 1460 <略>
IP server.53908 > client.auth: S 1133396091:1133396091(0) win 5840 <略>
IP client > server: icmp 68: host client unreachable - admin prohibited
IP client.1023 > server.shell: P 1:6(5) ack 1 win 1460 <略>
IP server.shell > client.1023: . ack 6 win 1448 <略>
IP server.1023 > client.1022: S 1131978286:1131978286(0) win 5840 <略>
IP client > server: icmp 68: host client unreachable - admin prohibited
IP server.shell > client.1023: F 1:1(0) ack 6 win 1448 <略>
IP client.1023 > server.shell: . ack 2 win 1460 <略>
IP client.1023 > server.shell: F 6:6(0) ack 2 win 1460 <略>
IP server.shell > client.1023: . ack 7 win 1448 <略>

client:1023 → server:514(shell)にSYN
client:1023 ← server:514 SYN ACK
client:1023 → server:514 ACK

ここまででTCPの接続ができる。


server:53908 → client:113(auth)にSYN(接続しに行く)
server       ← client ICMP reject

この結果を受けてかどうか知らないが、メッセージを1つ投げると(たぶんポート番号を投げてます)、サーバが接続してきます。

FC4のカーネルとUSBマウス

これはまだ書いてなかったな。Fedora Core 4(FC4)のkernel-2.6.15-1.1830_FC4とkernel-2.6.15-1.1831_FC4では、いつも使っているUSBマウスが使えなくなっている。家で使っているIBMのUSBマウスはなぜか使えるのだが、最も使い心地の良いDEXXAのマウスやMicrosoftの小型のマウスは使えない。 USBのマウスと認識され、デバイスファイルもできているのだが…不思議だ。しょうがないのでkernel-2.6.14-1.1656_FC4を使っている。どうにかしてほしいです。

イモはオススメできない

昨日の等々力は大雨に加えて風もあって非常に寒かった。等々力スタジアムグルメにおける新しいメニューの一部を試したので報告したい。 まず串カツ。ソースに加えて辛子をつけるかどうかを尋ねてくる。冷えてはいないが、衣はかなり固め。 次、カップに入ったイモ。2種類あるみたいだが、私が行ったときは片方しかなかった。これは冷たい。味スタを思い出させるような出来で、できれば食べたくない代物だった。このイモはいずれ駆逐されていくだろう。ジャンキーな唐揚げを買ってその中のイモを食べるほうが数倍うまい。味つけはひどくないのに、温度があれでは。そういうのはアウェイ側だけで売ってほしいよ(笑) 次、ひねり棒(?)。けっこうよかった。甘党にはいいんじゃないかな。 昨日は天候もあって、温かい飲み物(お茶など)が入っていた。けっこうちゃんと温かかったが、ちびちび飲んでいる内にすぐに冷えてしまった。 麺類などは試さなかった。まったりした試合で追い追い試していくとしよう。だいぶ先になるかもね。 というわけで、既存メニューと比べると、残念ながら増えたぶんは決して既存のメニューよりもレベルが上というわけではないらしい。去年はなんとタコ焼きの味がグレードダウンするという衝撃もあったが、ローソン様の協力もあり追加のメニューの味はコンビニレベルに保たれていた。今後の追加に期待がかかる。 それから追加で書くと、応援だけど、コアゾーンが新設されるらしい。女人禁制。体力に自信のある男のみだってさ。昨年は残念なことに、人数がいるのに声が出ていない、気の抜けた応援しかできない試合がたくさんあった。新コアゾーンの住人は声を出してくれるだろうか。 最後に、せっかく試合の見れる位置で見ていたので、試合についても。箕輪のフィードはアテにならない。何種類かあるキックはどれも正確だと思うんだけど、タイミングや狙いどころがあんまり良くないんじゃないかと思えた。まあ上がりながら裏へのパスを狙う姿勢は正しい。伊藤宏樹は去年よりも積極的に攻め上がっていた。続けていけば上手くなるだろう。DFラインが高めだったのは大宮戦だったからかもしれませんが、私としては少し不安でした。見た感じ、森(ヤスだったかも?)や箕輪はまだ高いラインに慣れてないっぽいし、裏を取るのが上手い選手ってけっこういるからねえ。米山と茂原は普通に良かったと思います。米山がハマって軌道に乗れば、今年は4バックが基本になるかもしれません。マルクスは非常に良い状態で今年も期待できます。西山を見たかった。あと、あの試合だけでは何とも言えないけども、ジュニーニョはもうちょっとサイドを使ってあげてもよかったんじゃないかと思ったよ。

川崎1-1大宮 (プレシーズンマッチ)

久しぶりに、おれたちが待ち望んでいたフロンターレの季節が帰ってくる。長かったよ… 前半は「なんで大宮なんかとプレシーズンマッチやるんだよ」という感想を持つほど、内容がない展開。典型的な大宮戦というか…とにかく噛み合わない、つまらないゲームになるんだよね。アップが5分で終わったところあたりからも、なんか嫌な感じはあったんだよねえ。キックオフ15分前に出てきて、5分くらいで引っ込んだ。なんだそりゃ。濡れて身体を冷やすよりは室内でアップしたほうがいいってこと?? 後半はいきなりペースアップ。チャンスは次から次へとやってくる。先に得点したのは大宮。前線からこぼれたところに、上がり気味になっていたトニーニョの弾丸ミドル。きれいなゴールでした。川崎は米山や茂原といった新戦力を投入し、寺田周平をボランチに上げ、森がDFラインに入る形にフォーメーションを変える。マルコンの怪我で出番が回ってきたと思われる森はとてもいい出来でした。ヤスはやばかった。1本のクロスを除いてはケンゴらにバックパス。ほとんど勝負もしない。パス回しで崩そうとする場面でも、ヤスにボールが回ると途端に停滞してしまうといった感じで。 同点ゴールはマルクス。なんかたまたま入ったって感じだったけど。他にも、ポストに嫌われた場面など、いいチャンスは作っており、後半はゲームを支配していたと思う。 まあ、前半はグダグダでしたが、今日出ていた選手はかなり計算できますね。今シーズンもどうやらやっていけそうな感じになってきた。来週の開幕が楽しみだ。

チームと時間帯の傾向

ゼロックススーパーなんとかをやっている今日この頃。皆さんお元気ですか? J1の昨シーズンの記録(j-league.or.jp)より、昨年のJ1の時間帯別の得失点差をグラフにしてみた(下図)。得失点ではなく差を、しかも積み上げグラフにしたのは時間帯別の強弱のムラを見るためだ。得失点"差"を積み上げるという作業により、数値的な意味は薄れている。 時間帯別得失点差 図から、各チームの時間帯別の強さの傾向が見える。 ムラなくプラスなのは、グラフで全体的にマイナスが少なくプラスが多いチーム。鹿島、浦和、千葉、磐田、ガンバ、広島といった上位陣が該当する。優勝したガンバは得点も失点も多かったわけだが、特に苦手な時間帯というのはない。磐田は試合開始直後と試合終了間際に強いというおもしろい傾向がある。千葉は後半開始直後以外はかなり平均的に強い。広島は前半に強くて、後半はトントンといった感じかな。 一方、ムラなくマイナスなのは柏、ヴェルディ、神戸の降格組に加えて、名古屋、新潟、清水といったあたりだ。柏や新潟は後半開始直後、清水の試合開始直後はけっこう強かったみたいだが、そこ以外は弱かったようだ。ヴェルディと神戸はひどかったんだな。 プラスもマイナスも少ないのは大宮、マリノス、東京、セレッソあたり。守備が固く得点も失点も少ないチームかな。中でも東京は終盤に強い。終盤に逆転とか、追い付くとかいうのが多かったんじゃないかな。セレッソに関してははムラなくプラスのグループに入れるかここに入れるのか迷うところ。 ムラの多いチーム、上下に伸びているのは圧倒的に川崎、大分だろう。川崎は試合終盤の得失点差が非常に大きく、大分は前半後半の終了間際がヤバい。川崎と大分の傾向が似ているというのは新発見だなぁ。川崎の終盤の弱さは…これはちょっとひどすぎるね。内容はいいものの、集中力が90分続かないという印象通りの数字だ。今季はこのあたりがどのくらい改善するだろうか。 だいたいの傾向は以下の通り。 試合開始直後(0〜14): 強い…鹿島、清水、磐田、広島
弱い…柏、新潟、神戸 前半の途中(15〜29): 強い…鹿島、千葉、川崎、ガンバ、セレッソ
弱い…浦和、柏、東京、神戸 前半終了間際(30〜44): 強い…浦和、川崎、ガンバ、広島
弱い…新潟、神戸、大分 後半開始直後(45〜59): 強い…浦和、柏、川崎、新潟、ガンバ、(大分)
弱い…ヴェルディ、清水、名古屋、神戸、(千葉) 後半の途中(60〜74): 強い…鹿島、浦和、千葉、川崎、ガンバ、大分、(マリノス)
弱い…大宮、ヴェルディ、清水、神戸 後半終了間際(75〜89): 強い…鹿島、浦和、千葉、東京、磐田
弱い…柏、ヴェルディ、川崎、大分 とりあえず言えるのは、今季は川崎vs.大分の試合終了間際に注目だ。

ACL対応

ACLと言ってもアクセス制限のこととかではありません。AFCアジアチャンピオンズリーグという、注目度の低いサッカー大会のことです。マスコミがこの大会を扱うことはほとんどないと思いますので、少し宣伝しておきます。 今年は日本からは2004-2005天皇杯優勝のJ2ヴェルディと、2005年のJリーグ覇者のガンバが出場します。東京と大阪という日本の誇る2大都市からそれぞれ出て行くわけでして、要するに他人事ですから、まあせいぜいがんばってほしいと思います。 ACLで優勝するとさらに上のクラブ世界選手権(次回から「クラブワールドカップ」に改称)に出れます。こないだカズを使って集客してた大会です。~~ただ集客の問題もあって、開催国枠で今年のJの覇者も出れちゃうことになりました。~~ピラミッドの頂点を目指してきついACLを戦わされるチームにとってはひどい話かもしれませんが、客が入らないことには興行にならないのです。 ところが今年のACLでは、4チームが出場選手登録が間に合わずに失格、その内の2チームは1次リーグでヴェルディと同組でして、4チームのプールなので2チームしか残りませんでした。ヴェルディはこれにより、韓国のチーム(蔚山現代)とのホーム&アウェイで勝てば決勝トーナメント出場になります。ガンバの組には失格は出ませんでした。J2はJ1よりも試合数が多く日程もきついし、ヴェルディではどうせ客も集まらないので、費用も抑えられてちょうどよかったですね。平日夜とかにコッソリやるんでしょう。 そして、このことにより分かるのは、1次リーグが1位上がりということ。オニのようなことをさらりと言えば、2位までトーナメントに上がれてもいい気もしますね。1位上がりだけだと、トーナメントの当たりの順位づけとかもちょっとアレだしね。 近所なのに、恐らく見に行けないでしょう。残念です。去年のマリノスの試合は2試合見に行けましたが。

WX310K+AD-MSDP512

このタイトルの組み合わせ(電話+miniSDカード)はダメだ。電話が数十秒(体感)くらい固まって操作できなくなる。そんなのアリ?? 調べると、ココ(memn0ck.com)にもダメって書いてあった。あわれな私には、調べてから買うという習慣がないのです。固まる以外は大丈夫(?)なのだが…毎回毎回、開けてから数十秒も待てるかっての! まあこれはデジカメに回して、新しいminiSDカードを買おうと思う(デジカメでは使えちゃってる)。SanDISKあたりがいいかなぁ。miniSDばかり増えてもしょうがないのだが…普通のSDカードは256MBのしか持ってないから。 この使えないカードのamazonへのリンク(amazon.co.jp)でも貼っておこう。ここを見た人、くれぐれも…買うなよ(笑)

Python+DBMSメモ

PythonからMySQLdbやpg(PostgreSQL)やsqliteを使う場合、それぞれモジュールがあってそれを通して使うことになっているが、これらはだいたいPython Database API Specification(python.org)に準拠している(日本語訳はこちら(python.jp))ことになっている。 そしてこのAPI仕様では、DBのcursorへのexecuteメソッドでSQLを投げることになっている。私はこのexecuteメソッドに入れる文字列を作る際にescapeしなければ、いわゆる「SQLインジェクションなんとか」が起きるものと理解していた。MySQLdbにはescape_stringが定義されているのはそのためだと。 しかし、違うのですよ。sqliteモジュールにescape_stringメソッドがないので困るなぁと思ってみたけど、実際はexecuteメソッドの第1引き数がフォーマットになっていて、こいつの%s変換で勝手にescapeしてくれるのです(厳密にはparamstyleを設定するとこれ以外の書き方もできる)。例えば、