דלג לתוכן הראשי
היכנס דרך Microsoft
היכנס או צור חשבון.
שלום,
בחר חשבון אחר.
יש לך חשבונות מרובים
בחר את החשבון שברצונך להיכנס באמצעותו.

ASP.NET עמודה קולית של תמיכה

Log Parser 2.2 and ASP.NET

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

ברוך הבא לעמודה 'ASP.NET תמיכה קולית'. שמי ראול סוני ואני מ- Microsoft כבר שנתיים בערך. בעמודה של החודש, אני נדון כמה מהעובדות על מנתח יומן 2.2. לפני שניכנס לתרחישים ספציפיים, תן לי להימשך כמה רגעים כדי לתאר את הכלי מנתח יומן רישום.

על

מנתח יומן הרישום הוא כלי רב-עוצמה ורב-תכליתי המספק גישה אוניברסלית לשאילתה לנתונים מבוססי טקסט, כגון קבצי יומן רישום, קבצי XML וקובצי CSV, וכן מקורות נתונים עיקריים במערכת ההפעלה של Microsoft Windows, כגון יומן האירועים, הרישום, מערכת הקבצים ושירות מדריך הכתובות של Active Directory. לחץ
כאן כדי להוריד את הכלי. בגירסה זו, באפשרותך לנתח את הקבצים הבאים בקלות רבה מתוך הכלי מנתח יומן רישום:

IISW3C, NCSA, IIS, IISODBC, BIN, IISMSID, HTTPERR, URLSCAN, CSV, TSV, W3C, XML, EVT, ETW, NETMON, REG, ADS, TEXTLINE, TEXTWORD, FS ו- COM. אני מסכים שממשק שורת הפקודה אינו אינטואיטיבי מאוד, ותמצא אותו ברגע שתתקין ותפעיל את הכלי. אך חסרה לכלי תחושה אינטואיטיבית בתיעוד שסופק עבור הכלי. אני אייעץ לך כאן: אל תיתן לממשק שורת הפקודה לבטל אותך כל כך מהר. כלי זה הוא ערכת כלים של חנון והוא עוזר לך הרבה, במיוחד אם ברצונך לפתור בעיות מנקודת מבט של ביצועים.

אני לא הולך לדון "כיצד" להשתמש בכלי מנתח יומן הרישום כי התיעוד הוא די טוב ואת תיקיית ההתקנה מכילה גם תיקיית "Samples\Queries" המכילה לא מעט דוגמאות.

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

תרחיש 1: ניתוח קבצי טקסט גדולים עבור טקסט ספציפי

רקע קטן של הבעיה

הלקוח שלך נתקל בבעיה "הגישה נדחתה" כאשר הוא עשה משהו. אתה ממליץ ללקוח להשתמש בכלי מבריק אחר בשם
Filemon ולשכפול הבעיה. אם זו בעיה עם רשימות ACL של משאבים, הכלי Filemon יוכל לתפוס את השגיאה. כעת, בקש מהלקוח לשלוח לך את קובץ יומן הרישום של Filemon שנשמר. הנה מגיע החלק האומלל. אתה מקבל את הקובץ (לדוגמה, Filemon.log), אך אתה מציין שהגודל ענק (Filemon רשום כמות גדולה של נתונים!). נראה ש'פנקס רשימות' נתקע ויאט באופן כואב אם ימצא את השורות 'הגישה נדחתה' בקובץ יומן הרישום. Microsoft Office Excel מסרב לפתוח את הקובץ לחלוטין. מה עכשיו

. תשובה: פתח את חלון הפקודה מנתח יומן והשתמש בפקודה הבאה:

LOGPARSER "Select Text from C:\Filemon.log where Text like '%Access Denied%'" -i:TEXTLINE -q:Offמה שאנו אומרים לכלי מנתח יומן הרישום הוא לנתח את מבנה הטקסט של כל שורה (טקסט) מהקובץ הנתון (C:\Filemon.log) שבו השורה מכילה את 'הגישה נדחתה'. בורר שורת הפקודה -i:TEXTLINE מציין את תבנית הקלט, ומתג שורת הפקודה -q:Off מורה לו להיות מילולי (-q[:ON|כבוי]:מצב שקט;). אם תפעיל את בורר שורת הפקודה -q, הנתונים הסטטיסטיים המוצגים ושם השדה (Text) בפלט שלהלן לא ייעדרו.

