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 オーバーフロー障害レビュー ソリューション

推薦する

MYSQL スロークエリとログの例の説明

1. はじめにスロークエリログを有効にすると、MySQL は指定された時間を超えるクエリステートメン...

CocosCreatorの共通知識ポイントを整理する

目次1. シーンの読み込み2. ノードを見つける1. ノード検索2. その他のノード操作3. 再生ア...

VMware15 の Deepin インストール詳細チュートリアル (画像とテキスト)

序文Deepin のユーザー インターフェイスは、使用時に非常に見栄えがします。インターフェイス効果...

three.js を使用してクールなアシッドスタイルの 3D ページ効果を実現します

この記事では、主にReact + three.jsテクノロジースタックを使用して3Dモデルの読み込み...

Linux\Nginx 環境での仮想ドメイン名の設定とテスト検証

Nginx 仮想ドメイン名設定を使用すると、ドメイン名を購入せずに特定のドメイン名を介してローカル ...

Nginx サービス クイック スタート チュートリアル

目次1. Nginx の紹介1. Nginx とは何ですか? 2. Nginx を使用する理由3. ...

はじめに: HTML の基本的なタグと属性の簡単な紹介

HTML はタグと属性で構成されており、これらを組み合わせてブラウザにページの表示方法を指示します。...

Vueフレームワークで習得しなければならない重要な知識を学びます

1. Vueとは何かVue は、ユーザー ページを構築するためのプログレッシブ フレームワークです。...

MySQL で高性能なインデックスを作成するための完全な手順

目次1. インデックスの基本1. インデックスの種類1.1 Bツリーインデックス1.2 ハッシュイン...

Nginx バージョンのスムーズなアップグレードソリューションの詳細説明

目次背景: Nginx スムーズ アップグレード ソリューションフォールバック手順要約する背景:負荷...

Remレイアウトを使用して適応性を実現する

以前、モバイル適応に関する記事を書きました。非常に長く、内容が多すぎて読みづらいものでした。そこで、...

XHTML CSS ウェブサイトデザインの利点と問題点

XHTML は現在国際的に推奨されている標準的な Web サイト設計言語です。Webjx.com も...

Dockerはホスト間のネットワーク通信を実現するためにMacvlanを導入する

基本的な概念: Macvlanの動作原理: Macvlan は、Linux カーネルでサポートされて...

Docker を使用した nextcloud パーソナル ネットワーク ディスクの構築に関するチュートリアル

目次1. はじめに2. 導入環境ツール4. 展開プロセス要約する1. はじめにNextcloud は...

テーブル設定の背景画像が100%表示されない解決策

開発中に以下の状況が発見されました。 (1) ファイルが.jspファイル拡張子で保存されている場合、...