Поделиться через


class Diagnostics::Logging::FileLogger

Класс со статическими методами для управления ведением журнала пакета SDK на основе файлов. Включение ведения журнала при запуске сценария пакета SDK службы "Речь" предоставляет подробные сведения из основных собственных компонентов пакета 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.

Stop

Синтаксис: 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 Максимальный уровень детализации, который будет захватывать средство ведения журнала.