Maison Opération et maintenance Nginx Analyse de la configuration de coupe de journaux Nginx, gestion du stockage des journaux du site Web

Analyse de la configuration de coupe de journaux Nginx, gestion du stockage des journaux du site Web

Jul 04, 2023 am 10:12 AM
nginx 日志切割 网站日志存储

Analyse de la configuration de la découpe des journaux Nginx, gestion du stockage des journaux du site Web

Dans le processus de fonctionnement d'un site Web, les journaux sont très importants. Il peut fournir des enregistrements détaillés de l'état de fonctionnement du site Web, aidant ainsi les développeurs et les administrateurs à analyser les problèmes et à optimiser les performances. Cependant, à mesure que le site Web continue de croître, les fichiers journaux deviendront de plus en plus volumineux, ce qui mettra à rude épreuve l'espace de stockage et les performances du serveur. Afin de résoudre ce problème, nous pouvons utiliser la fonction de coupe de journaux de Nginx pour diviser les fichiers journaux par durée ou par taille, afin d'obtenir une gestion et un stockage efficaces des journaux.

Nginx est un serveur Web hautes performances, et ses fonctions et son comportement peuvent être ajustés de manière flexible via des fichiers de configuration. Ci-dessous, nous utiliserons un exemple simple pour montrer comment configurer Nginx pour implémenter la coupe de journaux.

Tout d'abord, nous devons spécifier le format du journal et le chemin de stockage dans le fichier de configuration Nginx. Dans le module http de Nginx, vous pouvez définir le format de journal en ajoutant le code suivant : http模块中,可以通过添加以下代码来定义日志格式:

http {
    ...
    log_format access '$remote_addr - $remote_user [$time_local] "$request" '
                    '$status $body_bytes_sent "$http_referer" '
                    '"$http_user_agent" "$http_x_forwarded_for"';
    ...
}
Copier après la connexion

在上述代码中,log_format指令定义了一个名为access的日志格式,其中包含了一些常用的日志变量,如客户端IP地址、访问时间、请求URL、返回状态码等。

接下来,我们需要将这个日志格式应用到具体的访问日志中。在Nginx的server块中,可以通过添加以下代码来指定访问日志的存储路径和格式:

server {
    ...
    access_log /var/log/nginx/access.log access;
    ...
}
Copier après la connexion

在上述代码中,access_log指令指定了访问日志的存储路径和格式。其中,/var/log/nginx/access.log为日志文件的存储路径,access为之前定义的日志格式名称。

默认情况下,Nginx会把所有的访问日志写入到同一个文件中。但是,当这个文件变得非常大时,我们可能会希望将它拆分成多个小文件。为了实现这个功能,我们可以使用Nginx提供的logrotate工具。

logrotate是一个常用的日志切割工具,可以根据指定的规则来拆分日志文件。我们可以编写一个名为nginx的配置文件,其中定义了Nginx访问日志的拆分规则。下面是一个示例:

/var/log/nginx/access.log {
    daily
    rotate 7
    missingok
    notifempty
    compress
    postrotate
        /usr/sbin/nginx -s reopen
    endscript
}
Copier après la connexion

在上述代码中,/var/log/nginx/access.log为需要被拆分的日志文件路径。daily指定了按天拆分,rotate 7表示保留7天的日志文件。missingok表示如果日志文件不存在,也不报错。notifempty表示如果日志文件为空,也不报错。compress表示对新生成的日志文件进行压缩。postrotateendscript之间的代码会在日志文件切割完成后执行,这里使用/usr/sbin/nginx -s reopen来通知Nginx重新打开日志文件。

最后,我们需要将这个nginx配置文件放置到/etc/logrotate.d/目录下。logrotaterrreee

Dans le code ci-dessus, la directive log_format définit un format de journal nommé access , qui contient certaines variables de journal couramment utilisées, telles que l'adresse IP du client, l'heure d'accès, l'URL de la demande, le code d'état de retour, etc.

Ensuite, nous devons appliquer ce format de journal au journal d'accès spécifique. Dans le bloc server de Nginx, vous pouvez spécifier le chemin de stockage et le format du journal d'accès en ajoutant le code suivant : 🎜rrreee🎜Dans le code ci-dessus, la directive access_log spécifie le accéder au chemin et au format de stockage des journaux. Parmi eux, /var/log/nginx/access.log est le chemin de stockage du fichier journal, et access est le nom du format de journal précédemment défini. 🎜🎜Par défaut, Nginx écrira tous les journaux d'accès dans le même fichier. Cependant, lorsque ce fichier devient très volumineux, nous souhaiterons peut-être le diviser en plusieurs fichiers plus petits. Afin de réaliser cette fonction, nous pouvons utiliser l'outil logrotate fourni par Nginx. 🎜🎜logrotate est un outil de coupe de journaux couramment utilisé qui peut diviser les fichiers journaux selon des règles spécifiées. Nous pouvons écrire un fichier de configuration nommé nginx, qui définit les règles de fractionnement des journaux d'accès Nginx. Voici un exemple : 🎜rrreee🎜Dans le code ci-dessus, /var/log/nginx/access.log est le chemin du fichier journal qui doit être divisé. daily spécifie le fractionnement par jour et rotate 7 signifie conserver les fichiers journaux pendant 7 jours. missingok signifie que si le fichier journal n'existe pas, aucune erreur ne sera signalée. notifempty signifie que si le fichier journal est vide, aucune erreur ne sera signalée. compress signifie compresser le fichier journal nouvellement généré. Le code entre postrotate et endscript sera exécuté une fois le fichier journal coupé. Ici, utilisez /usr/sbin/nginx -s open pour. informer Nginx rouvre le fichier journal. 🎜🎜Enfin, nous devons placer ce fichier de configuration nginx dans le répertoire /etc/logrotate.d/. logrotate analysera régulièrement ce répertoire, puis divisera les journaux en fonction des fichiers de configuration qu'il contient. 🎜🎜Ce qui précède est un exemple simple d'utilisation de Nginx pour implémenter la coupe de journaux. En configurant correctement le format des journaux et les règles de découpe de Nginx, nous pouvons gérer et stocker efficacement les journaux d'accès au site Web. Cela permet non seulement d'économiser de l'espace de stockage, mais améliore également les performances globales du serveur. J'espère que cet article vous sera utile. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment autoriser l'accès au réseau externe au serveur Tomcat Comment autoriser l'accès au réseau externe au serveur Tomcat Apr 21, 2024 am 07:22 AM

