X



トップページ運用情報
1001コメント268KB
【野鳥の会】 BBS.2ch.net 全発言統計の巻 part4
■ このスレッドは過去ログ倉庫に格納されています
0001動け動けウゴウゴ2ちゃんねる
垢版 |
04/10/16 19:18:16ID:yzh8SYPb
2ちゃんねるの全発言の統計を取ろうに挑戦

bbs.cgi に一個DNS問い合わせの処理を追加
発言バイト数.スレッドkey.板.サーバ.CGI名.BBS.2ch.net をlook up
この方法でやるとかなり低コストで出来る予感。

すずめ (板別発言数統計) http://stats.2ch.net/suzume.cgi
からす (サーバー別発言数統計) http://stats.2ch.net/karasu.cgi
からす2 (鯖グループ別発言数統計) http://stats.2ch.net/karasu2.cgi
すずめ、からすはURLをcgi->cgi?yesterdayとすることで前日のデータを閲覧できます。

とんび (1時間単位板別発言数統計) http://stats.2ch.net/tonbi.cgi
・とんびのログっぽいの http://stats.2ch.net/kawasemi-h/
・とんびのログ分刻み版 http://stats.2ch.net/kawasemi-m/
・とんび2 (1時間単位板別バイト数統計) http://stats.2ch.net/tonbi2.cgi

つばめ (分単位多数発言スレッド統計) http://stats.2ch.net/tubame.cgi
つばめ (ex8専用) http://stats.2ch.net/tubame2.cgi

2ch一日全発言統計一覧
http://stats.2ch.net/kawasemi-d/2ch.txt


前スレまでの規制のまとめ

とかげの尻尾
極短時間に多くのスレを立てたり、レスをつけたりすると
●、★の有無に関わらず2時間の間、qb5以外の読み書きが規制されます。
読もうとすると http://qb6.2ch.net/403/ に飛ばされます。
記者、スレ立て代行さんは要注意。
現在のこの件での規制対象は http://qb6.2ch.net/403/c403.cgi で確認できます。

●を併用してもBBQチェック済みの串を使って書けないようになりました。

p2に関する質問や議論はソフトウェア板のp2スレでどうぞ。
現状もそちらでまとめられています。

p2+●に関する規制議論はこちらです。
http://qb5.2ch.net/test/read.cgi/sec2chd/1097492197/

過去スレ
part1 http://qb5.2ch.net/test/read.cgi/operate/1083526243/
part2 http://qb5.2ch.net/test/read.cgi/operate/1097666632/
part3 http://qb5.2ch.net/test/read.cgi/operate/1097821787/
0703▲ 某ソレ511
垢版 |
04/11/01 00:44:25ID:e4IGK4Bf
10/31(日) 1,859,891

久しぶりにバッケンレコード更新ですねー。。9/26以来かな?

kawasemi-m見てると、22:59〜23:15くらいの
推定30000レス分くらいは記録されてないっぽ、、
0706▲ 某ソレ511
垢版 |
04/11/01 01:08:21ID:e4IGK4Bf
あらっ、確かにkawasemi-dにうまく記録されてないっすね。
0707FOX ★
垢版 |
04/11/01 01:10:51ID:???
2・3日様子見て、手動で書き換えるか、

それまでは ここに結果だけ記録と、
0712FOX ★
垢版 |
04/11/03 02:23:01ID:???
あっ
もしかして daylight saving が終ったから?
0713FOX ★
垢版 |
04/11/03 02:25:35ID:???
11/1 を強引に計算してみた

1,587,366
0714FOX ★
垢版 |
04/11/03 02:28:37ID:???
C で こう書いているんだが

time(&t_now);
t_now += 9*60*60;
tm_now = gmtime(&t_now);
tm_now->tm_year += 1900;
tm_now->tm_mon ++;

なにをすればいいんだろぅ
0715cen ◆Pm9xOTJuM.
垢版 |
04/11/03 02:38:43ID:ghiQAZm8
素人が適当に見て思うんですが、2000じゃなくて
1900なんですか。
0716root▲ ★
垢版 |
04/11/03 03:37:29ID:???
time()じゃなくて、gettimeofday()とかを使えばいいんではないかしら。

>>715
tm_yearは1900年からの年なので、あってるですね。
0717root▲ ★
垢版 |
04/11/03 03:43:22ID:???
あ、そっか。tzは使ってないし。すまんです。
結局、何が問題なんだっけか。
0718root▲ ★
垢版 |
04/11/03 03:48:28ID:???
>>714 は結局、

