Como interpretar os dados que estão conectados usando um provedor de log do SQL Server 2005 Integration Services

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 906563
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
INTRODUÇÃO
Microsoft SQL Server 2005 Integration Services (SSIS) usa o pacote de execução de tarefas para oferecer suporte a uma relação de pacote pai-filho. A tarefa Execute Package é um dos objetos de um projeto do SSIS fluxo de controle disponíveis. Você pode usar a tarefa Execute Package para chamar outro pacote como parte de um fluxo de trabalho. Um pacote do SSIS pode usar um provedor de log do SSIS para registrar informações de evento. Quando um pacote pai é executado, os dados de log do SSIS são registrados de dois provedores de log do SSIS, o pacote filho e o pacote pai. Este artigo descreve como interpretar os dados que estão conectados usando um provedor de log do SQL Server 2005 Integration Services. O artigo também contém informações para ajudar você a desenvolver consultas que sejam baseiam os dados registrados.
Mais Informações
Observação Neste artigo, um pacote chamado é conhecido como o pacote de "filho". Um pacote de chamada é conhecido como o pacote de "pai".

Quando você executar um pacote pai e o pacote filho foi projetado para fazer as entradas usando um provedor de log do SSIS, as entradas são registradas duas vezes. Na primeira vez, as entradas são registradas no contexto de execução do pacote filho. Na segunda vez, as entradas são registradas no contexto de execução do pacote pai. Para identificar o contexto de execução, examine o campo executionID nos dados de log. (O campo executionID contém um GUID exclusivo.) Entradas de log que estão conectadas por um pacote filho no contexto de execução de um pacote pai contêm um usuário: prefixo no campo de eventos . Por exemplo, se o contexto de execução estiver sob um pacote pai, o campo de evento contém Usuário: OnPreExecute em vez de OnPreExecute .

Exemplo 1: Dois pacotes registrados em um contexto de execução única

O exemplo a seguir mostra um conjunto de entradas de log que foram registrados por um pacote pai e um pacote filho para um provedor de log do SSIS para o SQL Server. Essas entradas foram registradas no contexto de execução do pacote pai.
source                  sourceID                                 event                executionID===========================================================================================================================AdventureWorks_parent   72CF88F8-952D-4D5D-B67F-D52AE1690E0B     PackageStart        161B2818-8BB3-40A6-9C1F-5DC4F7225556AdventureWorks_parent   72CF88F8-952D-4D5D-B67F-D52AE1690E0B     OnPreExecute        161B2818-8BB3-40A6-9C1F-5DC4F7225556AdventureWorks_child    472C4826-4278-4D29-9CBA-6586AC7FE418     User:OnPreExecute   161B2818-8BB3-40A6-9C1F-5DC4F7225556AdventureWorks_child    472C4826-4278-4D29-9CBA-6586AC7FE418     User:OnPostExecute  161B2818-8BB3-40A6-9C1F-5DC4F7225556AdventureWorks_parent   72CF88F8-952D-4D5D-B67F-D52AE1690E0B     OnPostExecute       161B2818-8BB3-40A6-9C1F-5DC4F7225556AdventureWorks_parent   72CF88F8-952D-4D5D-B67F-D52AE1690E0B     PackageEnd          161B2818-8BB3-40A6-9C1F-5DC4F7225556
Este exemplo inclui duas entradas para o evento OnPreExecute e duas entradas para o evento OnPostExecute. As entradas são lançadas pelo pacote filho possuem um usuário: prefixo no campo de eventos . As informações de executionID são a mesma para todas as entradas que pertencem a um contexto de execução específico.

A janela de log de eventos torna mais fácil para ver eventos de log no SQL Server Business Intelligence Development Studio e para identificar o campo executionID e outros campos. Para abrir a janela de log de eventos, clique na guia Fluxo de controle no designer do SSIS e, em seguida, clique em Log eventos no menu de SSIS . Se você usar um provedor de log do SSIS para o SQL Server para registrar em log os eventos, você pode usar a instrução Transact-SQL exemplo a seguir para recuperar informações de log para pacotes de pai e filho. Um provedor de log do SSIS sempre salva dados à tabela sysdtslog90 em um banco de dados do SQL Server. Portanto, executar a consulta em relação a tabela sysdtslog90 no banco de dados SQL Server que você escolheu para provedor de log SSIS.
SELECT  source,sourceID,event,executionIDfrom sysdtslog90 where event in ('onpreexecute','onpostexecute','user:onpreexecute','user:onpostexecute','PackageStart','PackageEnd')and [executionid] like ('161B2818-8BB3-40A6-9C1F-5DC4F7225556%')and source in ('AdventureWorks_parent','AdventureWorks_child')order by starttime
Observação para usar esse exemplo, substituir entradas executionID e fonte que se aplicam aos dados de log específico.

Exemplo 2: Um único pacote registrado em dois contextos de execução

O exemplo a seguir lista entradas de log que foram registradas por um pacote filho em contextos de execução de dois.
source                 sourceID                                  event                executionID===========================================================================================================================AdventureWorks_child   472C4826-4278-4D29-9CBA-6586AC7FE418      User:OnPostExecute   161B2818-8BB3-40A6-9C1F-5DC4F7225556AdventureWorks_child   472C4826-4278-4D29-9CBA-6586AC7FE418      OnPostExecute        8C43E096-63DF-4692-98E4-49E88D271734AdventureWorks_child   472C4826-4278-4D29-9CBA-6586AC7FE418      User:OnPreExecute    161B2818-8BB3-40A6-9C1F-5DC4F7225556AdventureWorks_child   472C4826-4278-4D29-9CBA-6586AC7FE418      OnPreExecute         8C43E096-63DF-4692-98E4-49E88D271734
Este exemplo inclui as entradas de log de pacote dois filhos do primeiro exemplo. As entradas têm as mesmas informações sourceID . No entanto, as entradas são diferenciadas pelo usuário: prefixo no campo de eventos e pelas entradas diferentes executionID . Se você usar um provedor de log do SSIS para o SQL Server para registrar em log os eventos, você pode usar a instrução Transact-SQL exemplo a seguir para recuperar informações de log para pacotes filho.
SELECT  top (4) source,sourceID,event,executionIDfrom sysdtslog90 where event in ('onpreexecute','onpostexecute','user:onpreexecute','user:onpostexecute')and Source in ('AdventureWorks_parent','AdventureWorks_child')and sourceid='472C4826-4278-4D29-9CBA-6586AC7FE418'order by starttime desc
Observação Essa instrução Transact-SQL usa um operador superior . Portanto, a instrução Transact-SQL consulta apenas os dados log recentes da execução de pacote mais recente.
Referências
Para obter mais informações sobre como recuperar e interpretar SSIS de log do provedor de dados, consulte os tópicos a seguir no Microsoft SQL Server 2005 Books Online :
  • "Executar tarefas de pacote"
  • "Provedores de log de serviços de integração"
  • "Implementando o log de pacotes"

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 906563 - Última Revisão: 12/09/2015 03:09:58 - Revisão: 2.2

Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Standard Edition

  • kbnosurvey kbarchive kbmt kbhowto kbsql2005ssis kbinfo KB906563 KbMtpt
Comentários