[Apache]


この日記のはてなブックマーク数 このエントリーを含むはてなブックマーク

アクセスログの出力形式を設定するにはLogFormatディレクティブを使います。


[書式]
LogFormat "ログのフォーマット" 変数名


LogFormatで指定した変数名はCustomLogディレクティブで使用することができます。


[例]


#LogFormatにてログの形式を設定
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined


#LogFormatで設定したニックネームがcombinedのログ形式を使用。
CustomLog logs/access_log combined


※CustomLogディレクティブにて直接出力形式を指定することも可能です。

ログの書式には以下のものを使用できます。
参照: カスタムログ書式


%...a: リモートIP アドレス
%...A: ローカルIP アドレス
%...B: HTTP ヘッダ以外の送られたバイト数
%...b: HTTP ヘッダ以外の送られたバイト数。CLF 書式。
すなわち、1 バイトも送られなかったときは 0 ではなく、'-' になる
%...c: 応答が終了したときの接続ステータス。
'X' = 応答が終了する前に接続が異常終了
'+' = 応答が送られた後に接続を持続することが可能
'-' = 応答が送られた後に接続は切られる
%...{FOOBAR}e: 環境変数FOOBAR の内容
%...f: ファイル名
%...h: リモートホスト
%...H リクエストプロトコル
%...{Foobar}i: サーバに送られたリクエストの Foobar: ヘッダの内容
%...l: (もしあれば、identd からの) リモートログ名
%...m リクエストメソッド
%...{Foobar}n: 他のモジュールからのメモ "Foobar" の内容
%...{Foobar}o: 応答の Foobar: ヘッダの内容
%...p: リクエストを扱っているサーバの正式なポート
%...P: リクエストを扱った子プロセスのプロセス ID
%...q 問い合せ文字列 (存在する場合は前に ? が追加される。そうでない場合は空文字列)
%...r: リクエストの最初の行
%...s: ステータス。内部でリダイレクトされたリクエストは、元々のリクエストのステータス --- 最後のステータスは %...>s
%...t: 時刻。CLF の時刻の書式 (標準の英語の書式)
%...{format}t: format で与えられた書式による時刻。formatはstrftime(3)の書式である必要がある。(地域化されている可能性がある)
%...T: リクエストを扱うのにかかった時間、秒単位
%...u: リモートユーザ (auth によるもの。ステータス (%s) が 401 のときは意味がない可能性がある)
%...U: リクエストされた URL パスで、クエリ文字列は含まない
%...v: リクエストを扱っているサーバの正式な ServerName
%...V: UseCanonicalName の設定によるサーバ名

"..." は何もないか (例えば、"%h %u %r %s %b" のように)、 その項目を含めるかどうかの条件 (もし条件に合わなかったときは その項目は "-" になります)
にすることができます。条件の形式は HTTP ステータスコードのリストで、前に "!" を付けることもできます。
ですから、"%400,501{User-agent}i" は 400 エラーと 501 エラー (Bad Request と Not Implemented) のときのみ User-agent: をログ収集します。
"%!200,304,302{Referer}i" は普通のステータスを返さなかった すべてのリクエストで Referer: をログ収集します。



関連記事
ScriptLog - CGIスクリプトのエラーログ
mod_proxy_balancerによる負荷分散
MultiViews - 拡張子の自動判別
CGIファイルがあるのに No such file とログにでる
ドキュメントルート直下でファイルの一覧が見れない
MIMEの設定
mod_auth_pgsql
Redirect - URLのリダイレクト
自己署名証明書の作成
Turbolinux - SSLの起動
apache + mod_ssl のインストール
mod_perlのインストール
keytool error: java.io.IOException: AVA parse, quoted strings NYI
tomcat - SSLの設定
tomcatの起動と停止
外部参照の禁止
PHPのソースが表示されてしまう
ファイル名によるアクセス制限
Apacheのバージョンを調べるには
Invalid method in request
file permissions deny server access
SetEnvIfNoCase
LogFormat - アクセスログの出力形式を指定
mod_usertrack - トラッキングクッキーの発行
SSIの主な使用方法
RewriteCond - RewriteRuleの条件を設定
suexecのコンパイル時の設定確認
apacheのバージョン情報を隠すには
SSIを使用するには
CustomLog - アクセスログの保存場所を指定
seg fault or similar nasty error detected
SSLの起動
ユーザエージェントによるアクセス制限
バーチャルホストの設定をするには - NameVirtualHost
バーチャルホストの一覧を見るには
apacheのアクセスログに出現するfavicon.icoとは
httpd.confのsyntaxをチェックをするには
mod_perlに関して
SetEnvIfを使用したログの振り分け
ErrorDocument - エラーメッセージのカスタマイズ
IPによるアクセス制限
AddHandler default-handler
リソース制限
RedirectMatch - URLのリダイレクト
パスワードによる基本認証
Apache2.Xの文字化け
SSL証明書のインストール方法
CSRの作成方法 (Apache+ModSSL)
広告