前へ     目次     索引     DocHome     次へ     
iPlanet Web Server, Enterprise Edition 管理者ガイド



第 9 章   ログファイルの使用


複数の方法で、サーバのアクティビティを監視することができます。この章では、ログファイルを記録して参照することによって、サーバを監視する方法について説明します。組み込みパフォーマンス監視サービス、サービス品質機能、SNMP の使用の詳細は、第 10 章「サーバの監視」を参照してください。

この章は、次の節で構成されています。



ログファイルについて

サーバのログファイルには、サーバのアクティビティが記録されます。このようなログを使用してサーバを監視すると、障害追跡時に役立ちます。サーバのルートディレクトリの https-server_name/logs/errors に保存されるエラーログファイルには、サーバで検出されたすべてのエラーのリストがあります。サーバのルートディレクトリの https-server_name/logs/access に保存されるアクセスログには、サーバに対する要求とサーバの応答に関する情報が記録されます。iPlanet Web Server の access ログファイルに記録される情報を指定することができます。サーバの統計情報を生成するには、ログアナライザを使用します。サーバのエラーログファイルとアクセスログファイルをアーカイブし、バックアップをとっておくことができます。



オペレーションシステムでの制限によって、Linux 上で稼働している iPlanet Web Server では 2G バイトを超えるログファイルを処理できません。最大サイズに達すると、ロギングが終了します。





アクセスログファイルの参照



サーバで使用中のアクセスログファイル、およびアーカイブされたアクセスログファイルを参照できます。

Administration Server から Administration Server のアクセスログファイルを参照するには、「Preferences」タブを選択し、「View Access Log 」ページを選択します。

Server manager から サーバインスタンスのアクセスログを参照するには、「Logs」タブを選択し、 「View Access Log」ページを選択します。

Class Manager から個々の仮想サーバのアクセスログを参照するには、強調表示されている「Manage Virtual Servers」ページから管理する仮想サーバを選択し、Virtual Server Manager のページで見出しの「Access Log」の横のリンクをクリックします。参照するエントリ数、または参照したい条件修飾子付きのエントリを指定できます。

次の内容は、共通ログファイル形式のアクセスログの例です 。ログファイルの形式は、「Log Preference」ウィンドウで指定します。詳細は、「ログの詳細設定」を参照してください。


wiley.a.com - - [16/Feb/2001:21:18:26 -0800] "GET / HTTP/1.0" 200 751
wiley.a.com - - [17/Feb/2001:1:04:38 -0800] "GET /docs/grafx/icon.gif HTTP/1.0" 204 342
wiley.a.com - - [20/Feb/2001:4:36:53 -0800] "GET /help HTTP/1.0" 401 571
arrow.a.com - john [29/Mar/2001:4:36:53 -0800] "GET /help HTTP/1.0" 401 571

表 9-1 では、このサンプルアクセスログの最後の行について説明します。


表 9-1    サンプルアクセスログファイルの最後の行のフィールド 

アクセスログフィールド

Hostname or IP address of client  

arrow.a.com。 (この場合、Web サーバの DNS 検索の設定が有効になっているため、ホスト名が表示されます。DNS 検索が無効になっている場合は、クライアントの IP アドレスが表示されます。)  

RFC 931 information  

- (RFC 931 の識別情報は表示されません)  

Username  

john (認証のためにクライアントによって入力されたユーザ名)  

Date/time of request  

29/Mar/2001:4:36:53 -0800  

Request  

GET /help  

Protocol  

HTTP/1.0  

Status code  

401  

Bytes transferred  

571  

次の内容は、フレキシブルロギング形式を使用したアクセスログの例です。 ログファイルの形式は、「Log References」ページで指定します。詳細は、「ログの詳細設定」を参照してください。


