Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Для использования поставщика событий наблюдателя файловой системы необходимо указать внутрипроцессный поставщик событий в определении приложения, а также разработать аннотированный файл XML-схемы языка Transact-SQL, который будет обеспечивать соответствие данных событий с полями событий.
Свойства
При определении свойств поставщика событий наблюдателя файловой системы используйте следующие требования.
- Обязательное свойство ProviderName должно быть уникальным именем в приложении.
- ClassName (обязательное) должно иметь значение FileSystemWatcherProvider.
- Не используйте свойство AssemblyName. Службы Notification Services выполняют поиск сведений о стандартном поставщике событий в сборке Microsoft.SqlServer.NotificationServices.dll.
- Обязательное свойство SystemName обычно является именем компьютера, на котором будет запущен данный внутрипроцессный поставщик событий. Дополнительные сведения см. в разделе Определение внутрипроцессных поставщиков событий.
- Не определяйте значение времени ожидания. У поставщика событий наблюдателя файловой системы есть свои собственные значения времени ожидания и логика повторных попыток.
- Не определяйте расписание. Поставщик событий наблюдателя файловой системы является непрерывным поставщиков событий, не поддерживающим работу по расписанию.
Аргументы
У поставщика событий наблюдателя файловой системы есть семь именованных аргументов, которые используются в качестве параметров инициализации. Их можно задавать в любом порядке:
- Обязательный параметр WatchDirectory указывает полный путь и имя каталога, которые поставщик событий отслеживает как свое значение. Можно использовать либо стандартные соглашения об именах, либо формат UNC.
- Обязательный параметр EventClassName определяет имя класса событий, для которого этот поставщик событий передает события.
- Обязательный параметр SchemaFile определяет полный путь к файлу, содержащему аннотированную XML-схему Transact-SQL, которая используется для преобразования данных XML-файла в соответствующий формат событий. Дополнительные сведения см. в разделе Проверка файла.
Примечание.Аннотированная XML-схема Transact-SQL, предоставленная аргументом SchemaFile, должна обрабатывать все поля, определенные в классе событий. В случае отсутствия поля события в файле схемы поставщик событий наблюдателя файловой системы заканчивает свою работу, выводя сообщение об ошибке «80004005: выполнение инструкции было прервано», а в каталоге наблюдения создается файл .err. - Необязательный параметр RetryAttempts определяет количество попыток получения доступа к заблокированному файлу, прежде чем такой файл будет удален из очереди. Это значение представлено целым числом (по умолчанию равным 10). Дополнительные сведения см. в разделе Логика выбора и повторного выбора файлов.
- Необязательный параметр RetryQueueOccupancy определяет, сколько файлов может одновременно находиться в очереди повторной попытки доставки. Это значение представлено целым числом (по умолчанию равным 1024).
- Необязательный параметр RetryPeriod определяет, с какой частотой поставщик событий должен обрабатывать очередь. Значение, представленное в миллисекундах, определяет период времени, проходящий между окончанием одного потока и началом другого. Это значение представлено целым числом (значение по умолчанию равно 10000 миллисекундам, то есть 10 секунд). Если значение равно 0, то при запуске поставщика выполняется только одна попытка повторной доставки.
- Необязательный параметр RetryWorkload определяет максимальное количество файлов в очереди, которые могут быть обработаны в течение одного периода повторной доставки. Это значение представлено целым числом (по умолчанию равным 1024).
Дополнительные сведения об определении внутрипроцессного поставщика событий см. в разделе Определение внутрипроцессных поставщиков событий.
Пример. Определение поставщика событий наблюдателя файловой системы
В следующем примере показывается, как определять поставщика событий наблюдателя файловой системы, названного StockWatcher в файле определения приложения (ADF):
<Providers>
<HostedProvider>
<ProviderName>StockWatcher</ProviderName>
<ClassName>FileSystemWatcherProvider</ClassName>
<SystemName>NSSERVER01</SystemName>
<Arguments>
<Argument>
<Name>WatchDirectory</Name>
<Value>C:\StockInfo\NewEvents</Value>
</Argument>
<Argument>
<Name>EventClassName</Name>
<Value>StockEvents</Value>
</Argument>
<Argument>
<Name>SchemaFile</Name>
<Value>C:\Schemas\StockEventSchema.xsd</Value>
</Argument>
<Argument>
<Name>RetryAttempts</Name>
<Value>15</Value>
</Argument>
<Argument>
<Name>RetryQueueOccupancy</Name>
<Value>100</Value>
</Argument>
<Argument>
<Name>RetryPeriod</Name>
<Value>50000</Value>
</Argument>
<Argument>
<Name>RetryWorkload</Name>
<Value>100</Value>
</Argument>
</Arguments>
</HostedProvider>
</Providers>
См. также
Основные понятия
Логика выбора и повторного выбора файлов
Проверка файла
Другие ресурсы
Поставщик событий наблюдателя файловой системы
Определение поставщиков событий
Стандартные поставщики событий