פלט לדוגמה

טקסט7447 1:49:24 PM explorer.exe:1200 מדריך הכתובות C:\ הגישה נדחתהנתונים סטטיסטייםעובדו: 640444
פלט רכיבים: 1
זמן ביצוע: 12.75 שניות

כיצד להימנע מהקשה על ENTER מספר פעמים אם מספר הרשומות שהוחזרו על-ידי השאילתה גדול מ- 10?

תשובה: השתמש בפרמטר -rtp:-1 בשאילתות שלך!

זהו פרמטר נחוץ למקרה שתרצה לנתב מחדש את הפלט לקובץ. כמו כן, בעת כתיבה ל- STDOUT, רשומות פלט מוצגות באצוות מורכבות ממספר שורות השווה לערך שצוין עבור פרמטר זה. לאחר הצגת אצוות שורות, היא תבקש מהמשתמש להקיש על מקש כדי להציג את אצוות השורות הבאה. ציון "-1" עבור פרמטר זה הופך יצירת אצווה ללא זמינה לחלוטין!

שימוש בקובצי שאילתה

דרך נוספת להשיג את אותן תוצאות באופן נקי יותר היא ליצור קובץ שאילתה. בדרך זו, תוכל לכוונן בקלות את קובץ השאילתה ולהפעיל אותו משורת הפקודה של כלי מנתח הרישום. מלבד זאת, באפשרותך ליצור GUI בקלות בהתאם לטעם שלך. ה- GUI טוען את שאילתת ה- SQL שנשמרה ומפעיל את השאילתה באמצעות הכלי מנתח יומן רישום.

אם ברצונך להשיג את אותה השפעה (כמו בתרחיש 1) מתוך שאילתות SQL, באפשרותך לספק את הפקודה הבאה:

LOGPARSER -i:TEXTLINE file:C:\LPQ\SearchAnyTextfile.sql -q:offC:\LPQ\SearchAnyTextFile.sql מכיל את המידע הבא:

הערה צור תיקיית LPQ ב- C:\ כדי להשתמש בדוגמאות המוצגות בעמודה זו.

Select Text as LineFromFile
FROM C:\Filemon.log 
WHERE Text 
LIKE '%Access Denied%'

אם אתה מבחין שהשאילתה נראית הרבה יותר נקיה כעת ות הגיונית יותר. כך תוכל ליצור גם שאילתות מורכבות וגודל גדולות יותר, והכל יתאים לשורת הפקודה שלך מאחר שאתה משתמש ב- . קובץ SQL במקום השאילתה כולה. בכל זאת, לא ניתן להכניס יותר מ- 260 תווים לשורת הפקודה!

שמירה על היתרונות של שימוש בקובצי שאילתה, נשתמש בשיטה זו בתרחישים הבאים. יש לי את כל השאילתות שלי שנשמרו ב- C:\LPQ עם סיומת .sql (באפשרותך להשתמש בסיומת משלך).

תרחיש 2: איתור 10 הקבצים הגדולים ביותר מתיקיה ספציפית, כולל תיקיות המשנה שלה

רקע קטן של הבעיה

יש לך תיקיה, ויש לא מעט תיקיות משנה וקבצים. ברצונך לברר את 10 הקבצים הגדולים ביותר בתיקיה זו, כולל תיקיות המשנה שלה.

אני יודע, עבור תיקיה ספציפית, באפשרותך פשוט לשנות את התצוגה (בתפריט תצוגה, ללחוץ על פרטים) בסייר Windows ולמיין את התצוגה לפי גודל. אך הבעיה כאן היא שעליך גם לתחשבון בתוכן של תיקיית המשנה.

תשובה: פתח את חלון הפקודה של הכלי מנתח יומן והשתמש בפקודה הבאה:

LOGPARSER -i:FS file:C:\LPQ\Top10Files.sql -q:off -Recurse:-1Top10Files.sql מכיל את הרכיבים הבאים:

SELECT TOP 10 
Path, 
Name, 
Size, 
Attributes 
FROM 'C:\Program Files\Microsoft Office\*.*' 
ORDER BY Size DESC

כאן -i:FS מציין שאנו בשאילתות על מערכת הקבצים. באפשרותך להציג את הרשימה המלאה של שדות תבנית הקלט של FS בתיעוד ולמסגרת את השאילתה בהתאם.