wiley.a.com - - [25/Mar/2001:12:55:26 -0800] "GET /index.htm HTTP/1.0" "GET" "/?-" "HTTP/   1.0" 304 0 - Mozilla/2.0 (WinNT; I)
wiley.a.com - - [25/Mar/2001:12:55:26 -0800] "GET / HTTP/1.0" "GET" "/?-" "HTTP/1.0" 304 0    - Mozilla/2.0 (WinNT; I)
wiley.a.com - - [25/Mar/2001:12:55:26 -0800] "GET / HTTP/1.0" "GET" "/?-" "HTTP/1.0" 304 0    - Mozilla/2.0 (X11; I; IRIX 5.3 IP22)



エラーログファイルの参照



エラーログファイルには、ログファイルが作成されてからサーバで検出されたエラーが記録されます。また、このログファイルにはサーバの起動時などのサーバに関する情報メッセージも記録されます。エラーログには、失敗したユーザ認証も記録されます。エラーログを使用して、無効な URL パスや保存場所が見つからないファイルを検索できます。

Administration Server から Administration Server のエラーログファイルを参照するには、「Preferences」タブを選択し、「View Error Log」ページを選択します。

Server manager からサーバインスタンスのエラーログファイルを参照するには、「Logs」タブを選択し、「View Error Log」ページを選択します。

Class Manager から個々の仮想サーバのエラーログを参照するには、強調表示されている「Manage Virtual Servers」ページから管理する仮想サーバを選択し、Virtual Server Manager のページで見出しの「Error Log」の横のリンクをクリックします。参照するエントリ数、または参照したい条件修飾子付きのエントリを指定できます。

次の内容は、エラーログ内のエントリの 2 つの例です。最初の例には、サーバの起動に成功したことを示す情報メッセージを表示します。2 番目の例では、クライアントの wiley.a.comreport.html ファイルを要求したけれども、ファイルがサーバのプライマリドキュメントディレクトリに存在しなかったことを示します。


