begin process at 2010 02 10 00:06:11
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Débutant(e)

 > 

detection session


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

detection session

jeudi 17 mai 2007 à 15:40:23 | detection session

gadour_esz

salut
je suis entrain d'écrir un programme en java qui travaille sur les fichier log ou je dopit détecter la sessioin de chaque utilisateur.
En fait , j'ai fait des recherches à propos de ce problème qui  m'a donné
-on peut identifier l'utilisateur par son mot de passe qui est présent que dans la première ligne coresspondante à sa connection.
-par les @ip et le temp (heuristique <30m) or dans access_log il ya une unique @ qui celle du proxy
-->Est-ce que on peut utuliser l'URL de référence dans la ligne du fichier log pour récupurer les pages demandés par un utilisateur  dés sa connection ?
j' ai vraiment besoin de votre aide
jeudi 17 mai 2007 à 21:00:08 | Re : detection session

Ombitious_Developper


Salut le Zarzisien:

Peux tu expliquer mieux ta problématique?

Je pense que tu postes déja autour de ce sujet de fichier log dépuis un certains temps, donc j'ai du mal à faire le lien avec tes dernière questions.



jeudi 17 mai 2007 à 21:03:45 | Re : detection session

Ombitious_Developper

Salut:

Un fichier log n'est autre qu'un simple fichier utilisé par les applications pour faire la journalisation de quelques événements, donc si je ne me trompe pas le travail de manipulation des fichiers log revient à un travail de traitement des fichiers.

Est ce que les fichiers log sur lesquelles tu travailles ont une structure particulière?

Si tes fichiers log, renferment toutes les informations dont tu as besoin alors on peut dire que ta tâche est simpliste et elle se résume en un simple traitement de fichiers.


vendredi 18 mai 2007 à 09:33:24 | Re : detection session

gadour_esz

salut,
par exemple la structure deu fichier log est comme suit:
-url1 session i
-url2
-url3
-url4 session j
-url5
-url6 session j
-url7
-url8 session i
-url9
etc
j'ai l' algo qui étant donnée l'idsession, il sélectionne les urls relatifs à cette session en itérant sur l'ensemble des lignes,  donc rapidement (idée générale) pour des cas de figure ça donne ça i.e
 
session=session i
répéter
y = extraire session ( çàd y= idsession  sinon 0)
Si ( je rencontre  y=session | session_precedente = session)
la ligne fait partie de cette session
session_precedente=Y
jusqu'à ligne dans fichier

le problème est que j'ai essayé de traduire cet algorithme en java mais j'ai pas pu
récupuer la variable
session_precedente
j'ai besoin de votre aide
Merci
vendredi 18 mai 2007 à 14:51:05 | Re : detection session

Ombitious_Developper

Salut:

J'ai saisit ton problème, je vais essayer de chercher une solution.
Je te contacterais.
Promis.

Juste une autre question: session est un nombre ou quoi?
est ce que ton fichier est un peu comme ceci:

// Fichier log

http://www.javafr.com        1
http://www.cppfrance.com     2
http://www.google.com        3
....
....
....

samedi 19 mai 2007 à 08:36:56 | Re : detection session

gadour_esz

salut,
les urls coresponds à des pages du sites pas des liens externe.
pour la session c'est un entier
Merci
samedi 19 mai 2007 à 11:28:15 | Re : detection session

Ombitious_Developper

Réponse acceptée !
Salut:

Avec un tel algorithme il y a beaucoup de va et vient donc si tu comptes l'appliquer sur un fichier ça serait vraimant lourd (mais je ne dirais pas impossible).

Je te propose une solution pourquoi ne pas transformer ton fichier log en un java.util.ArrayList (ou bien un java.util.Vector) ainsi la recherche est facile, en plus tu as la possiblité de trier les enregistrements.

Petite idée:

/**
  * Cette classe représente un seul enregistrement d'un fichier log.
  * càd, il contient: URL + SessionID
  */
public class Record {
    private ind sessionID;
    private String url;

    public Record () {}
    public Record (String url, int sessionID) {
       this.url = url;
       this.sessionID = sessionID;
    }

    public void setSessionID (int sessionID) {this.sessionID = sessionID;}
    public int getSessionID () {return this.sessionID;}

    // DE MEME POUR LA PROPROETE "url"
    public void setUrl (String url) {this.url = url;}
    public String getUrl () {return this.url;}
}


Notre bean Java est prêt.

