Partager via


class Diagnostics::Logging::MemoryLogger

Classe avec des méthodes statiques pour contrôler la journalisation du SDK dans une mémoire tampon en mémoire. L’activation de la journalisation lors de l’exécution de votre scénario de SDK Speech fournit des informations détaillées sur les principaux composants natifs du SDK. Si vous signalez un problème à Microsoft, vous pouvez être invité à fournir des journaux pour aider Microsoft à diagnostiquer le problème. Votre application ne doit pas dépendre de chaînes de journal particulières, car elles peuvent passer d’une version du SDK à une autre sans préavis. MemoryLogger est conçu pour le cas où vous souhaitez accéder aux journaux d’activité qui ont été pris pendant une courte durée avant qu’un événement inattendu ne se produise. Par exemple, si vous exécutez un module Speech Recognizer, vous souhaiterez peut-être vider MemoryLogger après avoir obtenu un événement indiquant que la reconnaissance a été annulée en raison d’une erreur. La taille de la mémoire tampon est fixe à 2 Mo et ne peut pas être modifiée. Il s’agit d’une mémoire tampon « en anneau », c’est-à-dire que les nouvelles chaînes de journal écrites remplacent les plus anciennes dans la mémoire tampon. Ajouté dans la version 1.20.0.

La journalisation de la mémoire est une construction à l’échelle du processus. Cela signifie que si (par exemple) vous avez plusieurs objets de reconnaissance vocale exécutés en parallèle, il y aura une mémoire tampon contenant des journaux entrelacés de tous les modules de reconnaissance. Vous ne pouvez pas obtenir de journaux distincts pour chaque module de reconnaissance.

Membres

Démarrer

Syntaxe : public inline static void Start ( );

Démarre la connexion à la mémoire tampon interne.

Arrêter

Syntaxe : public inline static void Stop ( );

Cesse de se connecter à la mémoire tampon interne.

SetFilters

Syntaxe : public inline static void SetFilters ( std::initializer_list< std::string > filters );

Définit ou efface les filtres pour la journalisation de la mémoire. Une fois les filtres définis, l’enregistreur d’événements de mémoire est mis à jour uniquement avec des chaînes de journal contenant au moins l’une des chaînes spécifiées par les filtres. La correspondance respecte la casse.

Paramètres

  • filters Facultatif. Filtres à utiliser ou liste vide à supprimer des filtres définis précédemment.

Décharge

Syntaxe : public inline static void Dump ( const SPXSTRING & filePath );

Écrit le contenu de la mémoire tampon entière dans le fichier spécifié. Elle n’empêche pas d’autres threads du SDK de continuer à se connecter à la mémoire tampon.

Paramètres

  • filePath Chemin d’accès à un fichier journal sur le disque local.

Cela ne réinitialise pas (efface) la mémoire tampon.

Décharge

Syntaxe : public inline static void Dump ( std::ostream & outStream );

Écrit le contenu de la mémoire tampon entière dans un objet qui implémente std::ostream. Par exemple, std::cout (pour la sortie de la console). Elle n’empêche pas d’autres threads du SDK de continuer à se connecter à la mémoire tampon.

Paramètres

  • outStream objet std::ostream dans lequel écrire.

Cela ne réinitialise pas (efface) la mémoire tampon.

Décharge

Syntaxe : public inline static std::vector< std::string > Dump ( );

Retourne le contenu de la mémoire tampon entière en tant que vecteur de chaînes. Elle n’empêche pas d’autres threads du SDK de continuer à se connecter à la mémoire tampon.

Retours

Vecteur dans lequel le contenu de la mémoire tampon est copié.

Cela ne réinitialise pas (efface) la mémoire tampon.

SetLevel

Syntaxe : public inline static void SetLevel ( Level level );

Définit le niveau des messages à capturer par l’enregistreur d’événements.

Paramètres

  • level Niveau maximal de détails à capturer par l’enregistreur d’événements.