逆引きUNIXコマンド/ローテーションされるファイルをtailする方法
の編集
Top
/
逆引きUNIXコマンド
/
ローテーションされるファイルをtailする方法
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
(no template pages)
#navi(../) * ローテーションされるファイルをtailする方法 [#kcff4ae9] tail -f ファイル名 でログなどを監視していると、ログのファイルサイズが規定のサイズになり、~ 自動的に別名にされ(ローテイト)され、tail -f では見れなくなってしまいます。~ この代わりに''-F''オプションを使うとこにより、ローテイトされても指定したファイルを関しすることができます。~ 以下に実際に動作確認を行った例を記します。 #contents * tail -F ファイル名を試してみる [#v28a89fc] 以下に tail -F を試した実行例を記します。 + ターミナルを2つ開きます。~ tail -F コマンドを実行するターミナルをターミナル(A)、ファイル操作をするターミナルをターミナル(B)として記します。 + ターミナル(A)で以下のコマンドを実行します。 tail -F /tmp/test.log 以下、実行時の出力です。 $ tail -F /tmp/test.log tail: `/tmp/test.log' を 読み込み用に開くことが出来ません: そのようなファイルやディレクトリはありません 警告メッセージが出力されますが、tailコマンドは実行されています。~ ちなみに、-fオプションだと以下のようなエラーが出力されます。 $ tail -f /tmp/test.log tail: `/tmp/test.log' を 読み込み用に開くことが出来ません: そのようなファイルやディレクトリはありません tail: ファイルが全く残っていません $ +ターミナル(B)から、/tmp/test.log ファイルに文字列を追記してみる。 以下のコマンドで/tmp/test.logに文字列を追記してみます。 $ date > /tmp/test.log $ echo HELLO >> /tmp/test.log + ターミナル(A)には、以下のメッセージが表示され、追記した文字列がターミナル(A)に表示されます。 tail: `/tmp/test.log' が現れました。新しいファイルの終端を追跡します 2016年 12月 8日 木曜日 19:02:42 JST HELLO + ターミナル(B)でファイルを削除する。 $ rm /tmp/test.log + ターミナル(A)には以下のメッセージが表示されます。 tail: `/tmp/test.log' はアクセス不能になりました: そのようなファイルやディレクトリはありません + 再度、ターミナル(A)で監視ファイルを作成し文字列を追記してみる。 $ echo SAKURA > /tmp/test.log + ターミナル(A)に追記した文字列が表示されます。 SAKURA 尚、停止したい場合は、Ctrl+Cを押してください。 以上のようにwebサーバのログやDBのログなどを関ししているとき、自動的にローテイトされてしまうので、~ tailの-Fオプションを使用することにより、ファイルが削除されたり、リネームされたりしても、~ 常に指定したファイルを監視することができます。 #htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)
タイムスタンプを変更しない
#navi(../) * ローテーションされるファイルをtailする方法 [#kcff4ae9] tail -f ファイル名 でログなどを監視していると、ログのファイルサイズが規定のサイズになり、~ 自動的に別名にされ(ローテイト)され、tail -f では見れなくなってしまいます。~ この代わりに''-F''オプションを使うとこにより、ローテイトされても指定したファイルを関しすることができます。~ 以下に実際に動作確認を行った例を記します。 #contents * tail -F ファイル名を試してみる [#v28a89fc] 以下に tail -F を試した実行例を記します。 + ターミナルを2つ開きます。~ tail -F コマンドを実行するターミナルをターミナル(A)、ファイル操作をするターミナルをターミナル(B)として記します。 + ターミナル(A)で以下のコマンドを実行します。 tail -F /tmp/test.log 以下、実行時の出力です。 $ tail -F /tmp/test.log tail: `/tmp/test.log' を 読み込み用に開くことが出来ません: そのようなファイルやディレクトリはありません 警告メッセージが出力されますが、tailコマンドは実行されています。~ ちなみに、-fオプションだと以下のようなエラーが出力されます。 $ tail -f /tmp/test.log tail: `/tmp/test.log' を 読み込み用に開くことが出来ません: そのようなファイルやディレクトリはありません tail: ファイルが全く残っていません $ +ターミナル(B)から、/tmp/test.log ファイルに文字列を追記してみる。 以下のコマンドで/tmp/test.logに文字列を追記してみます。 $ date > /tmp/test.log $ echo HELLO >> /tmp/test.log + ターミナル(A)には、以下のメッセージが表示され、追記した文字列がターミナル(A)に表示されます。 tail: `/tmp/test.log' が現れました。新しいファイルの終端を追跡します 2016年 12月 8日 木曜日 19:02:42 JST HELLO + ターミナル(B)でファイルを削除する。 $ rm /tmp/test.log + ターミナル(A)には以下のメッセージが表示されます。 tail: `/tmp/test.log' はアクセス不能になりました: そのようなファイルやディレクトリはありません + 再度、ターミナル(A)で監視ファイルを作成し文字列を追記してみる。 $ echo SAKURA > /tmp/test.log + ターミナル(A)に追記した文字列が表示されます。 SAKURA 尚、停止したい場合は、Ctrl+Cを押してください。 以上のようにwebサーバのログやDBのログなどを関ししているとき、自動的にローテイトされてしまうので、~ tailの-Fオプションを使用することにより、ファイルが削除されたり、リネームされたりしても、~ 常に指定したファイルを監視することができます。 #htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)
テキスト整形のルールを表示する