-Recurse:-1 מציין שאנחנו רוצים לכלול את כל תיקיות המשנה. אם אינך מעוניין בכל תיקיות המשנה או אם ברצונך להגביל רקורסיה, השתמש ב- 0, 1, 2 וכן הלאה. המספר מרמז על העומק של המנתח. 0 פירושו שאין רקורסיה, 2 פירושו שהמנתח חוזר עד עומק 2 וכן הלאה.

פלט לדוגמה

Path                                                         Name         Size     Attributes 
------------------------------------------------------------ ------------ -------- ----------
C:\Program Files\Microsoft Office\Office10\WINWORD.EXE       WINWORD.EXE  10738448 -A--R----
C:\Program Files\Microsoft Office\Office10\EXCEL.EXE         EXCEL.EXE    9358096  -A--R----
C:\Program Files\Microsoft Office\Office10\OUTLLIB.DLL       OUTLLIB.DLL  6326984  -A-------
C:\Program Files\Microsoft Office\Office10\POWERPNT.EXE      POWERPNT.EXE 6093584  -A--R----
C:\Program Files\Microsoft Office\Office10\MSOWC.DLL         MSOWC.DLL    3041880  -A-------
C:\Program Files\Microsoft Office\Office10\CLIPPIT.ACS       CLIPPIT.ACS  2904417  -A-------
C:\Program Files\Microsoft Office\Office10\GRAPH.EXE         GRAPH.EXE    2144824  -A-------
C:\Program Files\Microsoft Office\Office10\1033\OUTLLIBR.DLL OUTLLIBR.DLL 1977032  -A-------
C:\Program Files\Microsoft Office\Office10\1033\XLMAIN10.CHM XLMAIN10.CHM 1646072  -A-------
C:\Program Files\Microsoft Office\Office10\MSOWCW.DLL        MSOWCW.DLL   1200177  -A-------


סטטיסטיקהבחירות שעובדו: 1000
פלט רכיבים: 10
זמן ביצוע: 0.42 שניות

תרחיש 3: איתור 20 הדפים האיטיים ביותר באתר האינטרנט שלך

רקע קטן של הבעיה

אתה משתמש ב- Microsoft Internet Information Services (IIS) 6, יש לך כמה אתרי ASP.NET, ואתה לא ממש מרוצה מהביצועים. ברצונך לכוונן את השרת ולידע את 20 הדפים המובילים שהקדשת הזמן הגבוה ביותר לשרת מהשרת. זה לא כאילו אתה קובע את דפי הזמן הגבוהים ביותר, פותרים את הבעיה והבעיות שלך נפתרות. למרבה הצער, אין תבליטים כסוף כדי לפתור בעיות ביצועים. לפחות צריכה להיות דרך להתחיל. הנכונה?

תשובה: פתח את חלון הפקודה מנתח יומן והשתמש בפקודה הבאה:

LOGPARSER -i:IISW3C file:C:\LPQ\Slowest20FilesInIIS.sql -o:DataGrid -q:offSlowest20FilesInIIS.sql מכיל את קוד הדוגמה הבא.

Select Top 20
LogRow as [Line Number],
date as [Date],
time as [Time],
c-ip as [Client-IP],
s-ip as [Server IP], 
s-port as [Server Port],
cs-method as [Request Verb],
cs-uri-stem as [Request URI],
sc-bytes as [Bytes sent],
sc-status as [Status],
sc-substatus as [Sub-status],
sc-win32-status as [Win 32 Status],
time-taken as [Time Taken]
From 
C:\ex060813.log
Order by time-taken desc

כאן, -i:IISW3C מציין שאנו רושם שאילתות ביומני IIS W3C. באפשרותך להציג את הרשימה המלאה של שדות תבנית הקלט של IISW3C בתיעוד ולמסגרת את השאילתה בהתאם.

-o:DataGrid מציין שהפלט צריך להיות מוצג ברשת נתונים באופן הבא:



הערה כדי להשתמש בשאילתה זו, עליך להשתמש ברישום IISW3C ועליך להפוך את מאפייני הרישום המתקדם לזמינים. (פתח את מאפייני אתר האינטרנט שלך, לחץ על הכרטיסיה אתר אינטרנט, לחץ כדי לבחור הפוך רישום לזמין ולאחר מכן הגדר את תבנית יומן הרישום הפעיל בתבנית קובץ יומן רישום מורחב W3C. לחץ על מאפיינים, לחץ על
הכרטיסיה מתקדם ולאחר מכן לחץ כדי לבחור את כל האפשרויות.)

