السبت، 22 نوفمبر 2014

سلسلة الاتمتة في ارض الشيربوينت (1) : القهوة الصباحية !



السلام عليكم
عنوان غريب شوي  :) 
المهم , نحن نعلم ان الروتين يعتبر من اكثر ما يزعج محترفي التقنية فالروتين و المهام المتكررة يوميا المتواصل لسنوات قد يقتل فينا الابداع و التفكير المتجدد. بالاضافة الى ان المهام المكررة تعتبر مكلفة للمؤسسات من حيث ساعات العمل.
لذلك نصيحتي لا تستسلم للروتين اليومي وحاول ان تصنع سكربتات تقوم بالاعمال الروتينية بدلا منك :) يعني بالعربي مثل الروبوت.
كمثال عن ذلك : ياتي محترف الشيربوينت الصباح ليبدأ مهامه بفحص سلجات الاحداث الخاصة بالشيربوينت : Event Logs For SharePoint. بالتالي فان المرور على كل تلك الاحداث و قراءة الجديدة منها يعتبر مهمة شاقة ... فما الحل ؟

الحل الذي يتمناه كل SharePoint Admin   هو يشرب قهوة ساخنة في حين يقوم النظام بعرض الاخطاء الجديدة فقط. 
لعمل هذا الامر نحتاج فقط تشغيل السكريبت التالي :


$date= (get-date).adddays(-1)
$errors= get-eventlog application -after $date -entrytype "Error" | ?{$_.source -match "SharePoint"}
$EGroup = $error | group InstanceID
$Code = $Egroup[0].name
$MSG = Get-Eventlog Application -InstanceID $code -Newest 1
write-host "There are Currently $($errors.count) SharePoint errors in the last 24 hrs"
write-host "Of witch the majority are error code:  $code and there have been $($Egroup[0].count) of these."
write-host "The error message is as follow $($msg.Message)"

كنتيجة لذلك سترى ان النظام سيعرض على شاشتك :
- عدد الاخطاء التي حدثت خلال الـ 24 ساعة الماضية 
- اكثر خطأ متكرر و الكود الخاص به
- رسالة الخطأ المتكرر


بل اكثر من ذلك بامكانك جعلك النظام يتكلم و يسمعك صوته بدلا من الكتابة على الشاشة , لن اكتب لك الكود هنا للتشويق لكن ساخبرك بالمكتبة الصوتية التي تستخدمها : SAPI.spVoice

اترك لكم التجربة ....

الثلاثاء، 4 نوفمبر 2014

سلسلة النسخ الاحتياطي و الاسترجاع : تصدير حزم الحلول WSP

بهذا السكربت السهل بامكانك تصدير جميع ما في المزرعة من حلول -SharePoint Solution Package - WSP تم رفعها على تطبيقات الويب لديك.
لانه لابد من اخذ نسخ احتياطية منها ضمن خطة النسخ الاحتياطي لاي مزرعة شيبروينت , طبعا يفضل ان يتم تنفيذ السكربت ضمن مهمة ويندوز مجدولة بحيث يتم ذلك اليا وفق الجدول الزمني الذي تحتاجه: كل يوم , كل اسبوع , كل شهر , او كل سنة اذا كان لا يهم ضياع عمل السنة السابقة :)

Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue 
Get-SpSolution | forEach-Object {
$_.SolutionFile.SaveAs("c:\wspbackup\$($_.Name)")
}

لا تنس ان تختار مسار الحفظ المناسب لك...