Proxyとか

ネット界隈と時事ニュースなどの日常の何気ない話題が中心な信憑性もなければ公平性もない偏った素人のメモ。

 http://fula.jp/ へのリンクはフリーです [メール] [PGP] はこちらよりどうぞ。但し、営利目的の方はご遠慮下さい。    携帯    English    韓国語    中文

<< 200809のログ | TOP | 200805のログ >>

[Server]  Windows版 Apache logresolve.exe でまとめて Apacheのログを HostnameLookup リゾルバ

 more・・

Apacheのログは普通 HostnameLookup off で記録されている方がほとんどだと思います。言わずと知れていますが HostnameLookup on だと Apache のパフォーマンスが著しく低下する為です。HostnameLookup off で記録したログには当然IPアドレスがそのまま記録されますが、生ログとしてリゾルバ済みのログが必要な事もあるかと思います。そのような場合に一気に解決してくれるアイテムが実は Windows版Apacheに既には同梱されています。検索しても殆んど話題になっていないので今回紹介したいと思います。

Apache Download
http://httpd.apache.org/download.cgi

まずは上記でWindows版Apacheをダウンロードしてインストールします。以下で説明する中では
C:\Apache2
にインストールしていると仮定していますので C:\Apache2 にインストールするとわかりやすいかもしれません。実際は
C:\Apache2\bin\logresolve.exe
を利用するのでその他のファイルが必要の無い方はインストール後 logresolve.exe だけを抜き取って他はアンインストールも良いと思います。

logresolve.exe はコマンドラインで利用する実行ファイルなので視覚的なインターフェースで利用する事はできないので簡単に Apache のログファイルをドロップして利用する方法を考えてみました。

resolve.bat
  • 0001 @echo off
  • 0002 rem ### Copyright (c) fula.jp ###
  • 0003 rem ### License :: Apache License 2.0 ###
  • 0004
  • 0005 rem 繰り返し処理の先頭
  • 0006 :loop
  • 0007 rem ドロップされたディレクトリ、ファイル名を表示
  • 0008 echo %~dp1%~nx1 がドロップされました。
  • 0009 rem ファイル生成を表示
  • 0010 echo IPアドレスをHOSTに置き換えたファイルを生成中です。
  • 0011 rem 実際にファイルを変換
  • 0012 rem logresolve.exe [ -s filename ] [ -c ] < access_log > access_log.new
  • 0013 rem C:\Apache2\bin\logresolve.exe 実際にlogresolve.exeを置いた場所を記述する
  • 0014 rem -s %~dp1statistics_%~nx1 リゾルバした結果のレポートを生成する場合のオプション
  • 0015 rem <%1> 入力ファイル(ドロップされたファイル) %~dp1host_%~nx1 ドロップされたファイル名に host_ を追加して出力
  • 0016 C:\Apache2\bin\logresolve.exe -s %~dp1statistics_%~nx1 <%1> "%~dp1host_%~nx1"
  • 0017 echo %~dp1host_%~nx1 を出力しました。
  • 0018 echo .
  • 0019 echo .
  • 0020 shift
  • 0021 rem ドロップされたファイルが無ければ終了
  • 0022 if "%1" == "" goto end
  • 0023 rem それ以外は繰り返し処理
  • 0024 goto loop
  • 0025 :end
  • 0026 echo ドロップしたすべてのファイルのHOST変換が終了しました。
  • 0027 rem pause(一時停止)が必要ない方は以下のpauseを削除
  • 0028 pause

上記の resolve.bat にIPアドレスをHOST名に変換したいログファイルをドロップするだけでコマンドプロンプトが開きリゾルバを開始します。複数のファイルのドロップに対応しているのでまとめてドロップすれば順にずべてのファイルのリゾルバを行います。

resolver.bat-cmd.png


実行参考画面



ここまで良いことばかり書きましたが logresolve.exe は、逆引き(reverse lookup)時のタイムアウトをオプション指定出来ません。実際のタイムアウトは不明ですが、逆引き(reverse lookup)出来ないIPアドレスが100個あればそれぞれにタイムアウトに1秒かかったとしても100秒かかってしまいます。結論を言えばリゾルバ後ファイル出力までかなり時間がかかります。この辺りが非常に残念です。

