2004年03月27日(土) [長年日記]
■ Googleから検索されない
Googleからのアクセスがどんどん減ってきている。Googleにインデックス化されているページの数が減っているのが原因だ。今だと91件しかない。以前は1000件くらいあったのだけれど。
なんでだろ。googlebotからアクセスがあるとエラーになっちゃってるのかな?
■ [hard] 最新A4インクジェットプリンタ7機種を比較する (Vwalker.com)
2003年年末時点での最新機種の比較記事。最後でエプソンとキヤノンがチョイスされている。
プリンタ買おうと思ってて、今日はずっとウェブで色々見ていた。hpの Deskjet 5160 に傾いていたのだけれど、やっぱキヤノンの方が無難かなあと今は PIXUS 560i を買う気でいる。
■ [unix] syslog() 及び syslogd の考察 (tnetio)
セキュリティホールmemoより。主にsyslogd側の考察。
従って、syslogd の能力が低下すると言う事は、/dev/log からの受信が遅くなると言う事であり、もし、大量のログメッセージが発生した場合、最悪、/dev/log のカーネル内バッファが一杯になる場合があります。
もし、/dev/log のバッファが一杯の状態で、syslog() を呼び出した場合、syslogd が /dev/log からデータを抜き取り、バッファに空きが出来るまで、 *呼び出したプロセス側が待たされる事になります*
とあるけどほんとかな。NetBSD1.6.1での経験だと、syslog() をがんがん呼び出すと待たされるのではなくてログは捨てられていました。syslog() の戻り値は void なんだけど、errno を見張っているとちょくちょくエラーになっていました。
syslog() のソースを見ると、send() に失敗すると出力を諦めているようなのでここでログが捨てられてしまうのだと思います。send() は sendto() を呼び出しているだけで sendto() のソースを見つけられないのでどういうときに send() に失敗するのかは理解していません。
ログが捨てられてしまうと困るので、syslog() 呼び出しの結果 errno がセットされていたら usleep() してから syslog() を再度呼び出すようにして対処していました。
■ やること
- プリンタをどうにかする