Re: [SPIP Zone] Les erreurs 404 et consorts

2016-03-01 Par sujet nicod_

Le 01/03/2016 13:35, Gildas Cotomale a écrit :

Le 1 mars 2016 à 12:12, nicod_ a écrit :

Le 01/03/2016 10:13, Cédric Morin a écrit :


Erreur grave que de faire un INSERT en base sur chaque 404. La meilleure
façon de mettre ton serveur par terre en moins de deux.


Faux, ça dépend de l'architecture : dans certains cas, une écriture BDD est
plus performante qu'une écriture disque directe.


La base de donnée est une abstraction (un client qui envoi une
requête, SQL dans notre cas, au serveur qui traite et lui renvoie la
réponse) pour gérer de grandes quantités de données (les logs aussi
sont de gros volumes) en accès concurrentiels (normalement il n'y a
pas des dizaines de processus qui consultent le même fichier de
journalisation) et constituant un agrégat dont il faut garantir une
certaine cohérence (i.e. ACIDité) Mais au final, la base de données va
manipuler des fichiers... (sauf si on fait tenir en mémoire par
exemple)


Je pensais aux infrastructures distribuées, avec des serveurs http qui 
génèrent déjà beaucoup d'IO locales, et des serveurs Mysql beaucoup 
moins chargés.
C'est pas exotique, je connais au moins un (très bon) hébergeur grand 
public, qui utilise cette architecture en mutualisé (un serveur par 
service).
Il était même venu en discuter sur les listes pour apporter ce point de 
vue, et suggérait par exemple de donner la possibilité de gérer tous les 
logs de spip directement dans mysql pour optimiser les perfs.


--
nicod_

spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Les erreurs 404 et consorts

2016-03-01 Par sujet Gildas Cotomale
Le 1 mars 2016 à 12:06, Ybbet Spip a écrit :
>
> Le 1 mars 2016 à 11:54, RastaPopoulos a écrit :
>>
>> Le 01/03/2016 11:31, Ybbet Spip a écrit :
>>>
>>> Mais en fait, j'ai des demandes régulières de *clients* me demandant les
>>> liens 404 pour un aspect SEO. Et c'est en cela que j'ai besoin de lister
>>> dans le BO d'une quelconque façon ces 404.
>>
C'est la première fois que j'entends cela (des clients qui demandent
des logs 400...) Du coup, ce genre de clients peut lire des logs bruts
non ? (parce-que plus loin tu demandes des  "referers" )

Pour le côté SEO, il y a des outils pour parcourir son site et tester
les URL présents.
SPIP a même des plugins allant dans ce sens
http://contrib.spip.net/cilien-Liste-des-liens?lang=fr
http://plugins.spip.net/testurl.html?lang=fr
http://plugins.spip.net/linkcheck?lang=fr
http://plugins.spip.net/lienscontenus.html?lang=fr

>>
>> Mais même. La gestion de garder en mémoire les hits 404 est déjà fait par
>> tout serveur HTTP, Apache ou autre, et cela de manière performante, légère,
>> sans bloquer le serveur. Donc ça parait quand même un peu aberrant de le
>> refaire en PHP en supplément…
>>
>> Vu que ce n'est pas un truc qu'on a besoin de savoir en temps réel (le but
>> est à priori de corriger les 404 au fur et à mesure, pas besoin de savoir ça
>> à la minute près), ça serait peut-être plus performant de récupérer
>> régulièrement les logs Apache et de les importer dans SPIP pour les afficher
>> dans une interface pour les admins du site. Mais pas de les enregistrer en
>> double en PHP au moment où elles arrivent. Et il doit bien y avoir un moyen
>> de faire ça automatiquement, en accédant au log d'une manière ou d'une
>> autre.
>
>
> Oui, il existe des parler pour ça : https://github.com/kassner/log-parser
> Après… Il faut que le serveur permette l'accès aux logs.
>
Ça il faut le demander à l'hébergeur : un certain nombre peuvent
fournir ces logs de façon hebdomadaire ou mensuelle ; d'autre les
affichent via une interface graphique à la Webalizer (sur un serveur
dédié on peut installer une alternative pour mieux gérer les erreurs)
https://en.wikipedia.org/wiki/Webalizer#External_links

> Sinon, tmp/log/spip.log stocke les erreurs 404. Il n'y a pas forcément le
> HTTP_REFERER ou le HTTP_USER_AGENT, mais bon, ça c'est autre chose.
>

spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Les erreurs 404 et consorts

2016-03-01 Par sujet Gildas Cotomale
Le 1 mars 2016 à 12:12, nicod_ a écrit :
> Le 01/03/2016 10:13, Cédric Morin a écrit :
>>
>> Erreur grave que de faire un INSERT en base sur chaque 404. La meilleure
>> façon de mettre ton serveur par terre en moins de deux.
>
>
> Faux, ça dépend de l'architecture : dans certains cas, une écriture BDD est
> plus performante qu'une écriture disque directe.
>

