La rotation des journaux, qui désigne la rotation de plusieurs fichiers journaux pour qu'ils soient utilisés ou non : simplifie l'administration des systèmes qui générer un grand nombre de fichiers journaux. La rotation des journaux active la rotation, la compression la suppression et l’envoi des fichiers journaux.
Dans Edge pour Private Cloud, certains des principaux fichiers journaux sur chaque apigee
sont configurés avec un mécanisme de rotation par défaut. Par exemple, sur la page
Processeur de messages : les fichiers suivants sont configurés avec une rotation par défaut
à l'aide de Logback:
/opt/apigee/var/log/edge-message-processor/logs/system.log
/opt/apigee/var/log/edge-message-processor/logs/events.log
/opt/apigee/var/log/edge-message-processor/logs/startupruntimeerrors.log
/opt/apigee/var/log/edge-message-processor/logs/configurations.log
/opt/apigee/var/log/edge-message-processor/logs/transactions.log
Des fichiers similaires existent pour d'autres composants edge-*
(dont les noms
commencer par edge-
, par exemple edge-management-server
,
edge-router
, edge-postgres-server
et edge-qpid-server
.
edge-*
génère également un fichier journal supplémentaire qui est une redirection
sortie de la console
du composant respectif. Dans le cas du composant
de traitement des messages,
ce fichier s'appelle /opt/apigee/var/log/edge-message-processor/edge-message-processor.log
.
Les autres composants edge-*
génèrent un fichier similaire. Ces fichiers ne sont pas effectuées par
la bibliothèque Logback, mais avec logrotate
et crontab
.
Avant de commencer
- Si vous ne connaissez pas les configurations
logrotate
, consultez le logrotate manuel. - Si vous ne connaissez pas les configurations
crontab
, consultez le manuel crontab.
Activer la rotation des journaux
À partir d'Edge pour Private Cloud version 4.52, lorsque vous installez un edge-*
une entrée crontab
pour
la rotation de ce journal est automatiquement créée dans le crontab
de l'utilisateur apigee
. Ce job Cron s'exécute tous les
heure par défaut et utilise l'utilitaire logrotate
pour alterner les journaux. Si plusieurs edge-*
sont installés sur le même nœud (par exemple, dans une installation tout-en-un ou
le routeur et le processeur de messages sont installés sur un nœud), chaque composant aura sa propre entrée cron pour
en alternant ses journaux respectifs.
Remarques :
- Si, lors de l'installation d'un composant
edge-*
, vous ne voulez pas configure automatiquementlogrotate
, définissez l'option "ENABLE_LOGROTATE=n" dans le fichier de configuration silencieuse que vous utilisez. pour l'installation. Si la tâche Cron n'est pas définie lors de l'installation, vous pouvez la configurer plus tard en suivant les étapes pour activer le Cronlogrotate
d'un composant. - Pour le composant
edge-router
, une tâche Cronlogrotate
supplémentaire est également configurés par défaut. Ce cron alterne les journaux d'accès et d'erreurs générés par Nginx.
Les exemples suivants illustrent différentes configurations et opérations d'administration que vous pouvez effectuer.
Afficher les entrées Cron sur un nœud
sudo crontab -u apigee -l
Afficher l'entrée Cron logrotate
d'un composant
$APIGEE_ROOT/apigee-service/bin/apigee-service <component-name> logrotate -s
Par exemple, pour afficher le Cron logrotate
du processeur de messages Edge, exécutez la commande suivante:
$APIGEE_ROOT/apigee-service/bin/apigee-service edge-message-processor logrotate -s
Afficher un composant Configuration de logrotate
La configuration logrotate
d'un composant se trouve dans le fichier
$APIGEE_ROOT/<component>/logrotate/logrotate.conf
Par exemple, dans le cas d'un processeur de messages en périphérie, la configuration logrotate
du nœud peut être
trouvé dans $APIGEE_ROOT/edge-message-processor/logrotate/logrotate.conf
.
Activer le cron logrotate
d'un composant
$APIGEE_ROOT/apigee-service/bin/apigee-service <component-name> logrotate -e
Par exemple, pour activer le Cron logrotate
du processeur de messages Edge, exécutez la commande suivante:
$APIGEE_ROOT/apigee-service/bin/apigee-service edge-message-processor logrotate -e
Désactiver le cron logrotate
d'un composant
$APIGEE_ROOT/apigee-service/bin/apigee-service <component-name> logrotate -d
Par exemple, pour désactiver le Cron logrotate
du processeur de message Edge, exécutez la commande suivante:
$APIGEE_ROOT/apigee-service/bin/apigee-service edge-message-processor logrotate -d
Modifier la planification Cron d'une commande logrotate
spécifique
Sur le nœud où vous souhaitez modifier la planification Cron logrotate
, ouvrez le
dans le fichier de remplacement de configuration du composant. Fichiers de remplacement de configuration du composant edge-*
sont indiqués dans le tableau ci-dessous:
Composant | Fichier de remplacement de configuration |
---|---|
edge-message-processor |
$APIGEE_ROOT/customer/application/message-processor.properties |
edge-management-server |
$APIGEE_ROOT/customer/application/management-server.properties |
edge-router |
$APIGEE_ROOT/customer/application/router.properties |
edge-postgres-server |
$APIGEE_ROOT/customer/application/postgres-server.properties |
edge-qpid-server |
$APIGEE_ROOT/customer/application/qpid-serverproperties |
Ouvrez le fichier de remplacement approprié et définissez le remplacement de configuration suivant. L'exemple ci-dessous remplace la tâche Cron pour qu'elle s'exécute à la 0e minute de chaque heure.
conf_logrotate_cron_duration=0 * * * *
Pour définir le remplacement de configuration:
- Assurez-vous que le fichier est lisible par l'utilisateur
apigee
. - Appliquez la planification Cron plus récente au composant:
$APIGEE_ROOT/apigee-service/bin/apigee-service <component-name> logrotate -e
Par exemple, pour appliquer une planification Cron plus récente à l'élément logrotate
du processeur de message Edge, saisissez:
$APIGEE_ROOT/apigee-service/bin/apigee-service edge-message-processor logrotate -e
Pour vérifier que les modifications ont bien été appliquées, vérifiez les entrées Cron ou affichez les
Entrée Cron logrotate
.
Configurations logrotate
supplémentaires
Comme pour la procédure de modification de la planification cron de la section ci-dessus, vous pouvez et modifier des configurations supplémentaires. Le tableau ci-dessous décrit ces configurations:
Configuration | Description |
---|---|
conf_logrotate_bin_location |
Emplacement du binaire logrotate. Valeur par défaut : /usr/sbin/logrotate |
conf_logrotate_status_file |
Fichier d'état capturant l'état d'exécution de logrotate : l'émission dispose d'autorisations de lecture/écriture
pour apigee utilisateur. Par défaut : $APIGEE_ROOT/var/run/<component>/logrotate.status |
conf_logrotate_logs |
les journaux à alterner ; Il peut inclure des caractères génériques. Par défaut:
$APIGEE_ROOT/var/log/<component>/<component>.log
|
conf_logrotate_rotate |
Nombre de rotations. Valeur par défaut : "5" |
conf_logrotate_compress |
Indique si les fichiers ayant fait l'objet d'une rotation doivent être compressés. Valeur par défaut : "compress" |
conf_logrotate_compress_type |
Type de compression. La valeur par défaut est "delaycompress". Reporte la compression de dernier fichier ayant fait l'objet d'une rotation au prochain cycle logrotate. |
conf_logrotate_size |
Taille maximale des journaux pour la rotation. Valeur par défaut : "10 M" |
Utilisez votre propre mécanisme de rotation des journaux et cron
Si vos exigences de rotation du fichier <component>.log ne sont pas remplies par les configurations
fourni par Apigee, vous utilisez votre propre mécanisme de rotation des journaux à l'aide d'outils comme logrotate
ou autres. Par exemple, les configurations fournies par Apigee vous permettent d'alterner les journaux par taille,
vous souhaitez alterner les journaux en fonction de la date/l'heure ou d'autres facteurs. Dans ce cas, vous devez
désactiver la tâche Cron logrotate
fournie par Apigee et configurer vos propres tâches Cron selon vos besoins.
Si vous devez vous référer à l'entrée Cron de rotation des journaux d'Apigee, vous pouvez la trouver dans le fichier
$APIGEE_ROOT/
Par exemple, dans le cas
edge-message-processor
, ce fichier s'appelle
$APIGEE_ROOT/edge-message-processor/logrotate/logrotate.cron
Ce fichier
inclut à la fois l'entrée Cron et la commande exécutée par Apigee pour la rotation des journaux. Si vous
si vous souhaitez utiliser logrotate
, mais pas les configurations d'Apigee, vous pouvez créer votre
acheter logrotate
fichier de configuration et utilisez une commande logrotate
similaire pour effectuer une rotation des journaux.