J’aimerai avoir un retour d’expérience sur cet utilitaire qui me rend zinzin.
J’utilise celui-ci dans le contexte d’un mass hosting.
Voila, merci d’avance.
J’aimerai avoir un retour d’expérience sur cet utilitaire qui me rend zinzin.
J’utilise celui-ci dans le contexte d’un mass hosting.
Voila, merci d’avance.
Personne ?
Je pose cette question car j’ai un problème au moment du split, il me vire les robots… (cf. Ce topic sur debibox-news.com)
hello,
Apparemment c’est le but de split-logfile de séparer les fichiers, il lit les HEADER et decoupe les logs. Je connais pas cette outil, je pense qu’il doit y avoir moyen de concaténer les logs dans un fichier.
J’espère.
C’est assez balo quand même.
Voici le contenu du script.
[code]#!/usr/bin/perl
%is_open = ();
while ($log_line = ) {
#
# Get the first token from the log record; it’s the
# identity of the virtual host to which the record
# applies.
#
($vhost) = split (/\s/, $log_line);
#
# Normalize the virtual host name to all lowercase.
# If it’s blank, the request was handled by the default
# server, so supply a default name. This shouldn’t
# happen, but caution rocks.
#
$vhost = lc ($vhost) or “access”;
#
# if the vhost contains a “/” or “”, it is illegal so just use
# the default log to avoid any security issues due if it is interprted
# as a directory separator.
if ($vhost =~ m#[/\]#) { $vhost = “access” }
#
# If the log file for this virtual host isn’t opened
# yet, do it now.
#
if (! $is_open{$vhost}) {
open $vhost, ">>${vhost}.log"
or die (“Can’t open ${vhost}.log”);
$is_open{$vhost} = 1;
}
#
# Strip off the first token (which may be null in the
# case of the default server), and write the edited
# record to the current log file.
#
$log_line =~ s/^\S*\s+//;
printf $vhost “%s”, $log_line;
}
exit 0;[/code]
Déjà merci d’avoir répondu.
hello,
Oui j’avais matter les sources et il fais que lire les HEADERs et les decouper dans des fichiers, tu voudrais faire quoi ?
Je voudrai que les bots qui ont visité un domaine restent dans le log du domaine au moment du split.
hello,
# Get the first token from the log record; it's the
# identity of the virtual host to which the record
# applies.
#
($vhost) = split (/\s/, $log_line);
C’est une expression rationnelle, en clairs, le “\s” permet de s’arrêter au première espace rencontrer dans tous le parcours de ton fichier de log, voilà pourquoi il écrit des fichiers ip.log.
Mouarf, compliqué tout ça
Je dois faire quoi exactement ?
hello,
Je pense que tu peux rien faire tant que dans tes logs l’ip sort en premier.
Ben je peux m’arranger pour placer l’host ailleur !
Si je place l’host ailleur, comment dois-je mis prendre pour le split ?
hello,
Je t’es dis un peu plus haut qu’il faut que le nom de domaine soit en premier, ce qu’il y a c’est si ça resout pas le nom de domaine et bien ca sera l’ip qui sortira.
dans ton CustomLog tu met %V au début de la chaine de format, ça ira mieux. Pense a reloader apache2.
A+,
[quote=“ed”]dans ton CustomLog tu met %V au début de la chaine de format, ça ira mieux. Pense a reloader apache2.
A+,[/quote]
C’est déjà fait, j’ai donné le lien de ma conf de log.