[[22/Jan/2001:14:31:41] info (39700):successful server startup [22/Jan/2001:14:31:41] info (39700):iPlanet-WebServer-Enterprise/6.0 BB1-01/22/2001 01:45
[22/Jan/2001:14:31:42] warning (13751):for host wiley.a.com trying to GET /report.html, send-file reports:can't find /usr1/irenem/ES60-0424/docs/report.html (File not found)



ログファイルの保管



アクセスログファイルとエラーログファイルが自動的にアーカイブされるように設定することができます。指定した時間に、または指定した間隔で、ログがローテーションされます。iPlanet Web Server は古いログファイルを保存し、そのファイルに保存時の日付と時刻が含まれる名前を付けます。たとえば、1 時間おきにアクセスログファイルをローテーションし、iPlanet Web Server でファイルを「access.199907152400」という名前で保存するように設定することができます。ログファイルの名前は、年、月、日、24 時間形式の時間が連結され、1 つの文字列になります。ログアーカイブファイルの形式は、設定したログローテーションのタイプによって異なります。

iPlanet Web Server では、内部デーモンログローテーションと Cron ベースのログローテーションの 2 つのタイプのアーカイブファイルのログローテーションを使用できます。


内部デーモンログローテーション

このタイプのログローテーションは HTTP デーモン内で発生し、起動時にだけ構成を変更できます。内部デーモンログローテーションでは、サーバの再起動を必要とせず、サーバで内部的にログをローテーションできます。この方法でローテーションされるログは、次の形式で保存されます。

access.<4 digit year><2 digit month><2 digit day><4 digit 24-hour time>
error.<4 digit year><2 digit month><2 digit day><4 digit 24-hour time>

ログファイルをローテーションし、新しいログファイルでの記録を開始する間隔として使用される時間を指定できます。たとえば、ローテーションの開始時刻が午前 12 時で、ローテーションの間隔が 1440 分 (1 日) の場合、現在時刻にかかわらず、保存直後に新しいログファイルが作成され、ローテーションの開始時間まで情報を収集します。ログファイルは毎日午前 0 時にローテーションされ、アクセスログのタイムスタンプは午前 0 時になり、access.199907152400 という名前で保存されます。同様に、間隔を 240 分 (4 時間) に設定した場合、午前 0 時から 4 時間おきにログがローテーションされます。アクセスログファイルには、午前 0 時から午前 4 時まで、午前 4 時から午前 8 時まで、それ以降同様に 4 時間で収集された情報が保存されます。

ログローテーションが有効になっている場合、サーバの起動時にログファイルのローテーションが開始されます。ローテーションされる最初のログファイルでは、現在時刻から次のローテーションまでの間の情報が収集されます。前の例を使用して、開始時刻を午前 0 時に設定し、ローテーションの間隔を 240 分に設定した場合、現在時刻が午前 6 時とすると、ローテーションされる最初のログファイルには午前 6 時から午前 8 時の間に収集された情報が保存され、次のログファイルには午前 8 時から午後 12 時 (正午) までの間に収集された情報が保存されます。


Cron ベースのログローテーション

このタイプのログローテーションは、server_root/https-admserv/config/ ディレクトリの cron.conf ファイルに記録される時間を基準にします。この方法では、すぐにログファイルをアーカイブすることも、サーバで特定の日の特定の時間にログファイルをアーカイブするように設定することもできます。サーバの cron 構成オプションは、server_root/https-admserv/config/ ディレクトリの ns-cron.conf に保存されます。cron ベースの方法でローテーションされるログは、元のファイル名の後にローテーションされた日時が追加された名前で保存されます。たとえば、午後 4 時 30 分にローテーションされる accessaccess.24Apr-0430PM という名前になります。

ログローテーションは、サーバの起動時に初期化されます。ローテーションを有効にすると、iPlanet Web Server はタイムスタンプの付いたアクセスログファイルを作成し、ロテーションがサーバの起動時に開始されます。

ローテーションが開始されると、アクセスログファイルまたはエラーログファイルに記録する必要のある要求やエラーがあり、事前にスケジューリングされている「次のローテーション時」の後にその要求やエラーが発生した場合、iPlanet Web Server で新しいタイムスタンプが付いたログファイルが作成されます。



ログアナライザを実行する前に、サーバログをアーカイブする必要があります。



ログファイルをアーカイブし、内部デーモンの方法と cron ベースの方法のどちらを使用するかを指定するには、Server Manager で「Archive Log Files」ページを使用します。



ログの詳細設定



インストール中、サーバに access という名前のアクセスログファイルが作成されます。アクセスをログに記録するか否か、ロギングに使用する形式、クライアントがリソースにアクセスした場合にサーバでそのクライアントのドメイン名を検索する必要があるか否かを指定することによって、リソースに対するアクセスロギングをカスタマイズできます。

複数の仮想サーバに対して 1 つのログファイルを使用するには、そのログファイルのアクセスログの書式文字列に %vsid% を含めて、エラーログ用に magnus.conf ファイルで LogVsId を有効にする必要があります。次の手順に従って、magnus.conf ファイルと、Administration Server の UI でロギングの詳細設定にアクセスし、必要な変更を行います。変更内容は Administration server の再起動後に反映されます。

LogVsId を有効にするには、次の手順を実行します。

  1. Server Manager にアクセスし、「Preference」タブを選択します。

  2. 「Magnus Editor」リンクをクリックします。

  3. 「Select a Setting」ドロップダウンリストから「Logging Settings」を選択し、「Manage」をクリックします。

  4. 「LogVsId」の値として「On」を選択します。

  5. 「OK」ボタンをクリックします。

ログファイルの書式文字列に %vsid% を追加するには、次の手順を実行します。

  1. Server Manager にアクセスし、「Logs」タブを選択します。

  2. 「Log Preferences」リンクをクリックします。

  3. 「Log File:」テキストボックスに、新しいログファイルの保存場所とファイル名を入力します。

  4. 「Only Log:」ラジオボタンをクリックします。

  5. 「Vsid」チェックボックスをクリックします。 または、「Custom Format:」ラジオボタンをクリックし、文字列「%vsid%」を追加します。



    カスタム形式の文字列「%vsid%」を追加する場合、新しいアクセスログファイルを使用する必要があります。



magnus.conf の LogVsId 指令については、『NSAPI プログラマーズガイド』の「エラーログ作成と統計収集」を参照してください。

既存のログファイルの形式を変更する場合は、最初に既存のログファイルを削除するか、名前を変更します。あるいは、別のファイル名を使用します。

サーバアクセスログは、共通ログファイル形式、フレキシブルログ形式、または独自のカスタマイズ可能な形式にすることができます。共通ログファイル形式は一般的にサポートされている形式で、サーバに関する一定量の情報が提供されます。フレキシブルログ形式では、(iPlanet Web Server から) ログに記録する内容を選択できます。カスタマイズ可能な形式では、ログの内容を制御するために指定する、パラメータブロックを使用します。カスタマイズ可能な形式のパラメータのリストについては、『NSAPI プログラマーズガイド』を参照してください。

リソースのアクセスログが作成されると、そのログをアーカイブする場合や、同じリソースに対して新しいアクセスログファイルを作成する場合を除いて、アクセスログの形式を変更することはできません。

ロギングの詳細設定を指定するには、 Server Manager の「Log Preferences」ページを使用するか、または obj.conf (または magnus.conf) ファイルで次の指令を手動で変更します。magnus.conf では、サーバは関数 flex-init を呼び出してフレキシブルロギングシステムを初期化し、obj.conf で関数 flex-log を呼び出して要求された特定のデータをフレキシブルログ形式で記録します。共通ログファイル形式を使用して要求をログに記録するには、サーバは init-clf を呼び出して obj.conf で使用される共通ログのサブシステムを初期化し、common-log を呼び出して要求された特定のデータを (ほとんどの HTTP サーバで使用される) 共通ログ形式で記録します。

NSAPI ロギング関数と有効な指令とパラメータの詳細は、『NSAPI プログラマーズガイド』を参照してください。


Cookie を使用した簡易ロギング

iPlanet Web Server には、flexlog機能を使用して簡単に特定の cookie のログをとる方法もあります。構成ファイル magnus.confflex-log サブシステムを初期化する行に「Req->headers.cookie.cookie_name」を追加します。これによって、要求のヘッダーに cookie 変数がある場合は cookie 変数 cookie_name の値がログに記録され、ない場合は「-」が記録されます。



ログアナライザの実行



server-root/extras/log_anly ディレクトリには、Server Manager のユーザインタフェースから実行するログ分析ツールがあります 。このログアナライザは、共通ログ形式のファイルだけを分析します。log_anly ディレクトリにある HTML ドキュメントに、このツールのパラメータが説明されています。server-root/extras/flexanlg ディレクトリには、フレキシブルログファイル形式用のコマンド行ログアナライザがあります。ただし、Server Manager のデフォルト設定では、共通ログファイル形式とフレキシブルログファイル形式のどちらを選択したかに関係なく、フレキシブルログファイルレポートツールを使用するように設定されています。

ログアナライザを使用して、アクティビティの要約、もっとも頻繁にアクセスされる URL、サーバがもっとも頻繁にアクセスされる時間など、デフォルトサーバの統計情報を生成します。ログアナライザは iPlanet Web Server から実行することも、コマンド行から実行することもできます。ログアナライザでは、デフォルトサーバ以外の仮想サーバの統計情報を生成することはできません。ただし、「アクセスログファイルの参照」で説明されているように、各仮想サーバの統計情報を参照することはできます。



ログアナライザを実行する前に、サーバログをアーカイブする必要があります。サーバログのアーカイブの詳細は、「ログファイルの保管」を参照してください。



Server Manager からログアナライザを実行するには、次の手順を実行します。

  1. Server Manager の「Logs」タブを選択します。

  2. 「Genarate Report」をクリックします。

  3. 各フィールドに必要事項を入力します。

  4. 「OK」をクリックします。

    新しいウィンドウにレポートが表示されます。

詳細は、オンラインヘルプの「「Generate Report」ページ」を参照してください。

コマンド行からアクセスログファイルを分析するには、ツール flexanlg を実行します。このツールは server-install/extras/flexanlg ディレクトリにあります 。

flexanlg を実行するには、コマンドプロンプトに以下のコマンドとオプションを入力します。

flexanlg [ -P ] [-n name] [-x] [-r] [-p order] [-i file]* [ -m metafile ]* [ o file][ c opts] [-t opts] [-l opts]

次に構文を説明します。


flexanlg -h.):
-P:proxy log format                                   Default:no
-n servername:The name of the server
-x :Output in HTML                                    Default:no
-r :Resolve IP addresses to hostnames                 Default:no
-p [c,t,l]:Output order (counts, time stats, lists)   Default:ctl
-i filename:Input log file(s)                         Default:none
-o filename:Output log file                           Default:stdout
-m filename:Meta file(s)                              Default:none
-c [h,n,r,f,e,u,o,k,c,z]:Count these item(s) -        Default:hnreuokc
    h:total hits
    n:304 Not Modified status codes (Use Local Copy)
    r:302 Found status codes (Redirects)
    f:404 Not Found status codes (Document Not Found)
    h:500 Server Error status codes (Misconfiguration)
    u:total unique URL's
    o:total unique hosts
    k:total kilobytes transferred
    c:total kilobytes saved by caches
    z:Do not count any items.