今の時間をとってくる;
それを9時間分すすめる;
struct tmに結果を入れる;
1900足して2004とかにする;
ひとつ多くして1月から数えることにする;

ってことすよね。
これ自身は、TZやローカルな時間帯に関係なく、それなりにうごく気がしますが。
0719root▲ ★
垢版 |
04/11/03 03:49:28ID:???
今の時間 => 今のシステム時間

か。
0720FOX ★
垢版 |
04/11/03 03:50:18ID:???
あっ もしかして daily 処理呼ばれる時間が変わったとか、
0722root▲ ★
垢版 |
04/11/03 03:52:02ID:???
うーむそっか。
PDTの時とPSTの時で呼ぶ時間変わらないようにcronで書かないといかんと。

設定できると思うので、やってみます。
0723root▲ ★
垢版 |
04/11/03 03:53:39ID:???
今は一律8時1分になってるですね。< kawasemi-d

さて、PSTの時はこれを1時間、、、どっちにぶらすんだっけ。
ねむくてぼけてるかな。
0724root▲ ★
垢版 |
04/11/03 03:54:30ID:???
1時間早く呼べばいいのかな。< 0:01JSTにしたい
0725root▲ ★
垢版 |
04/11/03 03:58:15ID:???
米国西海岸が夏時間(PDT)になる日と冬時間(PST)になる日って、それぞれいつでしたっけ。
0727root▲ ★
垢版 |
04/11/03 04:04:22ID:???
>>726
どもです。
SFを含むアメリカ合州国のほとんどの州では、4月の第一日曜から10月の最後の日曜までみたいですね。

(zdump -v /usr/share/zoneinfo/America/Los_Angeles とかしてもそうなってる)

てなわけで、crontabを書き換えてみるか。
0728root▲ ★
垢版 |
04/11/03 04:04:41ID:???
合衆国だってば、へんな変換。
0729root▲ ★
垢版 |
04/11/03 04:21:37ID:???
うーむ、crontabだが、、、。

1〜3月、11月〜12月 冬時間
5月〜9月 夏時間

で、

4月7日〜4月30日 夏時間
10月1日〜10月24日 夏時間

なわけだけど、

4月1日〜4月7日と、10月25日〜31日は、crontabをどう書けばいいんだべ。
0731root▲ ★
垢版 |
04/11/03 04:30:05ID:???
んーー。

とりあえず4月と10月も夏時間(8:01に起動)にしておこうっと。
0732FOX ★
垢版 |
04/11/03 04:33:22ID:???
いやんですよね、
PDT & PST
0733動け動けウゴウゴ2ちゃんねる
垢版 |
04/11/03 04:37:04ID:tQF+gHLQ
夏時間の開始と終了:
2004年 4月4日〜10月31日
2005年 4月3日〜10月30日
2006年 4月2日〜10月29日
2007年 4月1日〜10月28日
2008年 4月6日〜10月26日

