Probleme Apache+cronolog

Bonjour,

Voici la configuration :
Apache v2.2.3 (noyau BSD)
Cronolog v1.6.2

J’ai un serveur Apache (comme vous pouvez vous en douter) qui tourne convenablement sans problemes particuliers excepté depuis aujourd’hui.

En fait, le serveur ne veut plus se lancer dès que le nombre de vhosts atteint un certain nombre que je n’ai pu determiner.

Lorsque le nombre de vhost est de 233 le serveur se lance correctement. J’ai alors 233 process cronolog de lancés.

Si le nombre de vhosts est de 319 alors apache refuse de se lancer avec un message d’erreur suivant :

unable to start piped log program '/usr/local/cronolog/sbin/cronolog --symlink='/usr/local/apache2/logs/virtual-logs/toto.com/toto.com-access.log' /usr/local/apache2/logs/virtual-logs/toto.com/%Y/%B/%W-%m-%Y-toto.com-access.log': Resource temporarily unavailable
Unable to open logs

J’ai vérifié, les fichiers de logs existent bien.

Si je supprime le vhost alors le même message apparait pour un autre vhost.

Je pense que le problème vient du cronolog.

Sinon un problème de mémoire au niveau du serveur mais il n’en manque pas à la vue des informations rapportées par l’OS.

Y 'aurait il une limitation mémoire au nivea d’Apache ou du nombre de vhost que l’on peut lancer ?

Aurriez vous une idée, solution pour résoudre ce probleme ?

Merci à vous

Aloaw
Deja faudrait voir sur quel os, quel mods avec apache,
comment t’as installé crono ?
Sinon fyi faudrait effacé le sym pour tester (ce qui devrait marcher :whistle:)

Ya un petit tour de passe passe (cherchez pas le lapin :ane:) du genre ne pas utiliser de sym’ ou essayer avec un hard ?

T’as quoi comme dans cronoutils.c ?
Si t’as un truc de ce type
if (stat(linkname, &stat_buf) == 0)
{
unlink(linkname);
}

Essaye de changer par un lstat
if (lstat(linkname, &stat_buf) == 0)
{
unlink(linkname);
}

Voila du paté lancé parcequ’il n’y a aucunes info sur ton systeme :wink:

Alors mon OS est OSX 10.4.9. C’est un noyaux Unix BSD.

Comment est installé le cronolog ?
./configure
make
make install

Le symlink marche bien pour 233 vhost, je vois pas pourqoui il mettrait la merde pour 319 … si tu peux t’'expliquer à ce sujet.

Mods apache :
tous les mods sont actifs excepté 2 je crois mais je ne les ai pas en tête.

Voilà

un peu vieillot ton cronolog… t’etonnes pas d’avoir ce genre de bugs avec le temps… les autres applis et les libs ne s’arretent pas d’evoluer pour autant.
Et d’apres ce que j’ai vu, il ne semble pas avoir ete porte explicitement sous macosx donc des bugs de ce genre sont tout a fait probables.

Tu t’en sers pour quoi exactement ?
d’une maniere generale, je ne trouve pas que lancer une appli en meme temps qu’une instance apache soit la maniere la plus efficace et la moins consommatrice de ressources pour une bete rotation de logs.
Surtout sur un serveur qui gere plus de 300 VHosts…

Bref, peut etre serait il mieux de lacher cronolog (qui ne semble plus maintenu depuis plus de 5 ans !) pour un logrotate plus classique ou un bon vieux script maison lance par cron si tu as des besoins particuliers.


[quote="jaddeom"]

Mods apache :
tous les mods sont actifs excepté 2 je crois mais je ne les ai pas en tête.
[/quote]

pour info : des mods apache, il y en a des centaines (en comptant les non officiels) alors je doute que tu les as tous installes et actives.
Peut etre sont ce les modules fournis de base avec ton package apache ?
Quoiqu’il en soit, je doute que ca influe d’une quelconque maniere sur ton probleme mais essaye d’etre precis sur les reponses que tu apportes car ca peut avoir son importance. Un petit copier coller de la partie interessante du fichier de conf renseigne parfaitement bien tout le monde…
Edité le 09/08/2007 à 00:08