תרחיש 4: איתור 20 דפי .aspx הנפוצים ביותר באתר האינטרנט שלך

רקע קטן של הבעיה

אתה משתמש ב- IIS 6, יש לך כמה אתרי ASP.NET, וברצונך לדעת את קבצי ה- .aspx הנפוצים ביותר, כך שאם אתה מכוונן את הביצועים של דפים אלה, בסופו של דבר את יתרונות האתר/השרת כולו. תמיד עדיף להקדיש זמן לכוונון הדפים הנמצאים בשימוש הרב ביותר ולא בעמודים הנמצאים בשימוש לעתים רחוקות. (למרות שקיימים חריגים לכלל זה. נניח שהדף שנמצא בשימוש לעתים רחוקות הוא דף גרוע מאוד הגורם לניצול רב של המעבד לגבי העניין!) כעת, אם אתה מציין שדף מסוים נמשך זמן רב (תרחיש 3) והדף הוא אחד מהדפים הנפוצים ביותר, עליך לוודא תמיד שהדף פועל היטב תחת מתח.

תשובה: פתח את חלון הפקודה של הכלי מנתח יומן והשתמש בפקודה הבאה:

LOGPARSER -i:IISW3C file:C:\LPQ\Popular20FilesInIIS.sql -chartType:Bar3D -groupSize:640x480 -view:onPopular20FilesInIIS.sql מכיל את הקוד לדוגמה הבא.

Select Top 20
cs-uri-stem as [Request URI],
COUNT(*) AS Hits 
INTO MyChart.gif 
FROM C:\ex060813.log
Group by cs-uri-stem ORDER BY Hits DESC

במקרה זה, -chartType:Bar3D מורה בכלי מנתח הרישום איזה סוג תרשים להכין. הפרמטר -groupSize מציין את הרוחב והגובה של תמונת היעד, בפיקסלים. ערכת סוגי התרשימים הזמינים תלויה בגירסת Microsoft רכיבי אינטרנט של Office המותקנת במחשב המקומי.

כך נראה הפלט:



כפי שכבר ראית, יכולות להיות כמה דרכים שבהן הכלי 'מנתח יומן רישום' יכול להיות שימושי באמת בניתוח הנתונים מיומני רישום שונים. היצירתיות היחידה היא המגבלה כאן! קיימות דרכים כמעט בלתי מוגבלות שבהן הנתונים יכולים לשקף תמונה הרבה יותר טובה אותן, ובאפשרותך לפעול לפיהן. מה נגענו בו הוא רק קצה הקרחון! באפשרותך גם להשתמש בשפות ברמה גבוהה כגון Microsoft Visual C#, Microsoft Visual Basic .NET וכן הלאה כדי ליצור תוכניות שימושיות באמצעות העוצמה של הכלי 'מנתח יומן רישום'. עיין בסעיף "משאבים" להלן.

משאבים

אני רוצה לדון בתרחישים נוספים עבור הכלי מנתח יומן, ואני יצרתי מקטע חדש בבלוג שלי רק עבור הכלי מנתח יומן רישום. אם יש לך הצעות לתרחישים או לשאילתות של כלי מנתח הרישום שברצונך לשתף,
שלח לי דואר אלקטרוני ב-rahulso@microsoft.com, ואני אפרסם אותה בנוחות הקרובה ביותר באתר האינטרנט הבא:

https://learn.microsoft.com/archive/blogs/rahulso/

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

המוצרים של ספקים חיצוניים שבהם דן מאמר זה מיוצרים על-ידי חברות שאינן תלויות ב- Microsoft. Microsoft אינה מעניקה אחריות, משתמעת או אחרת, בנוגע לביצועים או למהימנות של מוצרים אלה.

זקוק לעזרה נוספת?

מעוניין באפשרויות נוספות?

גלה את יתרונות המנוי, עיין בקורסי הדרכה, למד כיצד לאבטח את המכשיר שלך ועוד.

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

האם מידע זה היה שימושי?

עד כמה אתם מרוצים מאיכות השפה?
מה השפיע על החוויה שלך?
בלחיצה על 'שלח', אתה מאפשר למשוב שלך לשפר מוצרים ושירותים של Microsoft. מנהל ה-IT שלך יוכל לאסוף נתונים אלה. הצהרת הפרטיות.

תודה על המשוב!

×