米国夏時間採用期間:
4月第一日曜日〜10月最終日曜日
0734root▲ ★
垢版 |
04/11/03 04:37:45ID:???
4月1日 日曜なら夏時間、そうでなければ冬時間
4月2日 日、月なら夏時間、そうでなければ冬時間
4月3日 日、月、火なら夏時間、、、
4月4日 日、月、火、水なら(りゃ。
4月5日 日、月、火、水、木なら(りゃ。
4月6日 日、月、火、水、木、金なら(りゃ。
4月7日 夏時間

10月25日 日なら冬時間、そうでなければ夏時間
10月26日 日、月なら冬時間、そうでなければ夏時間
10月27日 日、月、火なら(りゃ。
10月28日 日、月、火、水なら(りゃ。
10月29日 日、月、火、水、木なら(りゃ。
10月30日 日、月、火、水、木、金なら(りゃ。
10月31日 冬時間
0735root▲ ★
垢版 |
04/11/03 04:48:58ID:???
ほんとかなぁ。

#minute hour mday month wday command
# Jan-Mar
1 7 * 1-3 * command
# Apr
1 8 1 4 0 command
1 7 1 4 1-6 command
1 8 2 4 0-1 command
1 7 2 4 2-6 command
1 8 3 4 0-2 command
1 7 3 4 3-6 command
1 8 4 4 0-3 command
1 7 4 4 4-6 command
1 8 5 4 0-4 command
1 7 5 4 5-6 command
1 8 6 4 0-5 command
1 7 6 4 6 command
1 8 7-30 4 * command
# May-Sep
1 8 * 5-9 * command
# Oct
1 8 1-24 10 * command
1 7 25 10 0 command
1 8 25 10 1-6 command
1 7 26 10 0-1 command
1 8 26 10 2-6 command
1 7 27 10 0-2 command
1 8 27 10 3-6 command
1 7 28 10 0-3 command
1 8 28 10 4-6 command
1 7 29 10 0-4 command
1 8 29 10 5-6 command
1 7 30 10 0-5 command
1 8 25 10 6 command
1 7 31 10 0 command
# Nov-Dec
1 7 * 11-12 * command
0736root▲ ★
垢版 |
04/11/03 04:53:52ID:???
1箇所間違ってた。

#minute hour mday month wday command
# Jan-Mar
1 7 * 1-3 * command
# Apr
1 8 1 4 0 command
1 7 1 4 1-6 command
1 8 2 4 0-1 command
1 7 2 4 2-6 command
1 8 3 4 0-2 command
1 7 3 4 3-6 command
1 8 4 4 0-3 command
1 7 4 4 4-6 command
1 8 5 4 0-4 command
1 7 5 4 5-6 command
1 8 6 4 0-5 command
1 7 6 4 6 command
1 8 7-30 4 * command
# May-Sep
1 8 * 5-9 * command
# Oct
1 8 1-24 10 * command
1 7 25 10 0 command
1 8 25 10 1-6 command
1 7 26 10 0-1 command
1 8 26 10 2-6 command
1 7 27 10 0-2 command
1 8 27 10 3-6 command
1 7 28 10 0-3 command
1 8 28 10 4-6 command
1 7 29 10 0-4 command
1 8 29 10 5-6 command
1 7 30 10 0-5 command
1 8 31 10 6 command
1 7 31 10 0 command
# Nov-Dec
1 7 * 11-12 * command
0737root▲ ★
垢版 |
04/11/03 04:54:28ID:???
あ、まだ違う。

#minute hour mday month wday command
# Jan-Mar
1 7 * 1-3 * command
# Apr
1 8 1 4 0 command
1 7 1 4 1-6 command
1 8 2 4 0-1 command
1 7 2 4 2-6 command
1 8 3 4 0-2 command
1 7 3 4 3-6 command
1 8 4 4 0-3 command
1 7 4 4 4-6 command
1 8 5 4 0-4 command
1 7 5 4 5-6 command
1 8 6 4 0-5 command
1 7 6 4 6 command
1 8 7-30 4 * command
# May-Sep
1 8 * 5-9 * command
# Oct
1 8 1-24 10 * command
1 7 25 10 0 command
1 8 25 10 1-6 command
1 7 26 10 0-1 command
1 8 26 10 2-6 command
1 7 27 10 0-2 command
1 8 27 10 3-6 command
1 7 28 10 0-3 command
1 8 28 10 4-6 command
1 7 29 10 0-4 command
1 8 29 10 5-6 command
1 7 30 10 0-5 command
1 8 30 10 6 command
1 7 31 10 0 command
# Nov-Dec
1 7 * 11-12 * command
0738root▲ ★
垢版 |
04/11/03 05:04:35ID:???
で、>>734 のはずだから、>>737 にしてみた。< 野鳥の会のdaily処理
ほんとかしら。
0739▲ 某ソレ511
垢版 |
04/11/03 05:26:16ID:zKbM84Xw
|・ω・`)つ 旦~旦~旦~旦~ おつかれさまですー

>>711
11/1はおいらの記録(ソース保存)によると1,587,366 みたいですわ。
0740動け動けウゴウゴ2ちゃんねる
垢版 |
04/11/03 05:47:24ID:euXwwsWo
西海岸の時刻配信サーバ(ttp://jjy.nict.go.jp/ のあちら版)
みたいなのがあれば、そこからぶっこ抜いて来るとか。。。
0744動け動けウゴウゴ2ちゃんねる
垢版 |
04/11/03 07:19:54ID:HsTaQl8U
getenv(3)

#include <stdlib.h>

char *
getenv(const char *name);

int
setenv(const char *name, const char *value, int overwrite);

int
putenv(const char *string);

void
unsetenv(const char *name);
0746root▲ ★
垢版 |
04/11/03 20:49:39ID:???
>>743
んと、プログラムのつくりじゃなくて、
cronで起動する時間を毎日0:01JSTにしたいっていう話ですね。
で、サーバはPDTとかPSTで動いていると。
0748動け動けウゴウゴ2ちゃんねる
垢版 |
04/11/03 22:49:14ID:SswQAUKO
起動するプログラムにPDTとPSTの判定を入れた方が楽なような
つーか、JSTに変換して、合ってるかどうかを判定すればいいし
んで、crontabは面倒だから1日2回起動w
0750t113023.ipgw.phs.yoyogi.mopera.ne.jp ◆arc/U573Xw
垢版 |
04/11/04 00:39:14ID:MawbzNIY
そうそう、バーボンの設定変更は、
変更できる人が規制議論の報告を見ていきなり変更!ってことはないですよね。
しかし、鯖を守る手段として意味合いが強いようなので、
利用者側が話し合ってきつく/ゆるくしてもらうというのは何か違う気がするし…

つまるところ、どういう手順で設定変更されるんですかね。
0753動け動けウゴウゴ2ちゃんねる
垢版 |
04/11/05 00:53:04ID:2teMHeVJ
本当の原因
 .htaccessが壊れたため
http://yy12.kakiko.com/test/read.cgi/emg2ch/1099578258/

>437 :マァヴ ★ :04/11/04 23:51:37 ID:???
>直接原因は判明したっぽいです(^_^;)
>順次回復していくと思われ・・・・
>ただ、なんでこうなっちゃったかはまだ不明

>481 :マァヴ ★ :04/11/04 23:53:24 ID:???
>>468
>.htaccessが壊れた(^_^;)らしい


>>665>>665>>665
0754root▲ ★
垢版 |
04/11/05 01:21:11ID:???
さて、原因究明&対策はたぶんここでやることになるんだろうなと。
0756root▲ ★
垢版 |
04/11/05 01:28:12ID:???
>>755
とりあえず緊急対応したので、同じ障害は発生しないはず。
詳細は、FOX ★さんのカキコを待ちましょう。
0763動け動けウゴウゴ2ちゃんねる
垢版 |
04/11/05 12:18:04ID:CUKy1dlv
つまりwebからdenyリスト作る仕掛けが
バグって誰もアクセスできないリスト作って
自動配布したせいで
みんなエラー→リトライで過負荷
が今回の顛末?


root▲が「今回のは俺のせいじゃない」
っつーてるし
0764FOX ★
垢版 |
04/11/05 13:14:04ID:???
青春にありがちな挫折ということで、
0766FOX ★
垢版 |
04/11/05 13:18:47ID:???
おもいやり精神の欠如かな?
0767root▲ ★
垢版 |
04/11/05 13:19:37ID:???
>>764
青春のいいところは、やりなおしが効くってことなんではないかと。
というわけでしくみそのものは悪くないわけで、またぼちぼちと。
0769FOX ★
垢版 |
04/11/05 13:23:23ID:???
>>767
はいはい

BBS 側は再稼動させておいていただけると、、、

おっ いやっ しないでもいいかな?
このまま 遠い世界へと。
0770root▲ ★
垢版 |
04/11/05 13:25:13ID:???
>>769
遠い世界はいやんなので、再稼動します。
まぁ、何かあったらまたいつもどおり、一緒にイベントを楽しむということで。
0771FOX ★
垢版 |
04/11/05 13:27:04ID:???
その先を止めてあるので
多分なにも起きないと思うです。

その先のプログラムを鍛錬すれば
今回のようなことは起きないはずでーす
0772root▲ ★
垢版 |
04/11/05 13:27:20ID:???
再稼動しました。
しばらくようすをみるとゆうことで。
0774FOX ★
垢版 |
04/11/05 13:34:56ID:???
りょうかいですー
0776FOX ★
垢版 |
04/11/05 15:16:03ID:???
甲) 2ちゃんねる各サーバ(60台くらい?)
 ↓a) 投稿ごとに BBS.2ch.net に通知
乙)BBS.2ch.net ここでいろいろ集計
 ↓b) おっ 攻撃だ! qb6 に通知
丙)qb6.2ch.net 攻撃者リストメンテ部
 ↓c) deny リスト作ったわん。全サーバに配信、配信。
丁) 2ちゃんねる各サーバ(59台くらい?) deny from で撃退

a) か b) で何か混入したのか
乙) が誤動作して b) にゴミ入れたのか、
どっちかわからないけど。 丙) の吐き出した大根は腐っていた。

root ★さんは、 b) をとめて、丁を手動で配って直した。
その後 私が c) をとめたんで、b) を動かしてくださいー
とお願いした。 お互いに愛をはぐくんだ >>773-774
0780FOX ★
垢版 |
04/11/05 15:42:45ID:???
root ★さんに質問ですー

BBS.2ch.net の DNS が look up されたら
トカゲにデータが渡されるという仕組みですが
どうやってやるんですかー?

立ち上げっぱなしで、どんどん stdin にぶち込んで
stdout はあるファイルへ出力というようにトカゲを起動する方法でーす。
0784FOX ★
垢版 |
04/11/05 15:53:31ID:???
一手目としては、丙) でゴミは極力排除し
c) に変なのが流れないようにしてみた(まだ cは停止中です)

http://qb6.2ch.net/_403/c403.cg
ここを観察中。。。
0785root▲ ★
垢版 |
04/11/05 15:53:44ID:???
>>780
ん、今のトカゲって、そうなってませんでしたっけ。

というか、今のトカゲの起動方法から何か変えたい、っていうことなのかしら。
0787FOX ★
垢版 |
04/11/05 15:54:58ID:???
>>785
なってます なってます

私もお勉強したいなと
教えてくれよー(簡単に言えばクレクレ君です)
0788root▲ ★
垢版 |
04/11/05 16:00:19ID:???
あぁ、どうやって実現しているか、ってことですか。>>787

そんなに面倒なことはしてないです。別途ここに簡単にまとめを。
0789root▲ ★
垢版 |
04/11/05 16:15:42ID:???
というわけで、かんたんに。

query を受け、その結果をDNSサーバ(tinydns)が、stdoutに吐きます。
通常だとtinydnsの場合、daemontools経由でmultilogというプログラムにパイプされて、
システムログとしてとられてゆくわけですが、
ここで簡単なプログラムを間にはさんで、トカゲプログラムにも出力を横流しするようにしています。

トカゲプログラムをそのままの形で起動するとユーザの権限が変わってしまうので、
setuidgidを使って、トカゲのユーザID/グループIDで起動するように設定してあります。

より具体的には、daemontoolsのlog/runを、

#!/bin/sh
exec setuidgid dnslog multilog t ./main

とかから、

exec 横取りプログラム

とかに変更して、
横取りプログラムの子供としてトカゲプログラム(トカゲユーザの権限)と
従来のmultilog(ログをとるユーザの権限)を呼ぶようにしていると。
0790FOX ★
垢版 |
04/11/05 16:18:15ID:???
ほほぅ

ちと実験してみます。。。
0791root▲ ★
垢版 |
04/11/05 16:30:51ID:???
もうちょっとくわしくいうと、実際には、

#!/bin/sh
exec 横取りプログラム setuidgid dnslog multilog t ./main

のように、引数を伴っています。

で、横取りプログラムは自分の引数をそのままの形で、自分の子供として起動します。
こうやっておくと、multilog側の設定を後で変えるときに便利です。
あとは、横取りプログラム側で今のBBSだと「トカゲ」と「投稿数統計」の2つのプログラムを呼んでいます。

これは、BBX/Rock54をやった時の、
未承諾広告※さんのアイディアとプログラムをほぼそのままいただいているものです。
0792FOX ★
垢版 |
04/11/05 16:38:48ID:???
http://qb6.2ch.net/_403/c403.cgi

今のところゴミの混入はないなぁ、
混入が無いと言うよりも、混入してもすぐつまみ出している
というのが正しいんだが、
0793FOX ★
垢版 |
04/11/05 16:39:30ID:???
>>791
なるほど、なるほどです、、、
0794動け動けウゴウゴ2ちゃんねる
垢版 |
04/11/05 16:48:39ID:J6QXcpok
>>789>>791
ども参考になります。
もうちょっと頑張ってみます。
0795root▲ ★
垢版 |
04/11/05 16:53:55ID:???
で、そのままだと子供側は入力待ちで呼ばれっぱなしな状態になるので、
プログラムを更新した場合には、手でkillしてやる必要があるですね。
例の、なんちゃらreset.sh ってのがそれです。

>>794
なかのひとがんがれ。
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況