web-dev-qa-db-ja.com

OPENWRTでのログ読み取り

こんにちは、OPENWRTがインストールされているルーターに接続されているネットワークに対するすべてのリクエストを読みたいのですが、システムのすべてのログを取得しています。

logread -e ': query'

次の出力

Mon Sep 11 07:44:20 2017 daemon.info dnsmasq[1377]: query[A] e8037.g.akamaiedge.net from 192.168.150.201
Mon Sep 11 07:44:20 2017 daemon.info dnsmasq[1377]: query[AAAA] e8037.g.akamaiedge.net from 192.168.150.201
Mon Sep 11 07:44:20 2017 daemon.info dnsmasq[1377]: query[A] qa.sockets.stackexchange.com from 192.168.150.201
Mon Sep 11 07:44:29 2017 daemon.info dnsmasq[1377]: query[A] osfsr.lenovomm.com from fe80::dc5f:57fd:640c:6661

しかし、実際の問題はlogreadに、私が使用しない大量のジャンクデータが含まれていることです。したがって、上記のフィルタリングを実行する必要があります。

上記のフィルターされたデータのみをlogreadファイルに記録するようにOPENWRTに指示できる場所はありますか?または上記のコードをルーターの任意の。txtファイルにリダイレクトします(30分ごとに.txtコードをサーバーにプッシュするcronジョブを実行して、ルーターがクラッシュしないことを確認します。 1.3 Mbのスペースが残っています。)

[〜#〜] note [〜#〜]-ipvoxy、ulogd、およびその他のいくつかの機能を試してみましたが、最後に上記の方法でログから直接読み取ります。

3

または、上記のコードをルーターの任意の.txtファイルにリダイレクトします(30分ごとに.txtコードをサーバーにプッシュするcronジョブを実行して、ルーターがクラッシュしないことを確認します。いずれにしても、1.3 MBのスペースが残っています。)

リダイレクトを使用できます。

logread -f | grep ': query' > /path/to/file.txt

その後、cronジョブはファイルをコピーし、必要に応じて空にすることができます。

また、syslogd構成ファイルを変更して、ルーターがそのログをsyslogサーバーにプッシュするようにすることもできます。これにより、サーバー上のsyslogdでフィルタリングして、dnsmasqタグ付きエントリーだけを保存し、フィルターすることができます。

3
cde