メモリ内バッファーへの SDK のログインを制御する静的メソッドを持つクラス。 Speech SDK シナリオの実行中にログ記録を有効にすると、SDK のコア ネイティブ コンポーネントから詳細情報が提供されます。 Microsoft に問題を報告した場合は、Microsoft が問題を診断するのに役立つログを提供するように求められる場合があります。 アプリケーションは、特定のログ文字列に依存しないようにする必要があります。これは、SDK リリース間で予告なく変更される可能性があるためです。 MemoryLogger は、予期しないイベントが発生する前に短時間で取得されたログにアクセスする場合に設計されています。 たとえば、Speech Recognizer を実行している場合は、何らかのエラーが原因で認識が取り消されたことを示すイベントを取得した後に MemoryLogger をダンプできます。 メモリ バッファーのサイズは 2 MB で固定されており、変更できません。 これは "リング" バッファーです。つまり、書き込まれた新しいログ文字列は、バッファー内の最も古いものを置き換えます。 バージョン 1.20.0 で追加されました。
メモリ ログはプロセス全体のコンストラクトです。 つまり、(たとえば) 複数の音声認識エンジン オブジェクトが並列で実行されている場合、すべての認識エンジンからのインターリーブログを含むメモリ バッファーが 1 つ存在します。 認識エンジンごとに個別のログを取得することはできません。
メンバー
開始
構文: public inline static void Start ( );
内部メモリ バッファーへのログインを開始します。
止める
構文: public inline static void Stop ( );
内部メモリ バッファーへのログインを停止します。
フィルターを設定
構文: public inline static void SetFilters ( std::initializer_list< std::string > filters );
メモリ ログのフィルターを設定またはクリアします。 フィルターが設定されると、メモリ ロガーは、フィルターで指定された文字列の少なくとも 1 つを含むログ文字列でのみ更新されます。 一致では大文字と小文字が区別されます。
パラメーター
-
filters省略可能です。 使用するフィルター、または以前に設定したフィルターを削除する空のリスト。
ダンプ
構文: public inline static void Dump ( const SPXSTRING & filePath );
メモリ バッファー全体の内容を指定したファイルに書き込みます。 他の SDK スレッドがバッファーにログインし続けるのをブロックすることはありません。
パラメーター
-
filePathローカル ディスク上のログ ファイルへのパス。
これはメモリ バッファーをリセット (クリア) しません。
ダンプ
構文: public inline static void Dump ( std::ostream & outStream );
メモリ バッファー全体の内容を std::ostream を実装するオブジェクトに書き込みます。 たとえば、std::cout (コンソール出力の場合)。 他の SDK スレッドがバッファーにログインし続けるのをブロックすることはありません。
パラメーター
- 書き込む std::ostream オブジェクトを
outStreamします。
これはメモリ バッファーをリセット (クリア) しません。
ダンプ
構文: public inline static std::vector< std::string > Dump ( );
メモリ バッファー全体の内容を文字列のベクターとして返します。 他の SDK スレッドがバッファーにログインし続けるのをブロックすることはありません。
返品ポリシー
メモリ バッファーの内容がコピーされたベクター。
これはメモリ バッファーをリセット (クリア) しません。
レベル設定
構文: public inline static void SetLevel ( Level level );
ロガーによってキャプチャされるメッセージのレベルを設定します。
パラメーター
-
levelロガーによってキャプチャされる詳細の最大レベルです。