そのファイルを無期限に活用するスクリプトの実行中に、そのファイルに対してどのように「tail -f」することができますか?

そのファイルを無期限に活用するスクリプトの実行中に、そのファイルに対してどのように「tail -f」することができますか?

ほぼほぼすべてが得られましたが、これを見るのに時間がかかりすぎて欲しいものを達成する方法を失うのではないかと心配です。

私がやろうとしていること:

私のサーバーからアクセスログを取得し、出力を解析してフィードに提供します。matomoログ輸入業者したがって、「ライブ」ログを取得しています。本質的に、web server -> log -> parse -> matomo log importer

私がしたこと:

tailを使用してaccess.logの出力を解析できます。ジャックこのように:

tail -f /var/log/access.log | jq --compact-output '{ip: (.request.remote_addr | .[:-6]), host: .request.host, path: .request.uri, status: "\(.status)", referrer: "", user_agent: .request.headers."User-Agent"[], length: .size, generation_time_milli: .duration, date: (.ts | strftime("%Y-%m-%dT%H:%M:%S%z"))}'

これは私にJSONmatomoログインポーターの形式を提供します明らか。その後、ログを読み取る必要があるスクリプトがあります。

#!/bin/sh

echo "${@}" | python3 ./import_logs3.py \
 --url=https://location --token-auth={TOKEN} \
 --enable-http-errors --enable-http-redirects --enable-static --enable-bots \
 --idsite=1 --recorders=4 --log-format-name=nginx_json {FILE}

スクリプトがファイルを処理し、解析後に完了する必要があるため、ここでブロックされます。ログを「ライブ」にインポートできるように、スクリプトを無期限に実行したいと思います。この例では、次のようなものを使用します。システムログこのスクリプトは、ログファイルが更新されるたびに実行されます。

似たようなことをするにはどうすればいいですか?使用teeteeファイルにアクセスする場合、ファイルが更新されるたびにそのファイルを指すスクリプトをどのように実行しますか?

助けてくれてありがとう!

ベストアンサー1

おすすめ記事