Je suis en train de compter le nombre de résultats pour une URL particulière sur notre site Web en analysant nos journaux IIS utilisant Log Parser 2.2. Tout semble bien fonctionner, sauf que sa gestion des horodatages me perturbe grandement.Log Parser 2.2 sauter les journaux d'aujourd'hui IIS
Les journaux IIS ont toutes les horodatages exprimées dans le temps UTC. Par conséquent, dans mon application, je convertis l'heure du serveur à UTC avant de le brancher dans la requête. Cependant, lorsque j'essaie de rechercher les données du jour actuel, je récupère un nombre zéro, bien que je voie les enregistrements dans le fichier journal. La requête générée j'essaie de courir pour obtenir tout dans la journée actuelle ressemble à quelque chose comme ceci (la requête est exécutée le 11/11/2009, et je me sers de temps Arizona):
SELECT COUNT(*)
FROM \\Server\IIS Logs\LogFiles\W3SVC1\u_ex*.log
WHERE
cs-method = 'GET'
AND cs(Referer) NOT LIKE '%ntorus%'
AND c-ip NOT LIKE '192%'
AND c-ip NOT LIKE '127%'
AND (
cs-uri-stem = '/'
OR cs-uri-stem = '/myurl')
AND sc-status BETWEEN 200 AND 299
AND date BETWEEN
TIMESTAMP('2009-11-11 07:00', 'yyyy-MM-dd hh:mm')
AND TIMESTAMP('2009-11-12 07:00', 'yyyy-MM-dd hh:mm')
Il ressemble à Pour une raison quelconque, les données de la journée en cours sont ignorées. Lorsque j'interroge des dates antérieures, je récupère très bien les données. Pourquoi cela arrive-t-il?
Heureux il a aidé et que vous avez trouvé une meilleure façon de je le fais. – Jacob
Un commentaire rapide .. la chaîne de format de date est sensible à la casse, l'écriture « aaaa-mm-jj » vous fera perdre un bon 15 minutes à essayer de comprendre pourquoi les dates de LogParser sont cassés. soupir. –