2015-10-04 1 views
0

Comment puis-je conserver les informations Glimpse (pour MVC4) à des fins historiques? Par exemple, je voudrais stocker des éléments de données de tableau de bord spécifiques (par exemple, le temps sur le réseau) d'une base de données, par requête, afin de créer un graphique basé sur cela. J'ai cherché partout dans les docs et les forums pour quelque chose comme ça, mais je n'ai rien trouvé de vraiment utile pour mettre en place ce cas d'utilisation.Informations de tableau de bord persistantes pour Glimpse pour ASP.NET MVC

Cette question est reliée à How glimpse persists debugging information?. Il suggère d'implémenter IDataStore Cependant, si je fais ce chemin, comment puis-je référencer mon implémentation d'interface pour que mon installation Glimpse l'utilise?

Répondre

0

Si vous souhaitez uniquement conserver les données et les extraire de manière indépendante (pour votre tableau de bord), cela devrait être assez facile. Vous aurez probablement envie d'hériter de ApplicationPersistenceStore (qui implémente IPersistenceStore) de sorte que vous obtenez le comportement de la valeur par défaut PersistenceStore et juste enregistrer dans votre magasin avant d'appeler base.Seve(...).

Afin d'enregistrer le, vous voulez jeter un oeil à ce qui se passe sur here. Vous verrez que nous regardons le UserServiceLocator (qui est un IServiceLocator) pour voir si vous voulez personnaliser ce qui se passe. Pour enregistrer votre localisateur de service, vous pouvez le faire à partir de la section de configuration Glimpse. Here est un exemple de la façon de le faire:

<glimpse serviceLocatorType="Glimpse.Test.Core.TestDoubles.DummyServiceLocator, Glimpse.Test.Core" ...> 

Laissez-moi savoir comment vous allez.

+0

Merci, mais il n'y a rien à redéfinir sur ApplicationPersistenceStore; Comment puis-je étendre c'est sa méthode Save()? Je pense qu'il est préférable d'implémenter IPersistenceStore en utilisant un ApplicationPersistenceStore interne. Ensuite, le ApplicationPersistenceStore nécessite également un IDataStore à l'instant, donc je suppose que je devrai fournir une implémentation de cela aussi. – prmph

+0

J'ai du travail, merci! Mais je me demande comment extraire les données de timings de vue d'affichage (telles que la requête totale, la vue, l'action/contrôleur, et le temps de fil) de l'objet GlimpseRequest passé à la méthode Save() de mon IPersistenceStore personnalisé. De même, comment activer cette journalisation (mais sans afficher les onglets Glimpse aux utilisateurs) en mode production? – prmph

+0

Regardez la propriété 'DisplayData' de l'objet' GlimpseRequest' passé dans la méthode 'Save (...)'. Je ne peux pas me souvenir exactement de quelle touche il s'agit, mais vous devriez être en mesure de définir un point de rupture et d'examiner les données dont vous avez besoin. – anthonyv