2010-07-13 5 views
0

Nous utilisons actuellement NLog pour la journalisation (ce qui était un choix arbitraire fait il y a quelques mois, donc il peut être modifié si nécessaire). NLog peut se connecter à une base de données, mais nécessite une chaîne ConnectionString.NLog consignation dans la base de données dans l'environnement n-tier

C'est un problème pour nous car nous sommes dans un environnement à n tiers et nous n'avons aucun accès à la base de données au niveau Présentation (tout revient aux services hébergés WCF dans le niveau intermédiaire). Est-ce que quelqu'un a de bonnes recommandations sur la façon dont je peux obtenir des logs d'une webfarm dans un seul référentiel consolidé (SQL, ou une autre technologie, par exemple MongoDb, etc.) qui sera derrière le WCF de niveau intermédiaire?

Oui, je sais que WCF et d'autres problèmes peuvent se produire lorsque j'essaie d'accéder au référentiel de consignation (inaccessibité, etc.). Dans ce cas, nous allons configurer la consignation des fichiers sur le serveur.

Je pourrais utiliser un peu de sagesse ici s'il vous plaît.

Brian

Répondre

0

Pour l'exploitation forestière liée à la logique métier (pas Erreurs du système), je recommande la création d'un point de terminaison WCF et emballage nlog dans votre niveau d'activité. Ainsi, vous appelez vos méthodes de journalisation comme vous le feriez pour n'importe quelle méthode de niveau intermédiaire. Cela laisse les erreurs du système comme les erreurs db/réseau etc. Pour ceux-ci les options comprennent le journal des événements de Windows, email, fichier, twitter :) etc .. choisissez votre choix. Tant que ça ne dépend pas de la base de données, ça va. Et en fonction de l'importance de votre application, vous pouvez utiliser quelques méthodes telles que le système de fichiers et le courrier électronique.