הערה
גישה לעמוד זה דורשת אישור. אתה יכול לנסות להיכנס או לשנות תיקיות.
גישה לעמוד זה דורשת אישור. אתה יכול לנסות לשנות מדריכים.
נתוני ביצועים הקשורים לטעינות עמודים ולבקשות רשת יוצאות של ממשק מאוחד (UCI) זמינים עבור יישומים מונחי-דגמים.
אילו סוגים של טעינות דפים זמינים?
| סוג | נתוני ביצועים ואבחון זמינים |
|---|---|
| טעינת לוח מחוונים (UCI) - דפדפן | כן |
| ערוך לוח מחוונים (UCI) - מוטבע | כן |
| טעינת לוח מחוונים (UCI) - MobileApplication | כן |
| טעינת לוח מחוונים (UCI) - MailApp | כן |
| טעינת לוח מחוונים (UCI) - MobileApplication | כן |
| טעינת EditForm (UCI) – דפדפן | כן |
| טעינת EditForm (UCI) - מוטבע | כן |
| טעינת EditForm (UCI) - MailApp | כן |
| טעינת EditForm (UCI) - MobileApplication | כן |
| טעינת EntityList (UCI) – דפדפן | כן |
| טעינת EntityList (UCI) - מוטבע | כן |
| טעינת EntityList (UCI) – MailApp | כן |
| טעינת EntityList (UCI) - MobileApplication | כן |
| הפעלת יישום - (UCI) - דפדפן | כן |
| הפעלת יישום - (UCI) - מוטבע | כן |
| הפעלת יישום - (UCI) - MailApp | כן |
| הפעלת יישום - (UCI) - MobileApplication | כן |
| טעינת QuickCreateForm (UCI) - דפדפן | כן |
| טעינת QuickCreateForm (UCI) - מוטבע | כן |
| טעינת QuickCreateForm (UCI) - MailApp | כן |
| טעינת QuickCreateForm (UCI) - MobileApplication | כן |
| SaveForm | לא זמין כעת |
| פעולות CommandButton | לא זמין כעת |
היכן זמינים נתוני טעינת הדפים?
נתונים אלה נכנסים לטבלה pageViews ב- Application Insights. ערך נרשם בכל פעם שמשתמש טוען דף בממשק מאוחד. הנתונים הנרשמים כוללים רק טעינות "נקיות". טעינות שלא ניתן למדוד במדויק את משך הזמן שלהן: ניווט מהיר, יציאה מיישום והודעת התראה לא ייכללו. מסיבה זו, אנו ממליצים לא להשתמש בנתונים אלה למספרים מדויקים הקשורים לניתוח השימוש.
יש מאפיינים נוספים ב- customDimensions שמספקים פרטים נוספים לטעינות דפים של הממשק המאוחד. לדוגמה, שאילתה זו מחזירה את הערכים של כל התכונות בטבלה pageViews.
pageViews
| take 1
תכונות הטבלה pageViews כוללות:
- appModule: שם מודול היישום.
- entityName: תכונה זו קיימת כאשר היא רלוונטית. היא זמינה בסוגי דפים כמו EditForm, EntityList ו- Dashboards כאשר הם מאוגדים לישות. בתרחישים מסוימים, הטופס לא מאוגד לישות והערך נראה כלא מוגדר.
- formId: ה- formId מזהה טופס באופן ייחודי ויכול לשמש לביצוע מתאם של בעיות המשפיעות על טופס ספציפי זה.
- hostType: דפדפן/MobileApplication/מוטבע
- isBoot: האם זוהי הטעינה הראשונה של הפעלה?
-
loadType
- 0: ביקור ראשון בסוג דף מסוים (למשל, הביקור הראשון בטופס).
- 1: ביקור ראשון בתצורה מסוימת (למשל, הביקור הראשון בטופס תיק לקוח).
- 2: ביקור ראשון ברשומה מסוימת (למשל, הביקור הראשון ברשומת תיק לקוח A2).
- 3: בעבר נערך ביקור בכתובת URL זו בדיוק.
- navigationOrigin: סוג הדף שממנו המשתמש ניווט.
- networkConnectivityState: האם למכשיר יש חיבור.
- pageName: סוג טעינת העמוד.
- serverConnectivityState: האם היישום מחובר לשרת.
- syncRequestTime: הזמן המוקדש להמתנה בבקשות סינכרוניות.
- coldLatency: האומדן הראשון של השהיית רשת, כולל זמן לחיצת יד של SSL.
- warmLatency: האומדן הבא של השהיית הרשת, שהיא ההשהיה הצפויה האופיינית לכל בקשה.
- warmThrputput: התפוקה המשוערת של הרשת, ב- Kbps.
עבור אירועים של Microsoft Dataverse, השדה ID או operation_ParentId ב- Application Insights הוא x-ms-service-request-id. ה- operationId ממפה ל- activityId בקצה העורפי למטרות פתרון בעיות ולבקשות תמיכה.
איזה סוג נתונים זמין לבקשות רשת יוצאות של UCI?
אלה הן קריאות ליחסי תלות אחרים שנוצרו על-ידי ממשק מאוחד כדי לעבד דף מסוים. הן עשויות להיות קריאות יוצאות אל Dataverse או לשילובים אחרים כמו Azure DevOps או Office. השתמש בשאילתה הבאה כדי לקבל נתונים אלה, הזמינים בטבלת יחסי התלות של בקשת ה- UCI:
dependencies
| where type == "UCI REQUEST"
טבלת יחסי התלות של בקשת ה- UCI כוללת את השדות הבאים:
Name: כתובת ה- URL שמופעלת על-ידי ממשק מאוחד.
Target: כרגע זהה ל- Name.
Success: האם הקריאה הצליחה או נכשלה.
UserId: מזהה המשתמש של מערכת Dataverse של המשתמש המחובר.
Duration: משך הקריאה.
customDimensions: מכיל את התכונות הבאות:
- appModule: ה- appModule שמבצע את הקריאה.
- bodySize: גודל התגובה, מקודד ומפוענח.
- cached: האם הבקשה הועברה למטמון המקומי או שהייתה צריכה לעבור לשרת. אפשרות זו לא פועלת כצפוי אם משתמש הקצה השתמש בדפדפן Internet Explorer.
- download: הזמן שנדרש להורדת התגובה.
- stall: משך הזמן שבו הבקשה המתינה בתור הדפדפן.
- ttfb : הזמן שהוקדשה להמתנה לתגובה הראשונית, המוכר גם בשם "זמן עד בייט ראשון". זמן זה לוכד את זמן ההשהיה של זמן הלוך ושוב לשרת בנוסף לזמן המתנה עד שהשרת יספק את התגובה.
- coldLatency: האומדן הראשון של השהיית רשת, כולל זמן לחיצת יד של SSL.
- warmLatency: האומדן הבא של השהיית הרשת, שהיא ההשהיה הצפויה האופיינית לכל בקשה.
- warmThrputput: התפוקה המשוערת של הרשת, ב- Kbps.
גילוי וניתוח של תרחישים
מדוע חלק מהמשתמשים שלי נתקלים באיטיות בממשק מאוחד?
תרחיש אחד שבו גילוי וניתוח יכולים להיות חשובים הוא כאשר משתמש מאזור מסוים (למשל, אסיה) מדווח שהביצועים של טופס איטיים. ייתכן שמשתמש זה, שנמצא באסיה, ניגש לסביבה או לארגון בצפון אמריקה. הפרטים מציגים את זמן הטעינה הכולל בנוסף למשך הזמן הקשור לרשת. ייתכן שהסיבה לכך היא ביצועים איטיים שנתפסים על-ידי המשתמש.
באפשרותך להשתמש בתכונות warmLatency, warmThroughput ו- coldLatency כדי להבין ביתר פירוט למה מוקדש הזמן בעת טעינת דפים ובקשות אחרות של הממשק המאוחד, כמוצג בתמונה.
בבקשה למעלה, בקשת הממשק מאוחד נמשכת זמן רב מאשר בקשת Dataverse API (Web API) בפועל. הפירוט במקרה זה הוא משך הזמן של קריאת API של Dataverse (56 אלפיות השנייה) בנוסף לערך של CustomDimensions.warmLatency (89 אלפיות השנייה), והתוצאה המתקבלת היא כמעט משך הפעולה כולה (144 אלפיות השנייה). הערך warmLatency מעיד על האיטיות של לקוח מסוים זה ועלול לגרום בעיה שאותה תוכל לנתח ברמת המשתמש באמצעות השאילתה הבאה:
dependencies
| where ['type'] == "UCI REQUEST"
| summarize avg(toint(customDimensions.warmLatency)), avg(toint(customDimensions.coldLatency)), avg(toint(customDimensions.warmThroughput)) by user_Id
pageViews
| summarize avg(toint(customDimensions.warmLatency)), avg(toint(customDimensions.coldLatency)), avg(toint(customDimensions.warmThroughput)) by user_Id
האם אוכל לקבוע כיצד המשתמש ניגש למערכת?
התכונה userAgent בשדה customDimensions בטבלה requests של Application Insights כוללת נתונים אלה. באפשרותך להשתמש בשאילתה הבאה כדי לקבל סקירה כללית של המקורות השונים שמהם המשתמשים ניגשים למערכת:
pageViews
| summarize count() by tostring(customDimensions.userAgent), user_Id
dependencies
| where ['type'] == "UCI REQUEST"
| כאשר הערך customDimensions.userAgent מתחיל ב- | מהיכן המשתמש ניגש למערכת? |
|---|---|
| Mozilla | סוג דפדפן, גירסה |
| azure-logic-apps | יישומים לוגיים של Azure |
| PowerApps | Power Apps |
| Microsoft Office Excel | Office Excel |
| פורטלים | פורטלים |
| DynamicsDataIntegration | שילוב נתונים של Dynamics |
| XrmToolBox.exe | XrmToolBox |
| PluginRegistration | רישום תוסף |
| LogicAppsDesigner | מעצב יישומים לוגיים |
| Apache-HttpClient | לקוח Apache HTTP |
| Microsoft Flow | Power Automate |
| UnifiedServiceDesk | Unified Service Desk |
| PostmanRuntime | Postman |
| OfficeGroupsConnector | Office Groups Connector |
| Microsoft.Data.Mashup | Power Query |
| Apache-Olingo | אפאצ'י Olingo |
| Dalvik | Android |
| ג'קרטה קומונס-Http | Jakarta |
| Informatica | Informatica |
| axios | Axios |
| node-fetch | NodeJS |
| LinkedInBot | LinkedInBot |
כיצד אוכל לקבל את מספר משתמשים שניגשים מהדפדפן, ממכשירים ניידים או מיישומים מוטבעים?
pageViews
| summarize count() by tostring(customDimensions.hostType)
התמונה הבאה מציגה קבוצת תוצאות לדוגמה משאילתה זו.
כיצד אוכל לצמצם למשתמש ספציפי?
pageViews
| where user_Id == "[userid]"
| summarize count() by tostring(customDimensions.hostType)
איך אפשר להשתמש ב- Application Insights עם ניטור?
Azure Monitor עוזר לפתרון בעיות בזמן אמת בהפעלה מצד הממשק המאוחד. בקשות לעסקאות מקצה לקצה יהיו זמינות ככל הנראה ב- Application Insights. כדי לעיין ביומנים עבור פעולה נתונה, שים לב למזהה הפעילות משורה בדף פרטי האירוע ב- Monitor. תוכל לאתר את היומנים באמצעות השאילתה הבאה:
union *
| where operation_Id contains "[ActivityIdHere]"
Monitor הוא כלי איתור באגים בזמן אמת; עם זאת, יתכן שנתונים לא יהיו זמינים בו במשך כמה שעות.
מדוע משתמשים נתקלים בבעיות עם טופס ספציפי?
המשתמש יכול לשתף את מזהה ההפעלה שלו מהמקטע אודות בממשק מאוחד עבור הארגון הספציפי.
לאחר מכן תוכל להשתמש במזהה זה כדי לאתר בעיות על ידי בחינת כל הפעילויות באותה הפעלה. השתמש בשאילתה הבאה:
union *
| where session_Id == '[sessionIdHere]'
אילו טפסים נמצאים בשימוש במיקומים שונים, ומה הם ביצועי הטעינה של הטפסים במיקומים אלה?
pageViews
| summarize avg(duration) by name, client_City, client_CountryOrRegion
האם API חיצוני קרא לכשל, והאם אוכל לחקור לעומק את מחסנית השגיאות כדי לסייע באיתור באגים?
תצוגת הדפדפן של הלוח כשלים מכילה בקשות יוצאות של ממשק מאוחד. הבקשות עוברות Dataverse או לארגון שמכיל את כתובת ה- URL של הארגון. ייתכן שיש בקשות אחרות שמועברות לכתובות URL אחרות (למשל, בתמונה הבאה, לארגון יש התאמה אישית שקוראת ל- dc.services.visualstudio.com). תוכל לעיין בעסקה מקצה לקצה כדי להוסיף ולבחון את הכשלים עבור קריאות יוצאות חיצוניות אלה.
האם אוכל להגדיר התראה על סף הביצועים עבור פעולות טופס מסוימות? כאשר מתקבלת התראה, האם היא תאפשר ליצרן לאבחן ולפתור את הבעיה?
כן. באפשרותך להגדיר התראות ב- Application Insights כדי לנטר את תקינות היישום.