logresolve.exe で実際に吐き出されたファイルのサンプルです。
host_fula.jp.20080825.log
statistics_fula.jp.20080825.log

logresolve.exe だけの為に Apache をインストールしたくないという方の為に上記の resolver.bat とともにアーカイブ化してみました。元ファイルは本家 Apache2.0.63 に同梱されている logresolve.exe です。ライセンスは logresolve.exe と同じく Apache License 2.0 です。

ダウンロード(Download)
http://fula.jp/blog/image/resolve.bat MD5 :: a04823bc814352a40b55f771d6ea863a
http://fula.jp/blog/image/resolve.zip MD5 :: 317599debba2cf3a9237c58254469fb4

参考URL
logresolve - Resolve IP-addresses to hostnames in Apache log files
http://httpd.apache.org/docs/2.0/ja/programs/logresolve.html

logresolve is a post-processing program to resolve IP-addresses in Apache's access logfiles.

 more・・
To minimize impact on your nameserver, logresolve has its very own internal hash-table cache. This means that each IP number will only be looked up the first time it is found in the log file.

Takes an Apache log file on standard input. The IP addresses must be the first thing on each line and must be seperated from the remainder of the line by a space.

Synopsis

logresolve [ -s filename ] [ -c ] < access_log > access_log.new

Options

-s filename

Specifies a filename to record statistics.

-c

This causes logresolve to apply some DNS checks: after finding the hostname from the IP address, it looks up the IP addresses for the hostname and checks that one of these matches the original address.

余談ですが logresolve.exe は Apache のログ以外でもテキストベースのIPアドレスの羅列なら適当にHostnameLookup してくれます。一行に付き1IPアドレス(一行に複数のIPアドレスがある場合は行の先頭のIPアドレス)のみ HostnameLookup というルールはあるようですが、改行の繰り返しなら適当に HostnameLookup 済みのファイルをはき出してくれます。

[2008/08/25(Mon) 22:48:11] [admin] [Comments:0] [Trackbacks:0]

[Server]  Apache高速化 SendBufferSize 設定で転送速度アップ

 more・・

ApscheにSendBufferSizeを設定する事でApache高速化(転送速度アップ)が得られたのでまとめてみました。

httpd.conf

before

項目なし

after

# SendBufferSize
# The server will set the TCP send buffer size to the number of bytes specified.
# Very useful to increase past standard OS defaults on high speed high latency
# (i.e., 100ms or so, such as transcontinental fast pipes).
# If set to the value of 0, the server will use the OS default.
# http://httpd.apache.org/docs/2.0/mod/mpm_common.html#sendbuffersize
#
SendBufferSize 89082 # この89082は各々の環境に依存します。

s-test.wmv.2008.08.22-before.png

before

3.39MB/s (27.12Mbps)
s-test.wmv.2008.08.22-after.png

after

6.79MB/s (54.32Mbps)

SendBufferSize ディレクティブ
http://httpd.apache.org/docs/2.0/mod/mpm_common.html#sendbuffersize

サーバは TCP バッファサイズを指定されたバイト数に設定します。

高速で高レイテンシな環境で (例 100ms 程度、大陸横断高速通信路など) 古い一般的な OS のデフォルト値を増やすのに非常に便利です。

0にした場合、OS のデフォルト値が使用されます。

私の環境ではこのようになりましたが各々の環境に依ると思います。上記で書いた SendBufferSize 89082 は私の環境で最適であると思われる数値なのでこの数値は各々の環境に於いて異なる数値になるかと思います。尚。OSに於いてもTcpWindowSize(RWIN)で同じ値を設定しています。

接続テストは双方ともBフレッツ光回線でサーバとクライアントで別々のプロバイダを利用しWan側でテストしました。

サイト内関連記事
Apache高速化 チューニング BufferedLogs
Apache高速化 EnableMMAP Off EnableSendfile off で転送速度アップ

