در برخی موارد ممکن است فرآیندها یا به طور کلی سیستمهایی که کاملا صحیح کار میکردند، به طور ناگهانی از کار افتاده و با پیغام اخطار مواجه شوند. معمولا خطایابی در شیرپوینت به دلیل گستردگی پارامترهای دخیل از جمله فارسیساز شیرپوینت، کمی زمانبر است. در همین راستا در این مطلب قصد داریم با برخی از روشهای خطایابی فرآیندهای نینتکس آشنا شویم.
در زمان پیادهسازی گردش کاری فرآیند مناقصه یک شرکت به کمک نینتکس بر روی شیرپوینت ۲۰۱۳، ناگهان متوجه شدیم که این گردش کاری عملکرد مناسبی ندارد و به درستی کار نمیکند. قسمتی از فرآیند به صورت زیر است:
در صفحه مشخصات گردش کاری، خطای “گردش کاری نتوانست شروع شود” را نشان میداد. به طوری که تسک اول را ایجاد میکرد، اما بعد از آن خطا میداد. در این شرایط سختترین مرحله، خطایابی است زیرا دقیقا نمیدانیم مشکل از تسک است یا از اکشنهای بعدی جریان کاری.
یکی از سریعترین راهها برای اینکه متوجه شویم کدام اکشن در گردش کاری، کار نمیکند، استفاده از لاگ (Log) است. یک لاگ قبل از اکشن تسک و یک لاگ بعد از اکشن تسک قرار میدهیم تا مشخص شود فرآیند تا چه مرحلهای پیش میرود.
بدین ترتیب مطمئن شدیم که گردش کاری مربوط به تسک مشکل دارد.
اکشن مربوط به تسک را پاک کرده و دوباره با یک اکشن جدید جایگزین کردیم (ممکن است با این کار مشکل رفع شود) ولی همچنان فرآیند به درستی کار نمیکرد. سپس با کمی جستجو متوجه شدیم که نینتکس دارای قابلیتی تحت عنوان Verbose Log است که در ابتدا باید از طریق Central Administrator و بعد از طریق صفحه تنظیمات هر ورک فلو تنظیم شود. پس از تنظیم در صفحه “View Workflow History” یک قسمت مربوط به Verbose Log فعال میشود که در یک پنجره جدید جزییات بیشتری در اختیار ما قرار میدهد.
راه دیگر برای خطایابی استفاده از ULS Log است که تقریبا هر خطایی در آن جا هم لاگ گرفته میشود. ولی دسترسی و خوانایی آن چندان ساده و راحت نیست.
مشکل فرایند مناقصه با همان قابلیت verbose Log نینتکس به طور موقت حل شد. اما بعد از مشاهده جزییات متوجه شدیم که مشکل از فارسیساز است و در هنگام ایجاد تسک با تاریخ سال ۹۹۹۹ ذخیره میشود، که باعث میشد نتیجه تسک به Cancelled تغییر پیدا کند و گردش کاری در هنگام شروع خطا بدهد. در اینجا به دلیل حفظ حقوق شرکتهایی که خدمات بومیسازی شیر پوینت را تولید میکنند به همین اطلاعات بسنده میکنیم. اما تصمیم گرفتیم که نحوه دیباگ ورکفلویهای نینتکسی را خدمتتان شرح دهیم.
با استفاده از لاگها میتوانیم بین اکشنها لاگ قرار دهیم تا متوجه شویم که کدام اکشن دچار مشکل شده است. یا به طور مثال خروجی اکشنها را که در متغیرها ذخیر میشود به صورت لاگ در نظر بگیریم و ببینم گردش کاری به درستی کار میکند یا خیر. استفاده از لاگ یکی از موثرترین روشهای خطایابی است.
علاوه بر این، امکان مشاهده وضعیت گردشهای کاری نینتکس از طریق صفحه گردش کار شیرپوینت وجود دارد. به این منظور، از طریق منوی لیست آیتم شیرپوینت با انتخاب گزینه view workflow history وارد صفحه مشاهده وضعیت گردش کاری نیتکس خواهید شد.
در این صفحه به صورت گرافیکی وضعیت گردش کاری نمایش داده میشود. علاوه بر این امکان دسترسی به جزییات متنی گردش کاری هم از این صفحه وجود دارد. در این صفحه با نگه داشتن نشانگر ماوس بر روی آیکون، اطلاعات دقیقتری در مورد هر اکشن مشاهده میشود.
برای فعال کردن این قابلیت به Central Administrator شیرپوینت رفته و از منو وارد تنظیمات مربوط به نینتکس شوید. در صفحه مربوط به نینتکس یک لینک به نام Global Settings وجود دارد که از طریق این صفحه امکان Verbose Log برای نیتکس فعال میشود.
در تصاویر بالا مشاهده میکنید که چگونه در Central Administrator این قابلیت را فعال کردیم. برای اعمال آن در سایتها باید یکبار IISRESET بدهیم تا در سایتهای شیرپوینتی اعمال شود. اما همچنان برای استفاده، مانند تصویر زیر باید از قسمت workflow setting ورک فلوی نینتکسی گزینه Enable verbose log را فعال کنیم. (تا زمانی که IISRESET ندهیم گزینه Enable Verbose Log در صفحه تنظیمات ورکفلو نینتکس ظاهر نمیشود.)
بعد از فعال کردن، اگر ورک فلوهای جدیدی اجرا شوند از صفحه workflow history مخصوص نینتکس، میتوان به Xml جزییات لاگ دسترسی پیدا کرد.
برای مشاهده فایلهای لاگ ULS باید به مسیر زیر بروید.
%ProgramFiles%\Common Files\Microsoft Shared\Web Server Extensions\<VERSION>\LOGS
در اینجا فایلهایی با نام سرور در تاریخهای متفاوت وجود دارد. آخرین فایل را باز کرده و محتویات درون آن را برای راحتی جستجو در اکسل کپی کنید. از طریق اکسل با اعمال فیلتر بر روی ستون area میتوانید به لاگ های مربوط به نینتکس دست پیدا کنید.
در Event viewer خطاهای مربوط به اجرای گردش کاری ثبت نمیشود. اما خطاهای مربوط به نرم افزار پایه در اینجا قابل دسترسی است. چک کردن این بخش در هنگام ایجاد خطا ممکن است به خطایابی و رفع آن کمک کند. برای باز کردن Event Viewer دستور زیر را در پنجره run وارد کنید:
eventvwr.msc
در این مطلب به بررسی نحوه رفع اشکال و خطایابی گردش کاری نینتکس در مایکروسافت شیرپوینت پرداختیم. گروه ساقه در زمینه شیرپوینت به سازمانها و شرکتها، خدمات و محصولات متنوعی ارائه میکند. برای دریافت اطلاعات بیشتر میتوانید همین حالا با ما تماس بگیرید.
1 دیدگاه
با تشکر از اطلاعات که قرار دادید