Même si je viens du monde de builder, j'ai quelques éléments qui peuvent servir:
Cela concerne plus une chose en rapport avec les premiers posts du topic (assez ancien) mais don je n'ai vu aucune information a proprement parlé dessus.
Cela utilise une astuce de CGI pour c++ builder et quelque petites autres astuces:
- Création d'une classe Logger
- Dedans, je crée un constructeur avec Owner et deux booléens
- Ce constructeur va créer un affichage console (astuce de CGI) et un fichier texte (basé sur fstream), avec un nom basé comme ceci APPLICATION_NAME_OWNERNAME_YYYY_MM_DD_hh_mm.log
- les boolens indique si je crée ce fichier et si je crée mon affichage console
- Cette classe recevra deux fonctions:
- OtuputDebugString(String) qui va simplement ajouter la string que je veux et celui-ci ajoute automatiquement l'heure en face
- OutputException (Exception) qui va automatiquement ajouter une trame avec l'heure,le type d'exception,la valeur de l'exception, la valeur de GetlastError et sa définition
Je place ces fonctions dans aux endroits qui posent problème
Depuis j'ai commencer a l'étoffer et desormais ça me sors automatiquement dans mon log :
et l'affichage console est coloré suivant le niveau de verbosité et de l'impact du message (coleurs claires et froides pour la verbosité et couleurs chaudes pour les warnings et les erreurs)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 ************************************************************** * Project System LogFile * * Project 1.38.02 Series * * Related Build: Release * ************************************************************** ************************************************************** * Windows System Information * ************************************************************** Computer Name: XXXXXXX-DEV Windows Version: Windows XP Windows Build: 2600 Service Pack: Service Pack 3 Physical Memory: 2046 Mo User Name: YYYYYYY Admin Rights: User is in the Admin Group ************************************************************** * Project System Information * ************************************************************** Project Release: 12w49b Related Build: December 2012 Release Date: Week 2 (Week 49 of the Year) Project Core Type: Hybrid Project Core Version: Revision 45.12.38b ************************************************************** * Project Plugins * ************************************************************** xxxxxxxxxxxxxxxx Revision 21 xxxxxxxxxxxxxxxx Revision 37 xxxxxxxxxxxxxxxx Revision 4 xxxxxxxxxxxxxxxx Revision 2 xxxxxxxxxxxxxxxx Revision 0 xxxxxxxxxxxxxxxx Revision 38 snapshot21 xxxxxxxxxxxxxxxx Revision 254 xxxxxxxxxxxxxxxx Revision 4881 xxxxxxxxxxxxxxxx Revision 2 xxxxxxxxxxxxxxxx Revision 1 ************************************************************** * Project: Journal de débogage * ************************************************************** Debug loging file generated on08/11/2012 10:01:38 Verbose Mode is set on 1 of 3 (Standard Logging) 08/12/2012 : Initialisation SQL ... 08/12/2012 : Chargement des configurations ... 08/12/2012 : Chargement de la base de données ... 08/12/2012 : Chargement de la carte MapPoint ... 08/12/2012 : Initialisation de xxxxxxxxxxxxxxxx ... 08/12/2012 : Initialisation du module de reconaissance xxxxxxxxxxxxxxxx ... 08/12/2012 : Initialisation du module xxxxxxxxxxxxxxxx ... 08/11/2012 : Initialisation du module xxxxxxxxxxxxxxxx ... 08/12/2012 : Initialisation du module xxxxxxxxxxxxxxxx ... 08/11/2012 : Initialisation des modules xxxxxxxxxxxxxxxx ... 08/12/2012 : Chargement terminé ************************************************************** * END OF FILE * **************************************************************
normalement tout ceci peut être porté sur delphi
Partager