Pour permettre au serveur Tomcat d'accéder au réseau externe, vous devez : modifier le fichier de configuration Tomcat pour autoriser les connexions externes. Ajoutez une règle de pare-feu pour autoriser l'accès au port du serveur Tomcat. Créez un enregistrement DNS pointant le nom de domaine vers l'adresse IP publique du serveur Tomcat. Facultatif : utilisez un proxy inverse pour améliorer la sécurité et les performances. Facultatif : configurez HTTPS pour une sécurité accrue.

Comment exécuter thinkphp Comment exécuter thinkphp Apr 09, 2024 pm 05:39 PM

Étapes pour exécuter ThinkPHP Framework localement : Téléchargez et décompressez ThinkPHP Framework dans un répertoire local. Créez un hôte virtuel (facultatif) pointant vers le répertoire racine ThinkPHP. Configurez les paramètres de connexion à la base de données. Démarrez le serveur Web. Initialisez l'application ThinkPHP. Accédez à l'URL de l'application ThinkPHP et exécutez-la.

Bienvenue sur nginx !Comment le résoudre ? Bienvenue sur nginx !Comment le résoudre ? Apr 17, 2024 am 05:12 AM

Pour résoudre l'erreur "Bienvenue sur nginx!", vous devez vérifier la configuration de l'hôte virtuel, activer l'hôte virtuel, recharger Nginx, si le fichier de configuration de l'hôte virtuel est introuvable, créer une page par défaut et recharger Nginx, puis le message d'erreur. disparaîtra et le site Web sera affiché normalement.

Comment générer une URL à partir d'un fichier HTML Comment générer une URL à partir d'un fichier HTML Apr 21, 2024 pm 12:57 PM

La conversion d'un fichier HTML en URL nécessite un serveur Web, ce qui implique les étapes suivantes : Obtenir un serveur Web. Configurez un serveur Web. Téléchargez le fichier HTML. Créez un nom de domaine. Acheminez la demande.

Comment déployer le projet nodejs sur le serveur Comment déployer le projet nodejs sur le serveur Apr 21, 2024 am 04:40 AM

Étapes de déploiement de serveur pour un projet Node.js : Préparez l'environnement de déploiement : obtenez l'accès au serveur, installez Node.js, configurez un référentiel Git. Créez l'application : utilisez npm run build pour générer du code et des dépendances déployables. Téléchargez le code sur le serveur : via Git ou File Transfer Protocol. Installer les dépendances : connectez-vous en SSH au serveur et installez les dépendances de l'application à l'aide de npm install. Démarrez l'application : utilisez une commande telle que node index.js pour démarrer l'application ou utilisez un gestionnaire de processus tel que pm2. Configurer un proxy inverse (facultatif) : utilisez un proxy inverse tel que Nginx ou Apache pour acheminer le trafic vers votre application

Nodejs est-il accessible de l'extérieur ? Nodejs est-il accessible de l'extérieur ? Apr 21, 2024 am 04:43 AM

Oui, Node.js est accessible de l’extérieur. Vous pouvez utiliser les méthodes suivantes : Utilisez Cloud Functions pour déployer la fonction et la rendre accessible au public. Utilisez le framework Express pour créer des itinéraires et définir des points de terminaison. Utilisez Nginx pour inverser les requêtes de proxy vers les applications Node.js. Utilisez des conteneurs Docker pour exécuter des applications Node.js et les exposer via le mappage de ports.

Comment déployer et maintenir un site Web en utilisant PHP Comment déployer et maintenir un site Web en utilisant PHP May 03, 2024 am 08:54 AM

Pour déployer et maintenir avec succès un site Web PHP, vous devez effectuer les étapes suivantes : Sélectionnez un serveur Web (tel qu'Apache ou Nginx) Installez PHP Créez une base de données et connectez PHP Téléchargez le code sur le serveur Configurez le nom de domaine et la maintenance du site Web de surveillance DNS les étapes comprennent la mise à jour de PHP et des serveurs Web, la sauvegarde du site Web, la surveillance des journaux d'erreurs et la mise à jour du contenu.

Comment utiliser Fail2Ban pour protéger votre serveur contre les attaques par force brute Comment utiliser Fail2Ban pour protéger votre serveur contre les attaques par force brute Apr 27, 2024 am 08:34 AM

Une tâche importante pour les administrateurs Linux est de protéger le serveur contre les attaques ou les accès illégaux. Par défaut, les systèmes Linux sont livrés avec des pare-feu bien configurés, tels que iptables, Uncomplicated Firewall (UFW), ConfigServerSecurityFirewall (CSF), etc., qui peuvent empêcher diverses attaques. Toute machine connectée à Internet est une cible potentielle d'attaques malveillantes. Il existe un outil appelé Fail2Ban qui peut être utilisé pour atténuer les accès illégaux sur le serveur. Qu’est-ce que Fail2Ban ? Fail2Ban[1] est un logiciel de prévention des intrusions qui protège les serveurs des attaques par force brute. Il est écrit en langage de programmation Python

See all articles