diagnostika třídy::Logging::MemoryLogger

Třída se statickými metodami pro řízení protokolování sady SDK do vyrovnávací paměti. Zapnutí protokolování při spuštění scénáře sady Speech SDK poskytuje podrobné informace z základních nativních komponent sady SDK. Pokud nahlásíte problém s Microsoftem, můžete být požádáni o poskytnutí protokolů, které microsoftu pomůžou problém diagnostikovat. Vaše aplikace by neměla záviset na konkrétních řetězcích protokolu, protože se můžou bez předchozího upozornění změnit z jedné verze sady SDK na jinou. MemoryLogger je určený pro případ, kdy chcete získat přístup k protokolům, které byly během krátké doby trvání před nějakou neočekávanou událostí. Pokud například spouštíte službu Rozpoznávání řeči, můžete po zobrazení události, která indikuje, že se rozpoznávání zrušilo kvůli nějaké chybě, vyhodit memoryLogger. Velikost vyrovnávací paměti je pevná na 2 MB a nelze ji změnit. Jedná se o vyrovnávací paměť "ring", to znamená, že nové řetězce protokolu zapsané nahrazují nejstarší řetězce v vyrovnávací paměti. Přidáno ve verzi 1.20.0.

Protokolování paměti je konstruktor celého procesu. To znamená, že pokud (například) máte spuštěných více objektů rozpoznávání řeči paralelně, bude existovat jedna vyrovnávací paměť obsahující prokládání protokolů ze všech rozpoznávání. Nemůžete získat samostatné protokoly pro každý rozpoznávatel.

Členové

Začátek

Syntaxe: public inline static void Start ( );

Spustí přihlášení do vyrovnávací paměti interní paměti.

Zastavte

Syntaxe: public inline static void Stop ( );

Zastaví přihlášení do vyrovnávací paměti interní paměti.

SetFilters

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

Nastaví nebo vymaže filtry pro protokolování paměti. Po nastavení filtrů se protokolovací rutina paměti aktualizuje pouze pomocí řetězců protokolu obsahujících alespoň jeden z řetězců určených filtry. Shoda se rozlišují malá a velká písmena.

Parametry

  • filters volitelné. Filtry, které se mají použít, nebo prázdný seznam pro odebrání dříve nastavených filtrů.

Skládka

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

Zapíše obsah vyrovnávací paměti do zadaného souboru. Nezablokuje další vlákna sady SDK, aby se nadále přihlašovala do vyrovnávací paměti.

Parametry

  • filePath cesta k souboru protokolu na místním disku.

Tím nedojde k resetování (vymazání) vyrovnávací paměti.

Skládka

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

Zapíše obsah vyrovnávací paměti do objektu, který implementuje std::ostream. Například std::cout (pro výstup konzoly). Nezablokuje další vlákna sady SDK, aby se nadále přihlašovala do vyrovnávací paměti.

Parametry

  • outStream objekt std::ostream pro zápis.

Tím nedojde k resetování (vymazání) vyrovnávací paměti.

Skládka

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

Vrátí obsah celé vyrovnávací paměti jako vektor řetězců. Nezablokuje další vlákna sady SDK, aby se nadále přihlašovala do vyrovnávací paměti.

Návraty

Vektor s obsahem vyrovnávací paměti zkopírovaným do něj.

Tím nedojde k resetování (vymazání) vyrovnávací paměti.

SetLevel

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

Nastaví úroveň zpráv, které mají být zaznamenány protokolovacím nástrojem.

Parametry

  • level maximální úroveň podrobností, kterou má protokolovač zachytit.