Clase Diagnostics::Logging::MemoryLogger
Clase con métodos estáticos para controlar el inicio de sesión del SDK en un búfer en memoria. Al activar el registro mientras se ejecuta el escenario del SDK de Voz, se proporciona información detallada de los componentes nativos principales del SDK. Si notifica un problema a Microsoft, es posible que se le pida que proporcione registros para ayudar a Microsoft a diagnosticar el problema. La aplicación no debe depender de cadenas de registro concretas, ya que pueden cambiar de una versión del SDK a otra sin previo aviso. MemoryLogger está diseñado para el caso en el que desea obtener acceso a los registros que se tomaron en la corta duración antes de que se produzca algún evento inesperado. Por ejemplo, si ejecuta speech Recognizer, puede que desee volcar MemoryLogger después de obtener un evento que indica que se canceló el reconocimiento debido a algún error. El tamaño del búfer de memoria se fija en 2 MB y no se puede cambiar. Se trata de un búfer de "anillo", es decir, las nuevas cadenas de registro escritas reemplazan a las más antiguas del búfer. Se agregó en la versión 1.20.0.
El registro de memoria es una construcción en todo el proceso. Esto significa que si (por ejemplo) tiene varios objetos de reconocedor de voz que se ejecutan en paralelo, habrá un búfer de memoria que contenga registros intercalados de todos los reconocedores. No se pueden obtener registros independientes para cada reconocedor.
Miembros
Inicio
Sintaxis: public inline static void Start ( );
Inicia el inicio de sesión en el búfer de memoria interno.
Stop
Sintaxis: public inline static void Stop ( );
Detiene el inicio de sesión en el búfer de memoria interno.
SetFilters
Sintaxis: public inline static void SetFilters ( std::initializer_list< std::string > filters );
Establece o borra filtros para el registro de memoria. Una vez establecidos los filtros, el registrador de memoria solo se actualizará con cadenas de registro que contengan al menos una de las cadenas especificadas por los filtros. La coincidencia distingue mayúsculas de minúsculas.
Parámetros
filters
Opcional. Filtros que se van a usar o una lista vacía para quitar filtros establecidos previamente.
Descarga
Sintaxis: public inline static void Dump ( const SPXSTRING & filePath );
Escribe el contenido del búfer de memoria completo en el archivo especificado. No impide que otros subprocesos del SDK continúen iniciando sesión en el búfer.
Parámetros
filePath
Ruta de acceso a un archivo de registro en el disco local.
Esto no restablece (borra) el búfer de memoria.
Descarga
Sintaxis: public inline static void Dump ( std::ostream & outStream );
Escribe el contenido de todo el búfer de memoria en un objeto que implementa std::ostream. Por ejemplo, std::cout (para la salida de la consola). No impide que otros subprocesos del SDK continúen iniciando sesión en el búfer.
Parámetros
outStream
objeto std::ostream en el que se va a escribir.
Esto no restablece (borra) el búfer de memoria.
Descarga
Sintaxis: public inline static std::vector< std::string > Dump ( );
Devuelve el contenido del búfer de memoria completa como vector de cadenas. No impide que otros subprocesos del SDK continúen iniciando sesión en el búfer.
Devoluciones
Vector con el contenido del búfer de memoria copiado en él.
Esto no restablece (borra) el búfer de memoria.
SetLevel
Sintaxis: public inline static void SetLevel ( Level level );
Establece el nivel de los mensajes que el registrador capturará.
Parámetros
level
Nivel máximo de detalle que capturará el registrador.