Компонент поиска служб SSIS - определить ошибочные строки / отправить на трассировку? - PullRequest
4 голосов
/ 09 декабря 2010

Среда: SQL Server 2008 R2 с службами SSIS и SSAS.

Краткий вопрос: Есть ли способ заставить SSIS отправить строку данных из неудачного поиска в событие трассировки?

Длинный вопрос: Я собираю несколько пакетов служб SSIS, которые выполняют ряд преобразований данных из таблиц, содержащих до нескольких миллионов строк. Конечным пунктом назначения является куб SSAS. Все поиски должны прекратиться - сбой указывает, что проблема качества данных просочилась, поэтому сбой всего ETL при неудачном поиске является правильным.

Однако, похоже, нет простого способа заставить компонент SSIS Lookup сообщать о том, какая строка завершилась ошибкой, когда он записывает в журнал трассировки «Строка не соответствует ни одному при поиске». Я смотрю, есть ли что-нибудь, что я могу сделать, чтобы на самом деле перехватить ошибочную строку и одновременно записать данные строки в трассировку.

В данный момент мне приходится прибегать к подаче несоответствующих строк в CSV-файл для анализа, но это означает, что прием затем продолжает обработку, что мне не нужно. Кроме того, подключение файла ко всем компонентам поиска означает управление большим количеством дополнительных файлов (которые также требуют настройки связанных с ними диспетчеров соединений). Теоретически я мог бы управлять одним файлом, если бы подал все выходные данные в преобразование Union, но когда я имею дело с пакетами, имеющими до 10-15 преобразований Lookup, это очень быстро запутывается.

Мне интересно, можно ли каким-либо образом подключиться к событию OnError, чтобы получить эти данные, но если оно есть, это неочевидно.

Любые другие идеи приветствуются. Я не могу поверить, что я единственный, кто задается вопросом, как это сделать, но мои stackoverflow-fu и google-fu оставили меня, и я не могу (как ни странно) найти что-нибудь по этому вопросу ...

Ура!

1 Ответ

0 голосов
/ 15 декабря 2010

Не могли бы вы перенаправить эти строки в таблицу и поместить туда столбец «пакет с исходным кодом», чтобы упростить их запрос или сделать отчеты об исправлениях?

Кроме того, просто идея, но, возможно, вы могли бы перенаправить весь выводна «вывод мусора» на этой странице .Затем вы можете продолжить регистрировать ошибки поиска, не перемещая данные в таблицу назначения.

...