-t [sx,mx,hx, xx,z]:Find general stats - Default:s5m5h24x10
    s(number):Find top (number) seconds of log
    m(number):Find top (number) minutes of log
    h(number):Find top (number) hours of log
    u(number):Find top (number) users of log
    a(number): Find top (number) user agents of log
    r(number):Find top (number) referers of log
    x(number):Find top (number) for miscellaneous keywords
    z:Do not find any general stats.
-l [cx,hx]:Make a list of - Default:c+3h5
    c(x,+x):Most commonly accessed URLs
            (x:Only list x entries)
             (+x:Only list if accessed more than x times)
    h(x,+x):Hosts (or IP addresses) most often accessing your server
             (x:Only list x entries)
             (+x:Only list if accessed more than x times)
    z:Do not make any lists



イベントの表示 (Windows NT)



サーバエラーログへのエラーのロギング (「エラーログファイルの参照」を参照) に加えて、iPlanet Web Server は深刻なシステムエラーのログをイベントビューアに記録します。イベントビューアでは、システム上のイベントを監視できます。イベントビューアを使用して、基本構成での問題によって発生したエラーを参照します。この問題は、エラーログが開けるようになる前に発生する可能性があります。

イベントビューアを使用するには、次の手順を実行します。

  1. 「スタート」メニューから、「プログラム」、「管理ツール」を順に選択します。「管理ツール」プログラムグループで「イベントビューア」を選択します。

  2. 「ログ」メニューの「アプリケーション」を選択します。

「イベントビューア」に「アプリケーションログ」が表示されます。iPlanet Web Server でのエラーには、https-serverid または WebServer6.0 というソースラベルが付いています。

  1. 「表示」メニューの「検索」を選択すると、ログ内でこのようなラベルを検索できます。「表示」メニューの「最新の情報に更新」を選択すると、更新されたログエントリを表示できます。

    イベントビューアの詳細は、お使いのシステムのマニュアルを参照してください。


前へ     目次     索引     DocHome     次へ     
Copyright © 2001 Sun Microsystems, Inc. Some preexisting portions Copyright © 2001 Netscape Communications Corp. All rights reserved.

Last Updated October 17, 2001