-
Type:
Improvement
-
Status: In Progress
-
Priority:
Critical
-
Resolution: Unresolved
-
Affects Version/s: 0.2.0
-
Fix Version/s: 0.3.0
-
Component/s: None
-
Labels:None
-
Epic Link:
Contexte
Paramétrage de la gestion des erreurs et du log.
Contenu
Actuellement le paramètre context dans les AppSettings permet de définir le comportement en matière de traçage d'erreur :
- 0 : simple : log
- 1 : console : log, écriture sur la sortie standard
- 2 : wpf/winforms : log, affichage d'un pop-up.
Modifications à réaliser
1. L'ORM ne doit pas gérer la couche visuelle.
Le plus sain est de partir sur le lancement d'une exception, et de supprimer les options énumérées ici.
Pour gérer le niveau de log (simple ou complet), mais uniquement vers un fichier de log, on utilise la configuration standard
2. Un exemple de fichier App.config le plus simple possible devrait être dans le README.md du git pour la mise en route, indépendamment de la documentation qui est plus complète. Y ajouter le lien sur la doc microsoft de System.Diagnostics.
Dans la documentation de l'ORM, on a déjà précisé que si les loggers spécifiques à l'ORM sont absents de la configuration, alors on utilise les loggers par défaut de System.Diagnotics.
3. Mettre à jour la page de documentation associée avec les suppressions, et en profiter pour gérer aussi la page en anglais.
<system.diagnostics> <trace autoflush="true" indentsize="2"/> <sources> <source name="osamesOrmTraceSource" switchName="mySwitch" switchType="System.Diagnostics.SourceSwitch"> <listeners> <clear/> <add name="textwriterListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="OsamesOrm.log" traceOutputOptions="DateTime"> <!-- le filtre laisse passer les message de niveau personnalisé --> <filter type="System.Diagnostics.EventTypeFilter" initializeData="Verbose"/> </add> </listeners> </source> <source name="osamesOrmDetailedTraceSource" switchName="mySwitch" switchType="System.Diagnostics.SourceSwitch"> <listeners> <clear/> <add name="textwriterListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="OsamesOrm_err_detail.log" traceOutputOptions="DateTime, Callstack"> <!-- le filtre laisse passer les message de niveau erreur seulement --> <filter type="System.Diagnostics.EventTypeFilter" initializeData="Error"/> </add> </listeners> </source> </sources> <switches> <!-- un seul switch qui permet à tous les listeners d'écouter --> <add name="mySwitch" value="All"/> </switches> </system.diagnostics>
Comportement Attendu
1. Code inutile supprimé du paramétrage et chargement du paramétrage.
2. Log fin ou détaillé obtenu selon le paramétrage, mais toujours vers un ou deux fichiers.
3. Documentation correcte.
Remarque - Commentaire
Method | ProcessOrmException |
File | OOrmErrorsHandler |
Concerns | ConfigurationLoader.GetOrmContext |
- mentioned in
-
Page Loading...