第 7 章 コマンド
7.3 ahsrlog
者、およびファイル所有者が所属するグループ)と同じファイル属性でリストア/移入を行います。バックアップ/移 出元とリストア/移入先運用環境のファイル属性が異なる場合は、必要に応じて、バックアップ/移出元のファイル 属性に変更してください。
使用例
Interstage HTTP Server 2.2の資源をリストアします。
C:\Interstage\F3FMahs\bin\ahsrestore.exe -d X:\Backup -t all
Interstage HTTP Server 2.2の資源をリストアします。
/opt/FJSVahs/bin/ahsrestore -d /backup -t all
-T
時刻単位およびファイルサイズ単位に、以下のタイミングでローテーションを行います。
- 「timeに指定した時刻」
- ログ出力によるログファイル更新時に「-lオプションに指定したファイルサイズ」を超過する場合
- -rオプションを指定した場合で、Webサーバ起動時に、logfileに指定したログファイル(ファイル名プレフィクス)が
すでに存在し、かつファイルサイズが1バイト以上ある場合
ログが出力されなかった場合は、timeに指定した時刻に0バイトのログファイルを作成します。
-C
日付単位およびファイルサイズ単位に、以下のタイミングでローテーションを行います。
- 「dateに指定した日付」の「-tオプションに指定した時刻」
- ログ出力によるログファイル更新時に「-lオプションに指定したファイルサイズ」を超過する場合
- -rオプションを指定した場合で、Webサーバ起動時に、logfileに指定したログファイル(ファイル名プレフィクス)が すでに存在し、かつファイルサイズが1バイト以上ある場合
ログが出力されなかった場合は、-tオプションに指定した時刻に0バイトのログファイルを作成します。
-W
曜日単位およびファイルサイズ単位に、以下のタイミングでローテーションを行います。
- 「weekに指定した曜日」の「-tオプションに指定した時刻」
- ログ出力によるログファイル更新時に「-lオプションに指定したファイルサイズ」を超過する場合
- -rオプションを指定した場合で、Webサーバ起動時に、logfileに指定したログファイル(ファイル名プレフィクス)が
すでに存在し、かつファイルサイズが1バイト以上ある場合
ログが出力されなかった場合は、-tオプションに指定した時刻に0バイトのログファイルを作成します。
-d
日数単位に、以下のタイミングでローテーションを行います。
- 「Webサーバの起動日の0:00からdaysに指定した日数×24時間」経過後の次のログ出力時
また、以下の条件の場合にもログファイルのローテーションを行いますが、以下の条件でローテーションを行った場合 でも、上記のタイミングに変更はありません。
- ログ出力によるログファイル更新時に、以下のファイルサイズの上限値を超過する場合 2Gバイト
ulimitコマンド(ボーンシェル系)またはlimitコマンド(Cシェル系)で設定されたファイルサイズが2Gバイト以上の
場合は、2Gバイト。小さい場合は、ulimitコマンドまたはlimitコマンドで設定されたファイルサイズ。
- Webサーバ起動後の最初のログ出力時に、logfileに指定したログファイル(ファイル名プレフィクス)がすでに存
在し、そのログファイルの更新日がWebサーバの起動日と異なる場合 なお、ログ出力がなかった場合は、ログファイルを作成しません。
-s
ファイルサイズ単位に、以下のタイミングでローテーションを行います。
- ログ出力によるログファイル更新時に「sizeで指定したファイルサイズ」を超過する場合
logfile
ログファイルを格納するディレクトリ、およびファイル名プレフィクスを、192バイト以内の半角英数字の文字列で指定し ます。
ディレクトリは、実際に存在するディレクトリ名を、絶対パスで指定します。
出力されるログファイルの形式は、以下のようになります。
- 最新ファイル:ファイル名プレフィクス
- ローテーションされたファイル:ファイル名プレフィクス.N
N:通番(Nは0から始まる連続の番号です。新しいファイルの順に、1番目のファイルの通番は「.0」、N番目のファ イルの通番は「.(N-1)」となります。)
time[,...]
時刻単位のローテーションにおいて、ログファイルのローテーションを行う時刻を、以下の形式で指定します。半角カ ンマ(,)で区切ることにより複数の時刻を最大24個まで指定できます。
- 形式:「hhmm」(0000~2359の数値)
- hh:時(00~23)
- mm:分(00~59)
date[,...]
日付単位のローテーションにおいて、ログファイルのローテーションを行う日付を、1から31までの数値で指定します。
半角カンマ(,)で区切ることにより複数の日付を最大31個まで指定できます。
week[,...]
曜日単位のローテーションにおいて、ログファイルのローテーションを行う曜日を、以下の半角英字の文字列で指定 します。半角カンマ(,)で区切ることにより複数の曜日を最大7個まで指定できます。なお、文字列の大文字と小文字 は、区別されません。
- 日曜日:「Sun」
- 月曜日:「Mon」
- 火曜日:「Tue」
- 水曜日:「Wed」
- 木曜日:「Thu」
- 金曜日:「Fri」
- 土曜日:「Sat」
days
日数単位のローテーションにおいて、ローテーションを行う間隔を日数で指定します。日数は、1から365までの数値 で指定します。
size
ファイルサイズ単位のローテーションにおいて、1ファイル当たりの最大ログファイルサイズを、1から以下までの数値
(単位:Mバイト)で指定します。
2047
ulimitコマンド(ボーンシェル系)またはlimitコマンド(Cシェル系)で設定されたファイルサイズが2047Mバイト以上の 場合は、2047。小さい場合は、ulimitコマンドまたはlimitコマンドで設定されたファイルサイズ。
count
ログファイルのファイル数の上限値を、0から999までの数値で指定します。
ファイル数が上限値に達した場合は、指定したオプションのローテーション単位により最も古いログファイルを削除し て新しいログファイルを作成します。
「0」または「1」を指定した場合は、logfileに指定した1つのログファイル(ファイル名プレフィクス)でローテーションを行 います。
-t time
ログファイルのローテーションを行う時刻を設定します。timeには、以下の形式で時刻を指定します。
- 形式:「hhmm」(0000~2359の数値)
- hh:時(00~23)
- mm:分(00~59)
本オプションを省略した場合、ローテーションを行う時刻は、「0000」(00時00分)となります。
-l maxsize
時刻単位/日付単位/曜日単位でのローテーションに加え、さらにファイルサイズ単位でもローテーションを行います。
maxsizeには、1ファイル当たりの最大ログファイルサイズを、1から以下までの数値(単位:Mバイト)で指定します。ロー テーションは、ログ出力によるログファイル更新時に、ファイルサイズが本設定値を超過している場合に行います。
2047
ulimitコマンド(ボーンシェル系)またはlimitコマンド(Cシェル系)で設定されたファイルサイズが2047Mバイト以上の
場合は、2047。小さい場合は、ulimitコマンドまたはlimitコマンドで設定されたファイルサイズ。
本オプションを省略した場合、最大ログファイルサイズは、以下の数値となります。
2Gバイト
ulimitコマンド(ボーンシェル系)またはlimitコマンド(Cシェル系)で設定されたファイルサイズが2Gバイト以上の場合 は、2Gバイト。小さい場合は、ulimitコマンドまたはlimitコマンドで設定されたファイルサイズ。
-m mode
ログファイルのアクセス権限を設定します。modeには、以下の値を指定します。
本オプションを省略した場合は、ログファイルのアクセス権限は、「644」となります。「644」と設定した場合、管理者に は読込み権限および書込み権限があり、グループ・一般ユーザには書込み権限はなく、読込み権限だけとなります。
設定値 管理者 グループ 一般ユーザ
読込み権限 書込み権限 読込み権限 書込み権限 読込み権限 書込み権限
600 ○ ○ × × × ×
640 ○ ○ ○ × × ×
設定値 管理者 グループ 一般ユーザ 読込み権限 書込み権限 読込み権限 書込み権限 読込み権限 書込み権限
644(省略
時)
○ ○ ○ × ○ ×
660 ○ ○ ○ ○ × ×
664 ○ ○ ○ ○ ○ ×
666 ○ ○ ○ ○ ○ ○
○:アクセス権限があります。
×:アクセス権限がありません。
-r
Webサーバ起動時に、logfileに指定したログファイル(ファイル名プレフィクス)がすでに存在し、かつファイルサイズ が1バイト以上ある場合は、Webサーバ起動時のタイミングでログファイルのローテーションを行います。
本オプションを省略した場合は、Webサーバ起動時にログファイルのローテーションを行いません。
注意事項
・ 本コマンドのオプションおよびパラメタは、「形式」に示した順序で指定してください。
・ 定期的にWebサーバまたはオペレーティングシステムを再起動して運用している場合は、ログファイルのローテーショ ンが行われない可能性があります。
以下の条件に該当する場合は、-rオプションを指定して、Webサーバを起動してください。
- -Tオプションを指定した場合で、かつtimeに指定した時刻にWebサーバまたはオペレーティングシステムが停止
していた場合。
- -Cオプションを指定した場合で、かつdateに指定した日付の-tオプションに指定した時刻に、Webサーバまたは
オペレーティングシステムが停止していた場合。
- -Wオプションを指定した場合で、かつweekに指定した曜日の-tオプションに指定した時刻に、Webサーバまたは
オペレーティングシステムが停止していた場合。
・ logfileに指定したログファイル(ファイル名プレフィクス)は、複写/移動/削除/編集を行わないでください。
・ メインホストおよびバーチャルホスト、または異なるディレクティブで、同じログファイル(ファイル名プレフィックス)を指 定しないでください。
・ 複数Webサーバを運用している場合、他のWebサーバと同じログファイル(ファイル名プレフィックス)を指定しないで ください。
・ -Cオプションに、例えば「31」を指定して毎月31日にローテーションを行うように設定しても、31日が存在しない月は、
ローテーションが行われません。月末にローテーションを行いたい場合は、1日00時00分にローテーションを行うなど の設定を検討してください。
・ ローテーションを行った古いログファイルの更新日時は、ローテーションを行う前の最後のログが出力された日時とな ります。
・ ulimitコマンド(ボーンシェル系)およびlimitコマンド(Cシェル系)の詳細については、各OSのドキュメントを参照して
ください。
・
環境定義ファイル(httpd.conf)のErrorLog/CustomLog/TraceLog/TransferLogディレクティブに本コマンド実行文を指 定してログファイルのローテーションを行う場合は、MaxRequestsPerChildディレクティブに設定するHTTPリクエスト数 には必ず「0」を設定してください。「0」以外の値を指定した場合は、ログファイルのローテーションの動作を保証でき ません。