Udostępnij za pośrednictwem


Rejestrowanie i definiowanie wpisy dziennika w składnik przepływu danych

Składniki przepływ danych niestandardowych można ogłaszać wiadomości istniejącego wpisu dziennika za pomocą PostLogMessage(String, String, String, DateTime, DateTime, Int32, array<Byte[]%) Metoda IDTSComponentMetaData100 interfejs. Można również stanowią one informacje do użytkownika za pomocą FireInformation(Int32, String, String, String, Int32, Boolean%) Metoda lub podobnej metody IDTSComponentMetaData100 interfejs. Jednak ta metoda wiąże obciążenie podnoszenia i obsługi zdarzeń dodatkowe i wymusza na użytkowniku przesiewie za pośrednictwem pełne komunikaty informacyjne dla wiadomości, które mogą być przydatne do nich.Można użyć wpisu dziennika niestandardowego zgodnie z poniższym opisem, do zapewnienia użytkownikom składnika wyraźnie oznaczony niestandardowe informacje dziennika.

Rejestrowanie i używanie wpisu dziennika niestandardowego

Rejestrowanie wpisów dziennika niestandardowego

Aby zarejestrować wpis dziennika niestandardowych do użytku przez składnik, należy zastąpić RegisterLogEntries() Metoda PipelineComponent Klasa podstawowa. W poniższym przykładzie rejestruje wpisów dziennika niestandardowego i zawiera nazwę i opis.

using Microsoft.SqlServer.Dts.Runtime;
...
private const string MyLogEntryName = "My Custom Component Log Entry";
private const string MyLogEntryDescription = "Log entry from My Custom Component ";
...
    public override void RegisterLogEntries()
    {
      this.LogEntryInfos.Add(MyLogEntryName,
        MyLogEntryDescription,
        Microsoft.SqlServer.Dts.Runtime.Wrapper.DTSLogEntryFrequency.DTSLEF_CONSISTENT);
    }
Imports Microsoft.SqlServer.Dts.Runtime
...
Private Const MyLogEntryName As String = "My Custom Component Log Entry" 
Private Const MyLogEntryDescription As String = "Log entry from My Custom Component "
...
Public  Overrides Sub RegisterLogEntries() 
  Me.LogEntryInfos.Add(MyLogEntryName, _
    MyLogEntryDescription, _
    Microsoft.SqlServer.Dts.Runtime.Wrapper.DTSLogEntryFrequency.DTSLEF_CONSISTENT) 
End Sub

The DTSLogEntryFrequency enumeration provides a hint to the runtime about how frequently the zdarzenie will be logged:

  • DTSLEF_OCCASIONAL(): Zdarzenie jest rejestrowane tylko czasem nie podczas wykonywania każdej.

  • DTSLEF_CONSISTENT(): Zdarzenie jest rejestrowane stała liczbę razy w każdym wykonaniu.

  • DTSLEF_PROPORTIONAL(): Zdarzenie jest rejestrowane wielokrotnie proporcjonalny do ilości pracy wykonanej.

W powyższym przykładzie użyto DTSLEF_CONSISTENT() ponieważ składnik oczekuje się wpis raz na wykonanie.

Po rejestracji wpisu dziennika niestandardowych i Dodawanie wystąpienie składnika niestandardowego do powierzchni projektanta przepływów danych Rejestrowanie w Projektancie wyświetlone okno dialogowe Nowy wpis dziennika o nazwie "Moje niestandardowe składników wpis dziennika" na liście wpisów dziennika dostępny.

Logowanie do wpisów dziennika niestandardowego

Po zarejestrowaniu wpisu dziennika niestandardowego składnika może teraz rejestrować komunikaty niestandardowe.Poniższy przykład zapisuje wpisów dziennika niestandardowego ciągu PreExecute() Metoda, która zawiera tekst instrukcja języka SQL, używane przez składnik.

    public override void PreExecute()
    {
      DateTime now = DateTime.Now;
      byte[] additionalData = null;
      this.ComponentMetaData.PostLogMessage(MyLogEntryName,
        this.ComponentMetaData.Name,
        "Command Sent was: " + myCommand.CommandText,
        now, now, 0, ref additionalData);
    }
Public  Overrides Sub PreExecute() 
  Dim now As DateTime = DateTime.Now 
  Dim additionalData As Byte() = Nothing 
  Me.ComponentMetaData.PostLogMessage(MyLogEntryName, _
    Me.ComponentMetaData.Name, _
    "Command Sent was: " + myCommand.CommandText, _
    now, now, 0, additionalData) 
End Sub

Teraz gdy użytkownik wykonuje pakiet, po wybraniu polecenia "" Moje niestandardowe składników wpis dziennika"w Rejestrowanie-okno dialogowe, że dziennik będzie zawierać wpis wyraźnie oznaczony jako "User::My niestandardowy składnik wpis dziennika. „ Ten nowy wpis dziennika zawiera tekst instrukcja języka SQL, sygnaturę czasową oraz wszelkie dodatkowe dane rejestrowane przez projektanta.

Integration Services icon (small) Konfiguracja w aktualizacji z usług integracja Services pobytu

Najnowsze pliki do pobrania, artykuły, próbki, i pliki wideo firmy Microsoft, jak również wybranego rozwiązania od Wspólnoty, odwiedź witrynę Integration Services strona w witrynie MSDN lub TechNet:

Automatycznego powiadomienie tych aktualizacji należy subskrybować źródła danych RSS, które jest dostępne strona.