La base de donnée est une abstraction (un client qui envoi une
requête, SQL dans notre cas, au serveur qui traite et lui renvoie la
réponse) pour gérer de grandes quantités de données (les logs aussi
sont de gros volumes) en accès concurrentiels (normalement il n'y a
pas des dizaines de processus qui consultent le même fichier de
journalisation) et constituant un agrégat dont il faut garantir une
certaine cohérence (i.e. ACIDité) Mais au final, la base de données va
manipuler des fichiers... (sauf si on fait tenir en mémoire par
exemple)
Il y a bien des système de journalisation qui sont insérées en base de
données mais cela ne change pas le problème ici : il s'agit de passer
par un langage interprété (PHP) par un autre processus pour soit
ouvrir un fichier et y écrire, soit envoyer une requête (en rajoutant
donc une couche supplémentaire et dépendre de la liaison radio) qui va
atterrir dans un fichier binaire. Tout ceci est fort coûteux pour
réinventer la roue sans pouvoir jamais égaler en performance ce qui
est fait nativement en amont.

spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Les erreurs 404 et consorts

2016-03-01 Par sujet nicod_

Le 01/03/2016 10:13, Cédric Morin a écrit :

Erreur grave que de faire un INSERT en base sur chaque 404. La meilleure
façon de mettre ton serveur par terre en moins de deux.


Faux, ça dépend de l'architecture : dans certains cas, une écriture BDD 
est plus performante qu'une écriture disque directe.


--
nicod_


spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Les erreurs 404 et consorts

2016-03-01 Par sujet Ybbet Spip
Le 1 mars 2016 à 11:54, RastaPopoulos  a écrit :

> Le 01/03/2016 11:31, Ybbet Spip a écrit :
>
>> Le but n'est pas un débug en mode dév. Si ce n'était que ça, oui je
>> demanderai les logs.
>> Mais en fait, j'ai des demandes régulières de *clients* me demandant les
>> liens 404 pour un aspect SEO. Et c'est en cela que j'ai besoin de lister
>> dans le BO d'une quelconque façon ces 404.
>>
>
> Mais même. La gestion de garder en mémoire les hits 404 est déjà fait par
> tout serveur HTTP, Apache ou autre, et cela de manière performante, légère,
> sans bloquer le serveur. Donc ça parait quand même un peu aberrant de le
> refaire en PHP en supplément…
>
> Vu que ce n'est pas un truc qu'on a besoin de savoir en temps réel (le but
> est à priori de corriger les 404 au fur et à mesure, pas besoin de savoir
> ça à la minute près), ça serait peut-être plus performant de récupérer
> régulièrement les logs Apache et de les importer dans SPIP pour les
> afficher dans une interface pour les admins du site. Mais pas de les
> enregistrer en double en PHP au moment où elles arrivent. Et il doit bien y
> avoir un moyen de faire ça automatiquement, en accédant au log d'une
> manière ou d'une autre.


Oui, il existe des parler pour ça : https://github.com/kassner/log-parser
Après… Il faut que le serveur permette l'accès aux logs.

Sinon, tmp/log/spip.log stocke les erreurs 404. Il n'y a pas forcément le
HTTP_REFERER ou le HTTP_USER_AGENT, mais bon, ça c'est autre chose.


>
> --
> RastaPopoulos
>
>
> 
> spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone
>

spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Les erreurs 404 et consorts

2016-03-01 Par sujet RastaPopoulos

Le 01/03/2016 11:31, Ybbet Spip a écrit :

Le but n'est pas un débug en mode dév. Si ce n'était que ça, oui je
demanderai les logs.
Mais en fait, j'ai des demandes régulières de *clients* me demandant les
liens 404 pour un aspect SEO. Et c'est en cela que j'ai besoin de lister
dans le BO d'une quelconque façon ces 404.


Mais même. La gestion de garder en mémoire les hits 404 est déjà fait 
par tout serveur HTTP, Apache ou autre, et cela de manière performante, 
légère, sans bloquer le serveur. Donc ça parait quand même un peu 
aberrant de le refaire en PHP en supplément…


Vu que ce n'est pas un truc qu'on a besoin de savoir en temps réel (le 
but est à priori de corriger les 404 au fur et à mesure, pas besoin de 
savoir ça à la minute près), ça serait peut-être plus performant de 
récupérer régulièrement les logs Apache et de les importer dans SPIP 
pour les afficher dans une interface pour les admins du site. Mais pas 
de les enregistrer en double en PHP au moment où elles arrivent. Et il 
doit bien y avoir un moyen de faire ça automatiquement, en accédant au 
log d'une manière ou d'une autre.


