この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 26347|答える: 2

[ウェブ] Nginxの丸太分割と削除

[リンクをコピー]
掲載地 2020/06/13 22:52:07 | | | |
要件:nginxログを現在の日付で毎日分割し、1日に1ファイルずつ、30日以上前のファイル(つまり1か月分のログのみを保持)を削除すること。

nginxのログ分割シェルスクリプトは次のように書いてください:

さあ、logs_pathそしてpid_path経路はあなたの実際の状況に応じて追加すべきです。

pidファイルへのパスはnginx.confファイルで確認できますし、以下のコマンドで見つけられます:

このコマンドは簡単に紹介されます

USR1はまた、アプリケーションに設定ファイルの過負荷を通知するためにもよく使われます。 例えば、Apache HTTPサーバーにUSR1信号を送信すると、次のステップが発生します:新しい接続の受け入れを停止し、現在の接続が停止するまで待ち、設定ファイルを読み込み、ログファイルを再起動し、サーバーを再起動することで、比較的スムーズなシャットダウンなしの変更を実現します。

スクリプトファイルを自分のサーバー(好きなディレクトリ)にアップロードしてください。

スクリプト実行権限を付与する



テストスクリプト


エラーが報告された場合、以下の修正を参照できます:

/bin/bash^M: bad interpreter: No such file or directory
https://www.itsvse.com/thread-9258-1-1.html



最後にcrontabサービスをインストールし、スケジュールされたタスクを追加しましょう!
毎日午前2時にログ分割スクリプトルールを実行します:

CentOS 7はcrontabを使って、定期的にタスクを実行します
https://www.itsvse.com/thread-9280-1-1.html

添付はshのスクリプトです:

観光客の皆さん、この投稿の隠された内容を見たい方は、どうぞ答える





先の:/bin/bash^M: bad interpreter: No such file or directory
次に:NGINX高可用性負荷分散の実用的な構成
 地主| 掲載地 2021/06/12 21:50:10 |
logloopはlogrotateやcronタスクの設定を使わず、nginx設定ファイル内で直接設定できます。 時間を得るには$time_iso8601の埋め込み変数を使う必要があります。 $time_iso8601のフォーマットは以下の通りです:2015-08-07T18:12:02+02:00。 その後、正規表現を使って必要な時間のデータを取得します。


 地主| 掲載地 2025/10/12 19:27:12 |
Linuxサーバーはlogrotateに基づいてnginxログをカットします
https://www.itsvse.com/thread-11088-1-1.html
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com