PowerShell:
רישום פעולות (לוגים)

איך לעשות:

הנה המדריך לפיזור רישום בסיסי בתוך הסקריפטים שלך:

# יצירת הודעת לוג פשוטה
Write-Host "Info: Starting the script process."

# כתיבה לקובץ
"Info: This is a logged message." | Out-File -Append myLog.log

# שימוש בפקודה המובנית לרישום מפורט יותר
Start-Transcript -Path "./detailedLog.log"
Write-Output "Warning: Something isn't quite right."
# ... הסקריפט שלך עושה דברים
Stop-Transcript

# פלט של detailedLog.log
******************************
Windows PowerShell transcript start
Start time: 20230324112347
Username  : PShellGuru@example.com
RunAs User: PShellGuru@example.com
Configuration Name: 
Machine  : PS-DEVBOX (Microsoft Windows NT 10.0.17763.0)
Host Application: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
Process ID: 2024
PS Version: 7.1.2

עכשיו, בלוגים שלך יש תיעוד שלב אחר שלב של מה שהקוד שלך עשה.

צלילה עמוקה:

היסטורית, לוגינג זה כמו תוכנות עצמן. זה כמו יומן ראש המשמרת אבל לתוכנה. בימים הראשונים, זה כנראה היה הדפסות או מכונות טלטייפ; כיום זה כל הקטע של קבצים ומערכות ניהול לוגים יוקרתיות.

כשאתה בחפירות של PowerShell, Write-Host זה מהיר ולא נקיון, אבל זה רק מוציא טקסט לקונסול, לא נהדר לשמירת רישומים. Out-File נותן לך דרך פשוטה להשליך טקסט לקובץ, אבל לשטף האמיתי, תרצה Start-Transcript ו-Stop-Transcript שמרשמים הכל - קלט, פלט, הכול.

אלטרנטיבות? בטח, אם אתה עובד בסביבה ארגונית, ייתכן שתעיף מבט ביומן אירועים של Windows או שתשתמש בתוכנה כמו Logstash, אבל לסקריפט היומיומי שלך, תישאר עם הכלים של PowerShell. ולגבי הטמעה, זכור לרשום בחכמה - מעט מדי וזה לא שימושי, יותר מדי וזה רעש לבן.

ראה גם:

בדוק את אלה כדי להבין את כל הנושאים של רישום ב-PowerShell: