לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > מערכות הפעלה
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 18-07-2012, 10:33
צלמית המשתמש של קוביבי
  משתמש זכר קוביבי מנהל קוביבי אינו מחובר  
מנהל פורום מערכות הפעלה - הרובע המייקרוסופטי.
 
חבר מתאריך: 07.10.04
הודעות: 13,777
LinkedIn profile
ונמשיך - חיפוש ב event log

סקריפט מקוצר כי הוא נועד למטרה מאוד ספציפית, אולי כשארחיב אותו אפרסם כאן.
עלה לי חשש שמישהו איפס לי את סיסמת המשתמש והסתקרנתי לדעת מי זה.
איפוס סיסמה מעלה event מספר 627 בשרת הDC שביצוע את השינוי (שינוי סיסמה - 628)
אז כתבתי את הסקריפט הבא אשר מקבל שם מחשב, מספר, ימים ושם לוג ומוציא את הevents המתאימים:
קוד:
function event-seek { Param([string]$srv,[int]$EID,[int]$days=1,[string]$log="EverySingleLogAvailable") $avail = port-ping -srv $srv -port 135 -timeout 100 if ($avail -eq $false) {write-output "$srv not available"; return $false} if ($log -match "EverySingleLogAvailable") { $list = $(Get-EventLog -list -computername $srv) | % {write-output $_.Log} } else { $list = $log } $days = -$days $eventdate = (get-date).AddDays($days) $list | % {Get-EventLog -computername $srv -log $_ -after $eventdate | where {$_.EventID -eq $EID} | fl *} }


איך? שאלה טובה
קודם כל: מכיוון שקריאה של event log מרחוק משתמש בWMI (שדורש RPC - הדרך של חלונות להתחבר ממחשב אחד לשני) צריך לוודא כי פורט 135 פתוח, אם לא - אין סיבה להמשיך
קוד:
$avail = port-ping -srv $srv -port 135 -timeout 100 if ($avail -eq $false) {write-output "$srv not available"; return $false}


אח"כ נקבל לתוך המשתנה list את הרשימה של כל הלוגים מהמחשב אותם אנו רוצים לקרוא (כברירת מחדל - כולם, אחרת רק מה שקיבלנו בפרמטר)
קוד:
if ($log -match "EverySingleLogAvailable") { $list = $(Get-EventLog -list -computername $srv) | % {write-output $_.Log} } else { $list = $log }


נכין משתנה תאריך שנכון למספר הימים אחורה המבוקשים:
קוד:
$days = -$days $eventdate = (get-date).AddDays($days)


ולסיום: בעבור כל אחד(%) מהלוגים (list$) נפעיל את get-eventlog ללוגים שנוצרו אחרי התאריך המבוקש (eventdate$)
נציג רק events שהID שלהם מתאים לערך שביקשנו (where) ונציג את הevent במלואו (* fl)
קוד:
$list | % {Get-EventLog -computername $srv -log $_ -after $eventdate | where {$_.EventID -eq $EID} | fl *}


אני מקווה שהשורה האחרונה הייתה מוסברת היטב, כפי שאמרתי - שימוש מאוד ספציפי, בכול יום אחר הייתי כותב את זה קצת יותר מובן

דוגמה להרצה:
קוד:
> event-seek kobebe-pc 1704 1 application EventID : 1704 MachineName : Kobbebe-PC.coolest.domain Data : {} Index : 16195 Category : (0) CategoryNumber : 0 EntryType : Information Message : Security policy in the Group policy objects has been appli ed successfully. Source : SceCli ReplacementStrings : {} InstanceId : 1073743528 TimeGenerated : 7/18/2012 8:33:32 AM TimeWritten : 7/18/2012 8:33:32 AM UserName : Site : Container :
_____________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 05:30

הדף נוצר ב 0.06 שניות עם 11 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר