時限回転ファイルロガーを使って、いくつかのログを生成しています。これは tool.log というファイルにログを記録し、真夜中にこれを tool.log.<date> に移動して新しい tool.log を開始します
ログを監視するためにマシン上でtail -f tool.logを実行しているのですが、深夜にtool.logをtool.log.<date>にリネームすると、tailはリネームされたファイルを監視し続けています
私が期待しているのは、tailと似たようなツールで、inodeを追うのではなく、tool.logという名前のファイルを監視し続けることです
このようなものは存在するのでしょうか?ないのであれば、そのためにPythonで自分で書けばいいのですが
60 Hugh 2016-03-29
tailのいくつかの実装にはこのオプションがあります
-F--follow=name --retryと同じ
-f,--follow[={name|descriptor}]は、ファイルの成長に応じて付加されたデータを出力します;-f,--follow,--follow=descriptorは等価です
--retryは、ファイルにアクセスできなくなっても、ファイルを開こうとし続ける
このオプションは POSIX で指定されていないので、どこでもこれに依存することはできません。いくつかの既知の実装
- GNU – は上記のように
-Fを持っています - Mac OS X, FreeBSD, NetBSD – 同じ効果を持つ
-Fオプションがあります - OpenBSD –
-fで十分です(ファイルが入れ替わった場合(つまりinode番号が変わった場合)、tailはファイルを開き直して続行します) - ソラリス – これに相当するものはありません
- Busybox –
-Fは最近のバージョンでは利用可能ですが、ENABLE_FEATURE_FANCY_TAILでコンパイルする必要があります(デフォルトではコンパイルされていません)
92 Toby Speight 2016-03-29
代替案は tail -F コマンドです
-Fオプションは、--follow=nameと--retryオプションとの間に--follow=nameがあることを意味しているので、ファイルが削除されて再度作成された場合でも、tailはあなたのファイルを監視しています
55 Oleg Bolden 2016-03-29
あなたが代替案を求めたから:
lessユーティリティは、tail -Fの代替品になるかもしれません
以下のように実行する必要があります。less --follow-name filename.logを実行し、Shift + Fを押します
これでtail -Fと同じ結果が得られます
5 VL-80 2016-05-11
別の方法としては、watchコマンドを使用することもできます。この例では2秒ごとに、n秒ごとにコマンドを繰り返します
watch -n2 "tail tool.log"
ログの閲覧が終わったらコマンドを終了するには、Ctrl+Cを使用してください
4 Arronical 2016-03-31
lnavは、ファイル名に続くもう一つの素晴らしいツールです
また、ディレクトリを指定することができ、そのディレクトリ内のすべてのファイルを尾行し、他のすべての種類のきちんとした機能に加えます
3 Wayne Werner 2016-03-31
multitailはmultitailがあなたの特定のケースを処理するかどうかはわかりませんが、きっと処理してくれるでしょう
1 Andy Lester 2016-03-31

