Mode Opératoire Script Python – Script SQL Script utilisé : Script_Pythonv3.py → Etape 11 Ce document est un mode opératoire pour pouvoir utiliser le script Python à partir du terminal de Linux permettant d’insérer les éléments dans la table PROXY. Il décrit les étapes importantes à suivre pour assurer le remplissage automatique de la table. 1 – Fichiers texte et log du Proxy Pour commencer, il est nécessaire d’avoir un (ou plusieurs) fichier(s) texte contenant les différents logs sur le proxy du réseau. Ces fichiers doivent être placés dans un répertoire dont l’adresse est connue et ne comportant pas d’espace pour éviter les éventuels problèmes. L’emplacement actuel des fichiers de log du Proxy est : /media/sf_F_DRIVE/Pro/Cours. L’emplacement du script réalisé à l’étape 11 est : /media/sf_F_DRIVE/Pro/Cours/Projet_Python. 2 – Terminal Dans le terminal, il faut se placer dans le répertoire contenant les fichiers de log du Proxy. On entre donc la commande : cd /media/sf_F_DRIVE/Pro/Cours/Projet_Python. On peut maintenant lancer la commande qui exécute le script python : python Script_Pythonv3.py log_proxy_2014-01*.txt <nom_du_script_SQL_généré>. Un message indiquant le nom du fichier de log utilisé et le résultat de l’exécution du script python s’affiche et le script SQL est créé au même emplacement qu’indiqué précédemment. 3 – Le SGBDR Oracle La dernière étape est l’exécution du script SQL dans un SQBDR. Ici, nous verrons le mode opératoire pour Oracle. Il faut ouvrir le script généré au format SQL en allant sur « Fichier -> Ouvrir » et choisir le répertoire contenant le script, il s’affiche alors sur la fenêtre en cours. Cliquez sur « Exécutez un script ». Si l’exécution se déroule correctement, le message « N lignes insérés » s’affiche. La table Proxy est désormais remplie. 4 – Test des requêtes SQL Plusieurs requêtes SQL sont proposées pour tester le bon fonctionnement du remplissage des tables : - Nombre d’utilisateurs par sites les plus visités : SELECT COUNT(*) AS NbUtilisateurs, URL FROM PROXY INNER JOIN SALARIES ON IP = AdresseIP GROUP BY URL ORDER BY NbUtilisateurs DESC; Mode Opératoire Script Python – Script SQL - Liste des utilisateurs les plus consommateurs: SELECT S.Num, Nom, Prenom, COUNT(*) AS NbLignes FROM SALARIES S INNER JOIN PROXY P ON P.AdresseIP = S.IP GROUP BY S.Num, Nom, Prenom ORDER BY NbLignes DESC - Historique des recherches : SELECT S.Num, Prenom, Nom, URL, Jour, Heure FROM SALARIES S INNER JOIN PROXY P ON S.IP = P.AdresseIP WHERE Jour = '16/01/14' AND Heure BETWEEN '07:00:00' AND '09:00:00' AND URL LIKE 'http://www.lequipe.fr%' GROUP BY S.Num, Prenom, Nom, URL, Jour, Heure;