class Diagnostics::Logging::MemoryLogger
Osztály statikus metódusokkal az SDK memóriabeli pufferbe való naplózásának szabályozásához. Ha bekapcsolja a naplózást a Speech SDK-forgatókönyv futtatásakor, részletes információkat talál az SDK alapvető natív összetevőiről. Ha problémát jelent a Microsoftnak, a rendszer kérheti, hogy adjon meg naplókat, amelyek segítenek a Microsoftnak diagnosztizálni a problémát. Az alkalmazásnak nem szabad függőséget vállalnia bizonyos naplósztringektől, mivel az SDK-kiadásról egy másikra változhatnak előzetes értesítés nélkül. A MemoryLogger arra az esetre lett kialakítva, ha olyan naplókhoz szeretne hozzáférni, amelyek rövid idő alatt történtek, mielőtt váratlan esemény történne. Ha például beszédfelismerőt futtat, érdemes lehet memóriaképet készítenie a MemoryLoggerről, miután egy olyan eseményt kapott, amely azt jelzi, hogy a felismerés valamilyen hiba miatt megszakadt. A memóriapuffer mérete 2 MB-nál van rögzítve, és nem módosítható. Ez egy "gyűrűs" puffer, azaz a pufferben lévő legrégebbiek helyett új naplósztringek vannak megírva. Hozzáadva az 1.20.0-s verzióhoz.
A memórianaplózás egy folyamatszintű szerkezet. Ez azt jelenti, hogy ha (például) több beszédfelismerő objektum fut párhuzamosan, akkor egy memóriapuffer lesz, amely az összes felismerő naplóját tartalmazza. Nem lehet külön naplót lekérni minden felismerőhöz.
Tagok
Indítás
Szintaxis: public inline static void Start ( );
Elkezd bejelentkezni a belső memóriapufferbe.
Leállítás
Szintaxis: public inline static void Stop ( );
Leállítja a belső memóriapufferbe való bejelentkezést.
Szűrőkészletek beállítása
Szintaxis: public inline static void SetFilters ( std::initializer_list< std::string > filters );
Beállítja vagy törli a memórianaplózás szűrőit. A szűrők beállítása után a memórianaplózó csak a szűrők által megadott legalább egy sztringet tartalmazó naplósztringekkel frissül. Az egyezés megkülönbözteti a kis- és nagybetűt.
Paraméterek
filters
Választható. A használandó szűrők, vagy egy üres lista, amely eltávolítja a korábban beállított szűrőket.
Dump
Szintaxis: public inline static void Dump ( const SPXSTRING & filePath );
A teljes memóriapuffer tartalmát a megadott fájlba írja. Nem akadályozza meg, hogy más SDK-szálak továbbra is bejelentkezhessenek a pufferbe.
Paraméterek
filePath
Naplófájl elérési útja a helyi lemezen.
Ez nem állítja vissza (törli) a memóriapuffert.
Dump
Szintaxis: public inline static void Dump ( std::ostream & outStream );
A teljes memóriapuffer tartalmát egy olyan objektumba írja, amely megvalósítja az std::ostream objektumot. Például: std::cout (konzolkimenethez). Nem akadályozza meg, hogy más SDK-szálak továbbra is bejelentkezhessenek a pufferbe.
Paraméterek
outStream
std::ostream objektum, amelybe írni szeretne.
Ez nem állítja vissza (törli) a memóriapuffert.
Dump
Szintaxis: public inline static std::vector< std::string > Dump ( );
A teljes memóriapuffer tartalmát adja vissza sztringek vektoraként. Nem akadályozza meg, hogy más SDK-szálak továbbra is bejelentkezhessenek a pufferbe.
Válaszok
Egy vektor, amelybe a memóriapuffer tartalma van bemásolva.
Ez nem állítja vissza (törli) a memóriapuffert.
SetLevel
Szintaxis: public inline static void SetLevel ( Level level );
Beállítja a naplózó által rögzítendő üzenetek szintjét.
Paraméterek
level
A naplózó által rögzítendő részletek maximális szintje.