Maintenant il faut lire le fichier log et crée un ArrayList d'objet Record:

ArrayList<Record> arrayList = new ArrayList<Record> ();

FileReader fr = new FileReader ("data.log");
BufferedReader br = new BufferedReader (fr);

String line;

while ((line = br.readLine ()) != null) {
   
    int sessionID = 0;
    int url = "";

    try {
       String [] tokens = line.split (" ");
       sessionID = tokens [0];
       url = Integer.parseInt (tokens [1]);
    }
    catch (NumberFormatException err) {
       System.err.println ("Conversion impossible ...");
       System.exit (1);
    }
    catch (IndexOutOfBoundsException e) {
      
System.err.println ("Le fichier ne contient pas deux champs ...");
       System.exit (1);

    }

    Record record = new Record ();
    record.setSessionID (sessionID);
    record.setUrl (url);
   
    arrayList.add (record);
}
br.close ();

Maintenant tu as tous les enregistrement dans un ArrayList (on peux dire un tableau).
samedi 19 mai 2007 à 12:08:41 | Re : detection session

gadour_esz

Merci pour votre reponse , vous étiez trés patient avec moi.
Asselem Alikom
samedi 19 mai 2007 à 12:53:47 | Re : detection session

Ombitious_Developper

De rien:

Comme je t'ai dit, tout le traitement est devenu maintenant une traitement de tableau.

Record record = arrayListe.get (i);
String url = record.getUrl ();
int sessionID = record.getSessionID ();

// ...
samedi 19 mai 2007 à 15:24:39 | Re : detection session

Ombitious_Developper

Salut:

Si tu veux trier tes objets suivants leurs numéro de session tu peux faire ainsi:

public class Record implements Comparable {
     // ...

     public int compareTo (Object obj) {
          Record rec = (Record)obj;
          int sessionID = obj.getSessionID ();

          if (this.sessionID == sessionID)
                return 0;
          else if (this.sessionID < sessionID)
                return -1;
          else
                return 1;
     } 
}

ArrayList<Record> arrayList = new ArrayList<Record> ();

// APRES REMPLISSAGE

java.util.Collections.sort (arrayList);

// MAINTENANT arrayList est trié



Cette discussion est classée dans : fichier, log, utilisateur, session, detection


Répondre à ce message

Sujets en rapport avec ce message

creation de profil utilisateur [ par barkahoum ] BonjourJe suis en développement d'un module en jsp.On m'a demandé de faire des profiles utilisateurs . un étudiant pas exemple peut soumettre des rép Detection modif fichier / repertoire [ par wargre ] Certain serveur sont capable de detecter la moindre modification de fichier et ou ajout de fichier dans un repertoire defini. Si qq est capable de me envoyer des mails avec pièces jointes [ par pipin ] J'essaie d'envoyer des pièces jointes dans un mail. Ca marche lorsque je teste sous forte4java mais ça plante à partir d'un jar exécutable. Il me renv jFileChooser : empêcher la saisie nom du fichier [ par Foub12 ] Bonjour,j'ai créé un jFileChooser pour que l'utilisateur puisse sélectionner un fichier XML dans mon application. Comment puis-je m'y prendre pour emp ecrire un fichier vers un repertoire que l'utilisateur choisit [ par onini ] Bonjour J'ai un souci En java. En fait je voudrai ecire un fichier(de nom par exemple toto.txt) mais l'ecrire non pas vers vers le repertoire ou je t répertoire utilisateur [ par dufour137 ] Bonsoir tout le monde, J'ai une application java qui nessecite un fichier de configuration, comment faire pour que le chemin o~u le fichier soit écri Perte de session utilisateur [ par adnane1 ] Bonjour;j'ai un probleme qui me bloque et je ne sais pas comment faire.j'ai un formulaire ou l'utilisateur renseigne les champs puis il valide (servle fichier log [ par michel_07 ] Bonjour; j'ai un code java qui me permet d'insere des donner dans un fichier en local.mon probléme c'est que je cherche comment stocker ces meme infos analyser fichier log [ par gadour_esz ] salut,je suis entrain de préparer un application en java .A travers mon application , je dois ecrire un programme qui me permet d'analyserun fichier l l'imprimante et le fichier log [ par malkovich ] lorsque j'imprime un fichier est ce que je peut tester sur l'imprimante pour qu'elle me renvoie le type d'erreur s'il y en a et comment?


Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,624 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales