CentOS 7 での Nginx ログタイミング分割の実装手順の詳細説明

CentOS 7 での Nginx ログタイミング分割の実装手順の詳細説明

1. 分割スクリプト (splitNginxLog.sh) を作成します。

* この例では、ログ分割が毎日 0:00 に実行されるように設定されているため、folder と rq は両方ともアーカイブに昨日の日付を使用するように設定されています。

#!/bin/bash
フォルダ=`date -d 昨日 +%Y%m`
rq=`date -d 昨日 +%Y%m%d`
# 元のログパス logs_path="/var/log/nginx/sitename.com/"
# ログバックアップパス logs_backup_path="/var/log/nginx/sitename.com/$folder"
# 分割するログ logs_access="access"
logs_error="エラー"
# バックアップパスを作成する [ -d $logs_backup_path ]||mkdir -p $logs_backup_path
# ログをバックアップフォルダに移動する mv ${logs_path}${logs_access}.log ${logs_backup_path}/${logs_access}_${rq}.log
mv ${logs_path}${logs_error}.log ${logs_backup_path}/${logs_error}_${rq}.log
#nginxのpidを終了する
pid_path="/var/run/nginx.pid"
キル -USR1 $(cat $pid_path)

2. ログ分割スクリプトのテスト

.sh ファイルが保存されているディレクトリで次のステートメントを実行して、分割スクリプトが成功したかどうかをテストします。

# sh splitNginxLog.sh

エラー $'\r': コマンドが見つからない が発生した場合、Windows エディターで記述されたスクリプトは Linux のものと若干異なるため、.sh ファイルのエンコードが原因となっている可能性があります。

治療方法:

1. エンコード変換用のdos2unixをインストールする

# yum install dos2unix

2. コードを変換する

# dos2unix splitNginx.sh

3. 自動実行を設定する

# crontab -l //スケジュールされたすべてのタスクを一覧表示
# crontab -e //スケジュールされたタスクを編集する

そこに次の文を書いてください。

00 00 * * * bash /root/splitNginxLog.sh

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Centos に PHP7.4 と Nginx をインストールする方法
  • Centos8 に nginx をインストールするための詳細なチュートリアル (画像とテキスト)
  • CentOS 7.2 は uniapp プロジェクトを展開するための nginx Web サーバーを構築します
  • Centos7 に nginx をインストールした後、conf.d ディレクトリに default.conf ファイルがないために「Welcome to nginx on Fedora!」というエラーが表示される問題を解決します。
  • Centos7.3 Nginx をインストールして展開し、https を設定する方法
  • CentOS7 のシステム サービスに Nginx を追加する方法
  • CentOS7にNginxをインストールして自動起動を設定する方法
  • Centos7 の起動プロセスと Systemd での Nginx の起動構成
  • docker でプライベート サーバーを構築する方法 (CentOS 上の nginx と ssl を使用した docker-registry)

<<:  Vue の this.$store.state.xx.xx に関する簡単な説明

>>:  MySQL テーブル自動増分 ID オーバーフロー障害レビュー ソリューション

推薦する

読み取り専用と無効の微妙な違いの詳細な説明

「読み取り専用」と「無効」はどちらも、ユーザーがフォーム フィールドの内容を変更できないようにします...

Tomcat 7.0 で仮想ディレクトリを設定し、仮想パスを構成する方法

Tomcat7.0は仮想ディレクトリを設定します(1)現在、当社のウェブサイトはデフォルトのディレク...

div+cssとウェブ標準ページの利点

div 要素は、HTML ドキュメント内のブロックレベル コンテンツの構造と背景を提供するために使用...

CSS3 はアニメーション属性を使用してクールな効果を実現します (推奨)

animation-name アニメーション名。複数のアニメーションがバインドされていることを示す...

MySQL アクティブ-アクティブ同期レプリケーションの 4 つのソリューションの詳細な説明

目次MySQLネイティブレプリケーションに基づくマスター-マスター同期ソリューションGaleraレプ...

JavaScript タイマーの詳細

目次1. 簡単な紹介2. 間隔を設定する2.1 説明2.2 パラメータ2.3 戻り値2.4 使用法3...

抽選効果を実現するJavaScript

この記事では、宝くじマシンの効果を実現するためのJavaScriptの具体的なコードを参考までに共有...

Linux で boost.python を使用して C++ 動的ライブラリを呼び出す方法

序文最近、C++ 動的ライブラリをテストするためにロボット フレームワークを使い始めました。ロボット...

DockerでPython環境をパッケージ化するプロセスの詳細な説明

docker パッケージング Python 環境の手順は次のとおりです。 1 pip listの下に...

mysql-joinsの具体的な使用方法

目次結合構文: 1. InnerJOIN: (内部結合) 2. LeftJOIN: (左結合) 3....

JavaScript オブジェクト指向クラス継承ケースの説明

1. オブジェクト指向のクラス継承これまでの章では、JavaScript のオブジェクト モデルがプ...

MySQL OOM (メモリオーバーフロー) の解決策

OOM は「Out Of Memory」の略で、メモリオーバーフローを意味します。メモリ オーバーフ...

HTML テーブル マークアップ チュートリアル (14): テーブル ヘッダー

<br />HTML 言語では、タグを使用してテーブルにタイトルを自動的に追加できます。...