پیشتر اینجا مطلبی در مورد مدیریت رخدادها به صورت دستی نوشته بودم. در این پست قصد دارم به نحوه ثبت رخدادها به صورت خودکار در هنگام اجرای کامپننتها بپردازم. در واقع در این روش نیازی نیست که جدول جداگانهای داشته باشیم و یا پارمتری تنظیم کنیم، فقط کافیست یکسری تنظیمات اولیه انجام دهیم و همه چیز را به خود SSIS بسپاریم.
برای اینکار مراحل زیر را انجام دهید.
1- پس از آنکه پکیج مورد نظر را ایجاد کردید از نوار ابزار ابتدا SSIS و سپس Loging را انتخاب کنید.
2- مطابق شکل زیر تنظیمات مربوط به Log را انجام دهید.
از پنل سمت چپ میتوانید تمام پکیج و یا یک کامپننت خاص را انتخاب کنید. در صورتی که پکیج انتخاب شده باشد، رویدادی که در مرحله بعد انتخاب خواهید کرد از تمام کامپننتهای پکیج Log میگیرد.
در قسمت Providers and Logs نوع Provider خود را انتخاب کنید. از آنجایی که ما قصد داریم Log را در SQL و به صورت جدولی داشته باشیم از SSIS log provider for SQL Server استفاده میکنیم.
در Configuration محل ذخیره Log را انتخاب کنید.
از قسمت Details میتوانید تنظیمات مربوط به Log و نحوه آن را مشخص کنید.
3- بر روی Ok کلیک کرده و پکیج را اجرا کنید.
از دستور زیر برای مشاهده Log استفاده کنید.
SELECT * FROM dbo.sysssislog