Définition d'un fournisseur d'événements de l'observateur du système de fichiers
Pour utiliser le fournisseur d'événements de l'observateur du système de fichiers, vous devez définir un fournisseur d'événements hébergé dans la définition d'application et développer un fichier de schéma XML annoté Transact-SQL qui mappe les données d'événements aux champs d'événement.
Propriétés
Utilisez les instructions ci-dessous lors de la définition des propriétés du fournisseur d'événements de l'observateur du système de fichiers.
- ProviderName (obligatoire) doit être un nom unique dans votre application.
- ClassName (obligatoire) doit être FileSystemWatcherProvider.
- N'utilisez pas la propriété AssemblyName. Notification Services recherche dans l'assembly Microsoft.SqlServer.NotificationServices.dll les informations sur les fournisseurs d'événements standard.
- SystemName (obligatoire) est généralement le nom de l'ordinateur exécutant ce fournisseur d'événements hébergé. Pour plus d'informations, consultez Définition de fournisseurs d'événements hébergés.
- Ne définissez pas de valeur de délai. Le fournisseur d'événements de l'observateur du système de fichiers a sa propre logique de délai d'attente et de nouvelles tentatives.
- Ne définissez pas de planification. Le fournisseur d'événements de l'observateur du système de fichiers est un fournisseur d'événements continu et ne prend pas en charge de planification.
Arguments
Le fournisseur d'événements de l'observateur du système de fichiers prend sept arguments nommés qui sont utilisés comme paramètres d'initialisation. Vous pouvez les spécifier dans n'importe quel ordre :
- WatchDirectory (obligatoire) spécifie comme valeur le chemin d'accès et le nom complets du répertoire que le fournisseur d'événements surveille. Les conventions d'attribution de noms standard ou UNC (Universal Naming Convention) peuvent être utilisées.
- EventClassName (obligatoire) spécifie le nom de la classe d'événements pour laquelle ce fournisseur d'événements envoie les événements.
- SchemaFile(obligatoire) spécifie le chemin complet d'accès à un fichier contenant le schéma XML annoté Transact-SQL utilisé pour transformer les données de fichier XML en format d'événement approprié. Pour plus d'informations, consultez Validation des fichiers.
Remarque : Le schéma XML annoté Transact-SQL fourni dans l'argument SchemaFile doit traiter tous les champs définis dans la classe d'événements. Si un champ d'événement est absent du fichier de schéma, le fournisseur d'événements de l'observateur du système de fichiers échoue avec l'erreur « 80004005 : L' instruction a été terminée » et un fichier .err est créé dans le répertoire espion. - RetryAttempts (facultatif) spécifie le nombre de tentatives d'accès à un fichier verrouillé avant de supprimer le fichier de la file d'attente. Cette valeur est un entier égal à 10 par défaut. Pour plus d'informations, consultez Logique du choix de fichier et des nouvelles tentatives.
- RetryQueueOccupancy (facultatif) précise le nombre de fichiers qui peuvent être simultanément dans la file d'attente de nouvelles tentatives. Cette valeur est un entier égal à 1024 par défaut.
- RetryPeriod (facultatif) spécifie la fréquence à laquelle le fournisseur d'événements doit traiter la file d'attente. La valeur est en millisecondes et spécifie la période entre la fin d'un thread et le début d'un nouveau Cette valeur est un entier égal à 10 000 millisecondes par défaut, soit 10 secondes. Une valeur 0 se traduit par une seule nouvelle tentative lorsque le fournisseur démarre.
- RetryWorkload (facultatif) spécifie le nombre maximal de fichiers de la file d'attente qui peuvent être traités pendant une seule période de nouvelle tentative. Cette valeur est un entier égal à 1024 par défaut.
Pour plus d'informations sur la définition d'un fournisseur d'événements hébergé, consultez Définition de fournisseurs d'événements hébergés.
Exemple : Définition du fournisseur d'événements de l'observateur du système de fichiers
L'exemple suivant montre comment définir un fournisseur d'événements de l'observateur du système de fichiers nommé StockWatcher dans un fichier de définition d'application (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>
Voir aussi
Concepts
Logique du choix de fichier et des nouvelles tentatives
Validation des fichiers
Autres ressources
Fournisseur d'événements de l'observateur du système de fichiers
Définition des fournisseurs d'événements
Fournisseurs d'événements standard