3 votes

Journalisation en cas de dépassement de la limite

Existe-t-il un fichier journal qui enregistre les informations lorsque les valeurs définies dans la rubrique /etc/security/limits.conf sont dépassées ?

Si les valeurs sont trop serrées dans le fichier ci-dessus, les clients qui utilisent le site web hébergé sur le serveur voient apparaître des erreurs telles que [FATAL] failed to allocate memory . Mais je ne me laisserai pas intimider. Alors, y a-t-il un journal ?

Si ce n'est pas le cas, existe-t-il un moyen de faire en sorte que le système enregistre les dépassements de valeurs ?

3voto

user196092 Points 9

Limits.conf est un instrument trop brutal pour ce que vous essayez de faire.

cgroups fixe des limites et assure la comptabilité pour vous, mais la documentation est un peu obtuse ! https://www.kernel.org/doc/Documentation/cgroups/memory.txt

2voto

cyphun Points 53

Existe-t-il un fichier journal qui enregistre des informations lorsque les valeurs définies dans le fichier /etc/security/limits.conf sont dépassées ?

Non.

Toutes ces valeurs sont enfin prises en compte dans les limites des ressources du processus ( man setrlimit ) et lorsqu'ils se rencontrent, il n'existe pas de mécanisme universel permettant d'émettre un avertissement à consigner.

-1voto

Wutiphong Points 99

Si votre problème concerne l'échec de l'allocation de mémoire, vous pouvez également utiliser ce script pour surveiller le pourcentage de mémoire libre restant.

#!/bin/bash
# you can adjust 0.20 meaning 20% to percentage of memory free you want 
output=$(free | grep "Swap" | awk '{if (($4/$2) < 0.20) print "memory low"}')
if [[ "$output" != "" ]]; then
    echo "..." | mail -s "Memory low on <host>" <monitoring email>
fi

enregistrer dans le fichier script (ex. memmon.sh) et l'ajouter à la crontab il enverra un email et écrira un fichier journal lorsqu'il détectera que la mémoire libre est faible comme conditionné)

# Ex. monitor every 3 min.
*/3 * * * * /home/user/memmon.sh >> /home/user/memmon.log

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X