Я завжди пишу повідомлення в таблицю "EventLog". Обробляючи велику кількість даних, я керую цими даними, а після кожного запису записую оновлення статусу в EventLog.
Коли я хочу перевірити хід тривалого процесу, я просто запитую таблицю EventLog.
Приклад виходу:
-------------------
- Моє велике оновлення -
-------------------
Розпочато: 2011-05-03 10:00:00
Записи для обробки: 1 000 000
Шматки: 200
--- шматок 1 ---
Спроба оновити MyTable
Оновлено записи: 5000
Залишки записів: 995 000
Пропускна здатність: 4210 записів в секунду
--- шматок 2--
Спроба оновити MyTable
Оновлено записи: 5000
Залишки записів: 990 000
Пропускна здатність: 3555 записів в секунду
--- шматок 3--
тощо.
Також у таблиці EventLog є стовпці, щоб відстежувати, коли було написано повідомлення, який процес написав повідомлення тощо. Вибачте, що не включив цю інформацію у свій приклад.