--
RastaPopoulos


spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Les erreurs 404 et consorts

2016-03-01 Par sujet Ybbet Spip
Le 1 mars 2016 à 10:13, Cédric Morin  a écrit :

> Ybbet Spip a écrit :
>
>>
>>
>> Le 1 mars 2016 à 08:57, RealET > > a écrit :
>>
>> Ybbet Spip a écrit le 01/03/2016 08:47 :
>>
>> Tu stockes dans un fichier log "404" les infos de la page en
>> 404. Mais
>> est-ce que tu les ré-affiches dans l'espace privé ?
>>
>> Non, je ré-affiche rien.
>>
>>
>> J'ai pensé au départ créer une fonction qui va faire ce que tu
>> fais toi
>> directement dans la page. Il faut que je teste cette solution.
>> Le soucis
>> du fichier log, c'est qu'on peut l'effacer… :-)
>>
>> Si tu veux quelque chose de plus pérenne, il faut un autre mécanisme
>> que les logs.
>> Mais si tu fais ça en base, il vaudrait mieux que ça marche comme
>> les stats de SPIP :
>> 1) fichier temporaire
>> 2) Cron qui écrit en base
>> Pour ne pas avoir besoin d'accéder à la base en écriture à chaque
>> hit en 404 (un denial of service serait facilité).
>>
>>
>> Oui, il faudrait stocker dans un fichier dans tmp/ (éviter tmp/log/)
>> pour insertion dans la bdd par cron.
>> Mais là, quid du nombre d'écriture sur le disque serveur ? Je préfèrerai
>> presque faire l'insertion en base à chaque hit pour ne pas écrire comme
>> un malade sur le disque serveur…
>>
>
> Erreur grave que de faire un INSERT en base sur chaque 404. La meilleure
> façon de mettre ton serveur par terre en moins de deux.
> Ecrire sur le disque est beaucoup moins lourd car ça ne va pas bloquer ta
> base ni la polluer.
>

Oui, c'est sûr, on est d'accord. De ce que je vois sur d'autres CMS (et des
plugins dédiés), ils s'amusent à insérer en BDD directement. Ou dans le cas
contraire, je n'ai pas trouvé la fonction d'écriture dans un fichier sur le
serveur.


>
> Mais trêve de plaisanterie : si vous en êtes à réimplémenter toutes les
> fonctions OS bas niveau de votre serveur dans SPIP, c'est qu'il y a un
> grave problème autre part (dans la gestion de votre serveur), et toutes ces
> stratégies ne conduiront qu'à alourdir le fonctionnement du site, du
> serveur, à tout fragiliser, et à renforcer encore les contraintes dans
> l'adminsys du serveur.
> Bref, le serpent qui se mord la queue.
>
> C'est pas plus simple de demander à ton hebergeur une extraction
> quotidienne des logs apache par exemple ?…


Le but n'est pas un débug en mode dév. Si ce n'était que ça, oui je
demanderai les logs.
Mais en fait, j'ai des demandes régulières de *clients* me demandant les
liens 404 pour un aspect SEO. Et c'est en cela que j'ai besoin de lister
dans le BO d'une quelconque façon ces 404.

Ybbet.


>
>
> --
> Cédric
>

spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Les erreurs 404 et consorts

2016-03-01 Par sujet Cédric Morin

Ybbet Spip a écrit :



Le 1 mars 2016 à 08:57, RealET > a écrit :

Ybbet Spip a écrit le 01/03/2016 08:47 :

Tu stockes dans un fichier log "404" les infos de la page en
404. Mais
est-ce que tu les ré-affiches dans l'espace privé ?

Non, je ré-affiche rien.


J'ai pensé au départ créer une fonction qui va faire ce que tu
fais toi
directement dans la page. Il faut que je teste cette solution.
Le soucis
du fichier log, c'est qu'on peut l'effacer… :-)

Si tu veux quelque chose de plus pérenne, il faut un autre mécanisme
que les logs.
Mais si tu fais ça en base, il vaudrait mieux que ça marche comme
les stats de SPIP :
1) fichier temporaire
2) Cron qui écrit en base
Pour ne pas avoir besoin d'accéder à la base en écriture à chaque
hit en 404 (un denial of service serait facilité).


Oui, il faudrait stocker dans un fichier dans tmp/ (éviter tmp/log/)
pour insertion dans la bdd par cron.
Mais là, quid du nombre d'écriture sur le disque serveur ? Je préfèrerai
presque faire l'insertion en base à chaque hit pour ne pas écrire comme
un malade sur le disque serveur…