[2008/08/23(Sat) 10:42:19] [admin] [Comments:0] [Trackbacks:0]

[日本]  靖国神社へ行って参りました。

 more・・

今日は終戦記念日です。靖国神社へ行って参りました。
正午の黙祷の時は、やはり何か深いものを感じます。
日本人として恥じることなく生きていかねばならないとあらためて感じました。

s-2008.08.15.000.jpg
[2008/08/15(Fri) 15:21:37] [admin] [Comments:0] [Trackbacks:1]

[Webprog]  PHP 4.4.9 release

 more・・

PHP 4.4.9 がリリースされました。セキュリティーと安定性のの向上が期待できます。また、すべてのユーザーにアップデートを強く推薦しています。尚、今回のアップデートは PHP 4.4 最後のリリースとなります。何らかの理由で未だ PHP4 を利用中の方はアップデートした方が良さそうです。

4.4.9 Release Announcement
http://www.php.net/releases/4_4_9.php

PHP 4 ChangeLog
http://www.php.net/ChangeLog-4.php#4.4.9

Security Enhancements and Fixes in PHP 4.4.9:

  • Updated PCRE to version 7.7.
  • Fixed overflow in memnstr().
  • Fixed crash in imageloadfont when an invalid font is given.
  • Fixed open_basedir handling issue in the curl extension.
  • Fixed mbstring.func_overload set in .htaccess becomes global.
[2008/08/09(Sat) 01:10:30] [admin] [Comments:0] [Trackbacks:0]

[一般]  首都高速5号池袋線の車両火災事故に伴う乗継

 more・・ 当然と言えば当然なのですが乗り継ぎ出来るようです。

首都高速5号池袋線(下り)のタンクローリー横転・車両火災事故に伴う乗継について
http://www.shutoko.jp/info/h20/route5transit.html

今回の事故に伴う復旧工事が完了するまでの間、首都高速道路を乗り継ぐ場合(通行止め区間をう回するため、一旦街路に下りて、再度首都高速道路に乗る場合)に、再度料金をいただかない措置を以下のとおり現在、実施させていただいております。 事故による渋滞等により、お客様には大変ご迷惑をお掛けしますが、何卒ご理解とご協力の程よろしくお願いいたします。

事故後の都内の渋滞が最悪です。例年の年度末の渋滞以上の渋滞が連日続いています。

080806_1714~01.JPG

僅か、34km走るのに3時間23分かかり、それに伴った燃費が3km/L 私だけが渋滞しているわけではないのでこの渋滞に伴う全体での経済的な損失と環境負荷はすごい事になりそうです。

[2008/08/07(Thu) 06:51:49] [admin] [Comments:0] [Trackbacks:0]

[net]  イー・モバイル EMOBILE から .info につながらない

 more・・

先日からイーモバイルのDNSサーバ経由だと .info が引けないので自分だけの固有の問題と思っていたのですが同じ様な状況の方がいるようなので私も報告がてら書いてみました。しかしながらイーモバイルでは現在も障害であるとは認識していないようです。

イーモバイルから .info のサイトが開けない件
http://www.msng.info/archives/2008/08/post_718.php

対策なのですが EMOBILE HW Utility からの接続だと強制的にイーモバイルのDNSを使うことになってしまうのでダイヤルアップ接続を自分で作成し、DNSを明示的に指定します。私の場合はプライマリにぷらら、セカンダリにDIONのDNSを指定しました。この状態で接続すれば .info も問題なく使えるようになります。ただしこのやり方は私の個人的な対策方法なので試される方は自己責任でやってみてください。

関連リンク
イー・モバイル EMOBILE
http://emobile.jp/

[2008/08/05(Tue) 06:53:46] [admin] [Comments:0] [Trackbacks:0]

<< 200809のログ | TOP | 200805のログ >>

apache_powered.gif php5_powered.gif eaccelerator_powered.gif zend_optimizer_powered.gif xmail_powered.gif opera9_browser.gif

FLEUGELz