Creazione di un provider di log personalizzato
L'ambiente di runtime di Integration Services include funzionalità estese di registrazione. Un log consente di acquisire gli eventi che si verificano durante l'esecuzione di pacchetti. Integration Services include una varietà di provider di log che permettono di creare e archiviare log in più formati, ad esempio XML, testo, database o nel registro eventi di Windows. Se uno di questi provider o formati di output non soddisfano specifiche esigenze, è possibile creare un provider di log personalizzato.
I passaggi per la creazione di un provider di log personalizzato sono simili a quelli richiesti per la creazione di qualsiasi altro oggetto personalizzato per Integration Services:
Creare una nuova classe che eredita dalla classe di base. Per un provider di log, la classe di base è LogProviderBase.
Applicare alla classe l'attributo che identifica il tipo di oggetto. Per un provider di log, l'attributo è DtsLogProviderAttribute.
Eseguire l'override dell'implementazione dei metodi e delle proprietà della classe di base. Per un provider di log, questi includono la proprietà ConfigString e i metodi OpenLog, Log e CloseLog.
Le interfacce utente personalizzate per i provider di log personalizzati non sono implementate in SQL Server Integration Services.
Per esempi reali di provider di log personalizzati, vedere gli esempi di Integration Services su Codeplex.
Introduzione ai provider di log personalizzati
Creazione di progetti e classi
Poiché tutti i provider di log gestiti derivano dalla classe di base LogProviderBase, il primo passaggio da completare quando si crea un provider di log personalizzato consiste nel creare un progetto di libreria di classi nel linguaggio di programmazione gestito preferito e creare una classe che eredita dalla classe di base. In questa classe derivata si eseguirà l'override dei metodi e delle proprietà della classe di base per implementare la funzionalità personalizzata.
Configurare il progetto per firmare l'assembly che verrà generato utilizzando un file di chiave con nome sicuro.
Nota
Molti provider di log di Integration Services dispongono di un'interfaccia utente personalizzata che implementa IDtsLogProviderUI e sostituisce la casella di testo Configurazione nella finestra di dialogo Configura log SSIS con un elenco a discesa filtrato di gestioni connessioni disponibili. Tuttavia, le interfacce utente personalizzate per i provider di log personalizzati non sono implementate in Integration Services.
Applicazione dell'attributo DtsLogProvider
Applicare l'attributo DtsLogProviderAttribute alla classe creata per identificarla come provider di log. Questo attributo fornisce informazioni in fase di progettazione, ad esempio il nome e la descrizione del provider di log. Le proprietà DisplayName e Description dell'attributo corrispondono alle colonne Nome e Descrizione visualizzate nell'editor Configura log SSIS, visualizzato durante la configurazione della registrazione per un pacchetto in Business Intelligence Development Studio.
Importante |
---|
La proprietà LogProviderType dell'attributo non viene utilizzata. È tuttavia necessario immettere un valore per tale proprietà, altrimenti il provider di log personalizzato non verrà visualizzato nell'elenco di provider di log disponibili. |
Nota
Poiché le interfacce utente personalizzate per i provider di log personalizzati non vengono implementate in Integration Services, l'impostazione di un valore per la proprietà UITypeName di DtsLogProviderAttribute non ha alcun effetto.
<DtsLogProvider(DisplayName:="MyLogProvider", Description:="A simple log provider.", LogProviderType:="Custom")> _
Public Class MyLogProvider
Inherits LogProviderBase
' TODO: Override the base class methods.
End Class
[DtsLogProvider(DisplayName="MyLogProvider", Description="A simple log provider.", LogProviderType="Custom")]
public class MyLogProvider : LogProviderBase
{
// TODO: Override the base class methods.
}
Compilazione, distribuzione e debug di un provider di log personalizzato
I passaggi per la compilazione, la distribuzione e il debug di un provider di log personalizzato in Integration Services sono molto simili a quelli richiesti per altri tipi di oggetti personalizzati. Per ulteriori informazioni, vedere Compilazione, distribuzione e debug di oggetti personalizzati.
|
Vedere anche