
処理するファイルを保存するフォルダーがあります。処理が完了すると、ファイルは別のディレクトリに移動されます。
現在、このディレクトリ内のファイルを監視し、1 時間以上経過したファイル (つまり、まだ処理されていないファイル) がある場合に警告する方法を考えています。
Zabbix では、vfs.file.time 項目を使用できますが、これは 1 つのファイルのみを監視するため、ファイル名も指定する必要があります。監視しているフォルダー内の名前は無関係です。
これを実現する最もクリーンな方法は何でしょうか?
答え1
あなたが説明しているようなファイルで動作するかどうかは完全にはわかりませんが、LLD (Low Level Discovery) を設定できる可能性があります。
https://www.zabbix.com/documentation/4.0/manual/discovery/low_level_discovery
答え2
「最もクリーンな」方法はおそらくUserParameter
エージェントの設定またはリモートコマンド必要な出力を持つスクリプトを記述するだけです。または、さらに簡単な方法find ./ -type f -mmin +60 | wc -l
として、たとえば を使用して出力をチェックするだけです!= 0
。
答え3
Zabbix エージェントを試してくださいvfs.dir.count
:
vfs.dir.count[dir, <正規表現内訳>, <正規表現除外>, <タイプ内訳>, <タイプ除外>, <最大深さ>, <最小サイズ>, <最大サイズ>,<最小年齢>、<最大年齢>、<正規表現除外ディレクトリ>]
最小年齢- カウントするディレクトリエントリの最小経過時間(秒単位)。より新しいエントリはカウントされません。