Eu vi esta pergunta SSIS 2012 - Como consultar pacotes atualmente em execução no T-SQL?
Ele me dá o seguinte script:
SELECT
E.execution_id
, E.folder_name
, E.project_name
, E.package_name
, E.reference_id
, E.reference_type
, E.environment_folder_name
, E.environment_name
, E.project_lsn
, E.executed_as_sid
, E.executed_as_name
, E.use32bitruntime
, E.operation_type
, E.created_time
, E.object_type
, E.object_id
, E.status
, E.start_time
, E.end_time
, E.caller_sid
, E.caller_name
, E.process_id
, E.stopped_by_sid
, E.stopped_by_name
, E.dump_id
, E.server_name
, E.machine_name
, E.total_physical_memory_kb
, E.available_physical_memory_kb
, E.total_page_file_kb
, E.available_page_file_kb
, E.cpu_count
, F.folder_id
, F.name
, F.description
, F.created_by_sid
, F.created_by_name
, F.created_time
, P.project_id
, P.folder_id
, P.name
, P.description
, P.project_format_version
, P.deployed_by_sid
, P.deployed_by_name
, P.last_deployed_time
, P.created_time
, P.object_version_lsn
, P.validation_status
, P.last_validation_time
, PKG.package_id
, PKG.name
, PKG.package_guid
, PKG.description
, PKG.package_format_version
, PKG.version_major
, PKG.version_minor
, PKG.version_build
, PKG.version_comments
, PKG.version_guid
, PKG.project_id
, PKG.entry_point
, PKG.validation_status
, PKG.last_validation_time
FROM
SSISDB.catalog.executions AS E
INNER JOIN
ssisdb.catalog.folders AS F ON F.name = E.folder_name
INNER JOIN
SSISDB.catalog.projects AS P ON P.folder_id = F.folder_id
AND P.name = E.project_name
INNER JOIN
SSISDB.catalog.packages AS PKG ON PKG.project_id = P.project_id
AND PKG.name = E.package_name;
Mas não responde à minha busca. Estou investigando as razões pelas quais os pacotes falham e preciso obter as mensagens de erro.
Onde posso encontrá-lo?
Eu gostaria de usar o T-SQL para consultar a mensagem de erro.
Eu também tenho este script abaixo, que me aproxima, mas não exatamente:
SELECT
q.*
FROM
(SELECT em.*
FROM SSISDB.catalog.event_messages em
WHERE em.operation_id = (SELECT MAX(execution_id)
FROM SSISDB.catalog.executions)
AND event_name NOT LIKE '%Validate%') q
/* Put in whatever WHERE predicates you might like*/
--WHERE event_name = 'OnError'
WHERE package_name = 'InfoGroup Feed.dtsx'
--WHERE execution_path LIKE '%<some executable>%'
ORDER BY message_time DESC
Este é o e-mail que eu gostaria de abordar, como eles chegaram a essa mensagem de erro:
Qualquer informação sobre como solucionar erros do SSIS é bem-vinda.
Eu tenho um punhado de consultas que eu uso. Os conceitos gerais são que a tabela com as informações é
catalog.operation_messages
e você está interessado em eventos do tipo 120 (erro).Dependendo da robustez de uma consulta que você deseja criar, as duas tabelas derivadas a seguir também podem ser de interesse.
Eu uso consultas como esta para encontrar informações sobre os erros. Talvez eu só me importe com quais foram os erros (consulta 1). Outras vezes, quero saber todas as atividades de todas as operações que falharam (consulta 2). Geralmente, sou preguiçoso e quero ver todas as informações sobre a última operação com falha (consultar 3 e observar a ressalva).
Talvez eu seja preguiçoso e não queira procurar essas informações no caso de uma falha, tanto quanto sua equipe parece ter feito. Eu tenho um trabalho do SQL Agent que é executado sob demanda e tenho trabalhos que executam pacotes SSIS definidos para executar esse trabalho em caso de falha.
Ajuste como quiser
Você pode usar:
Isso fornecerá apenas as mensagens de erro das execuções do pacote SSIS.
Aqui está uma consulta que criei para encontrar a mensagem de erro do trabalho do SSISDB:
Para a explicação detalhada, por favor: como consultar o SSISDB para descobrir os erros nos pacotes?
Se você realmente deseja saber por que está falhando, aqui estão algumas coisas para verificar com o pacote e como solucionar problemas para garantir que não seja um problema de conexão ou autenticação.
Observe o
script task
que aparece logo antes doFTP task
e altere as propriedades da conexão FTP. Isso deve incluir oFTP server URL (or IP address)
, oTCP port number
servidor FTP escuta, ousername
, epassword
.Certifique-se de que todos os atributos de FTP nestas propriedades de string de conexão estejam configurados corretamente e teste a partir da linha de comando ou de uma ferramenta de cliente FTP para garantir que tudo o que você tenha valor ali também permita a conexão por meio desse método para garantir que não seja uma senha ou um problema de valor incorreto do que você está se conectando.