Как вставить строки одну за другой с помощью буфера вывода компонента Script

У меня есть компонент Script в SSIS 2012, который берет данные из WebService(json), десериализовать его и вставить в таблицу.

Это работает правильно, но иногда веб-сервис не работает, и я получаю ошибку 500. Поэтому я хотел записать эти ошибки в LogTable используя другой OutputBuffer,

Итак, я придумал это:

for (int attempts = 0; attempts < 10; attempts++)
{
    try
        response = wr.GetResponse();
        break;
        // success = true;
    }
    catch (WebException ex)
    {
        //success = false;
        Output2Buffer.AddRow();
        Output2Buffer.Message = "Error 500, Waiting 30s and retrying";
        System.Threading.Thread.Sleep(30000);
    }
}

Проблема в том, что объем данных, которые я получаю с веб-сервиса, огромен, и иногда требуются часы, чтобы получить эти миллионы записей, и если я веду такую ​​запись, она не вставит Message в таблицу журнала немедленно, когда возникает ошибка, но только тогда, когда буфер заполнится до 10000 строк / 10 МБ.

Как заставить OutputBuffer проходить ряды один за другим. Не дожидаясь заполнения буфера.

0 ответов

Другие вопросы по тегам