类 Diagnostics::Logging::FileLogger

使用静态方法来控制基于文件的 SDK 日志记录的类。 在运行语音 SDK 方案时启用日志记录可提供 SDK 核心本机组件的详细信息。 如果向Microsoft报告问题,系统可能会要求你提供日志以帮助Microsoft诊断问题。 应用程序不应依赖于特定的日志字符串,因为它们可能会从一个 SDK 版本更改为另一个 SDK,而不通知。 FileLogger 是最简单的日志记录解决方案,适用于在运行语音 SDK 时诊断大多数设备问题。 在版本 1.20.0 中添加。

文件日志记录是一个进程范围的构造。 这意味着,如果(例如)有多个语音识别器对象并行运行,则会有一个日志文件,其中包含来自所有识别器的交错日志行。 无法为每个识别器获取单独的日志文件。

成员

开始

语法:public inline static void Start ( const std::string & filePath , bool append );

开始记录到文件。

参数

  • filePath 本地磁盘上日志文件的路径

  • append 可选。 如果为 true,则追加到现有日志文件。 如果为 false,则创建新的日志文件

请注意,对文件的每个写入作紧随其后的是刷新到磁盘。 对于典型用法(例如一个语音识别器和固态硬盘(SSD),这不应导致性能问题。 但是,你可能希望在同时运行许多语音 SDK 识别器或其他 SDK 对象时避免文件日志记录。 请改用 MemoryLogger 或 EventLogger。

语法:public inline static void Stop ( );

停止记录到文件。

此调用是可选的。 如果已启动日志记录,则当进程正常存在时,将写入日志文件。

SetFilters

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

设置或清除应用于文件日志记录的筛选器。 设置筛选器后,仅当日志字符串包含筛选器指定的至少一个字符串时,才会调用回调。 匹配区分大小写。

参数

  • filters 可选。 要使用的筛选器,或用于删除以前设置的筛选器的空列表。

SetLevel

语法:public inline static void SetLevel ( Level level );

设置记录器要捕获的消息级别。

参数

  • level 记录器捕获的最大详细信息级别。