Erreur grave que de faire un INSERT en base sur chaque 404. La meilleure 
façon de mettre ton serveur par terre en moins de deux.
Ecrire sur le disque est beaucoup moins lourd car ça ne va pas bloquer 
ta base ni la polluer.


Mais trêve de plaisanterie : si vous en êtes à réimplémenter toutes les 
fonctions OS bas niveau de votre serveur dans SPIP, c'est qu'il y a un 
grave problème autre part (dans la gestion de votre serveur), et toutes 
ces stratégies ne conduiront qu'à alourdir le fonctionnement du site, du 
serveur, à tout fragiliser, et à renforcer encore les contraintes dans 
l'adminsys du serveur.

Bref, le serpent qui se mord la queue.

C'est pas plus simple de demander à ton hebergeur une extraction 
quotidienne des logs apache par exemple ?…



--
Cédric

spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Les erreurs 404 et consorts

2016-03-01 Par sujet Ybbet Spip
Le 1 mars 2016 à 08:57, RealET  a écrit :

> Ybbet Spip a écrit le 01/03/2016 08:47 :
>
> Tu stockes dans un fichier log "404" les infos de la page en 404. Mais
>> est-ce que tu les ré-affiches dans l'espace privé ?
>>
> Non, je ré-affiche rien.
>
>
>> J'ai pensé au départ créer une fonction qui va faire ce que tu fais toi
>> directement dans la page. Il faut que je teste cette solution. Le soucis
>> du fichier log, c'est qu'on peut l'effacer… :-)
>>
> Si tu veux quelque chose de plus pérenne, il faut un autre mécanisme que
> les logs.
> Mais si tu fais ça en base, il vaudrait mieux que ça marche comme les
> stats de SPIP :
> 1) fichier temporaire
> 2) Cron qui écrit en base
> Pour ne pas avoir besoin d'accéder à la base en écriture à chaque hit en
> 404 (un denial of service serait facilité).


Oui, il faudrait stocker dans un fichier dans tmp/ (éviter tmp/log/) pour
insertion dans la bdd par cron.
Mais là, quid du nombre d'écriture sur le disque serveur ? Je préfèrerai
presque faire l'insertion en base à chaque hit pour ne pas écrire comme un
malade sur le disque serveur…

Ybbet


>
>
>
> --
> RealET
>
>
> 
> spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone
>

spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Les erreurs 404 et consorts

2016-02-29 Par sujet RealET

Ybbet Spip a écrit le 01/03/2016 08:47 :


Tu stockes dans un fichier log "404" les infos de la page en 404. Mais
est-ce que tu les ré-affiches dans l'espace privé ?

Non, je ré-affiche rien.



J'ai pensé au départ créer une fonction qui va faire ce que tu fais toi
directement dans la page. Il faut que je teste cette solution. Le soucis
du fichier log, c'est qu'on peut l'effacer… :-)
Si tu veux quelque chose de plus pérenne, il faut un autre mécanisme que 
les logs.
Mais si tu fais ça en base, il vaudrait mieux que ça marche comme les 
stats de SPIP :

1) fichier temporaire
2) Cron qui écrit en base
Pour ne pas avoir besoin d'accéder à la base en écriture à chaque hit en 
404 (un denial of service serait facilité).



--
RealET



spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Les erreurs 404 et consorts

2016-02-29 Par sujet Ybbet Spip
Le 1 mars 2016 à 08:34, RealET  a écrit :

> Ybbet SPIP a écrit le 01/03/2016 08:29 :
>
>> Bonjour la compagnie,
>>
>> Existe-t-il dans SPIP une possibilité de lister les erreurs 404 ? Ou les
>> 40*?
>>
> C'est ce que je fais ici :
>
> http://zone.spip.org/trac/spip-zone/browser/_squelettes_/soyezcreateurs_net/trunk/plugins/soyezcreateurs/404.html
>
>
Tu stockes dans un fichier log "404" les infos de la page en 404. Mais
est-ce que tu les ré-affiches dans l'espace privé ?

J'ai pensé au départ créer une fonction qui va faire ce que tu fais toi
directement dans la page. Il faut que je teste cette solution. Le soucis du
fichier log, c'est qu'on peut l'effacer… :-)

Ybbet

>
> --
> RealET
>
>
> 
> spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone
>

spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Les erreurs 404 et consorts

2016-02-29 Par sujet RealET

Ybbet SPIP a écrit le 01/03/2016 08:29 :

Bonjour la compagnie,

Existe-t-il dans SPIP une possibilité de lister les erreurs 404 ? Ou les 40*?

C'est ce que je fais ici :
http://zone.spip.org/trac/spip-zone/browser/_squelettes_/soyezcreateurs_net/trunk/plugins/soyezcreateurs/404.html


--
RealET



spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone