نظارت بر اثربخشی MS SQL Server. توصیه های عملی با استفاده از SQL Profiler

در کار خود، ما اغلب با موقعیتی مواجه می شویم که یک پرس و جو خاص به کندی اجرا می شود و هیچ مشکل آشکاری در متن پرس و جو قابل مشاهده نیست. معمولاً در این مورد لازم است مشکل در سطح عمیق تری بررسی شود. به عنوان یک قاعده، نگاه کردن به متن پرس و جوی SQL و طرح آن ضروری می شود و اینجاست که SQLProfiler به ما کمک می کند.

SQL Profiler چیست و چرا اصلاً مورد نیاز است

SQLProfiler برنامه ای است که همراه با MS است SQL Serverو برای مشاهده تمام رویدادهایی که در سرور SQL رخ می دهد یا به عبارت دیگر برای ضبط ردیابی در نظر گرفته شده است. چرا یک برنامه نویس 1C به SQLProfiler نیاز دارد؟ حداقل برای اینکه متن پرس و جو را در SQL دریافت کنید و طرح آن را ببینید. البته این کار را می توان با کمک مجله فناوری هم انجام داد، اما این کار نیاز به مهارت دارد و پلان در تی جی چندان زیبا و خواندنی نیست. در پروفایلر می توانید نه تنها یک متن، بلکه یک طرح اجرای پرس و جو گرافیکی را نیز مشاهده کنید که به نظر من بسیار راحت تر است. همچنین می‌توانید از نمایه‌ساز برای تعیین موارد زیر استفاده کنید: درخواست‌های طولانی‌تر از زمان معین، درخواست‌های یک میز انتظار خاص در بازه‌های زمانی بن‌بست قفل‌ها و موارد دیگر...

تجزیه و تحلیل پرس و جو با SQL Profiler

اغلب، پروفایلر به طور خاص برای تجزیه و تحلیل پرس و جو استفاده می شود. به عنوان یک قاعده، ما نیازی به ردیابی همه پرس و جوها نداریم، اغلب باید ببینیم که چگونه یک جستجوی خاص در زبان 1C به SQL ترجمه می شود و برنامه اجرای آن را ببینیم. به عنوان مثال، این ممکن است برای تعیین اینکه چرا یک پرس و جو به کندی اجرا می شود مورد نیاز باشد، یا ما یک پرس و جو بزرگ نوشته ایم و می خواهیم مطمئن شویم که متن پرس و جو SQL حاوی اتصالات فرعی نیست. برای گرفتن درخواست در ردیابی، موارد زیر را انجام دهید:

1. راه اندازی کنید SQL Profilerشروع - همه برنامه‌ها - Microsoft SQL Server 2008 R2 - ابزارهای عملکرد - SQLProfiler
2. ایجاد یک فایل ردیابی جدید - ایجاد ردیابی (Ctrl+N)
3. سرور DBMS که پایگاه داده ما در آن قرار دارد را مشخص کنید و روی "اتصال" کلیک کنید.

به طور طبیعی، هیچ چیز شما را از ردیابی سرور DBMS که در رایانه دیگری قرار دارد، باز نمی دارد. 4. در پنجره ظاهر شده "Trace properties" به تب دوم "Select events" بروید.

5. حال باید رویدادها و ویژگی های این رویدادها را که می خواهیم در trace ببینیم را مشخص کنید. ما به کوئری ها و طرح های پرس و جو نیاز داریم، بنابراین باید رویدادهای مناسب را فعال کنیم. برای نمایش لیست کاملویژگی ها و رویدادها، پرچم های "نمایش همه ستون ها" و "نمایش همه رویدادها" را فعال کنید. در مرحله بعد، شما باید فقط رویدادهای نشان داده شده در شکل زیر را انتخاب کنید، همه رویدادهای دیگر باید غیرفعال شوند.


شرح رویدادها: ShowplanStatisticsProfile - طرح اجرای پرس و جو متن.
ShowplanXMLStatisticsProfile - طرح اجرای پرس و جو گرافیکی.
RPC:تکمیل شده - متن درخواست، اگر به صورت رویه اجرا شود (اگر درخواست 1C با پارامترها اجرا شود).
SQL:BatchCompleted - متن پرس و جو اگر به عنوان یک پرس و جو معمولی اجرا شود (اگر پرس و جو 1C بدون پارامتر اجرا شده باشد).

6. اکنون باید فیلتر را برای رویدادها پیکربندی کنید. اگر این کار انجام نشد، ما پرس و جوهایی را برای همه پایگاه های داده واقع در این سرور DBMS خواهیم دید. روی دکمه "Column Filters" کلیک کنید و یک فیلتر را با نام پایگاه داده مشخص کنید

اکنون در ردیابی فقط درخواست های پایگاه داده "TestBase_8_2" را مشاهده خواهیم کرد. در صورت تمایل می توانید روی فیلدهای دیگر فیلتر قرار دهید که جالب ترین آنها: Duration (Duration)، TextData (معمولاً این متن درخواست است) و RowCounts (تعداد ردیف‌های برگشتی توسط درخواست).

به عنوان مثال، اگر من نیاز داشته باشم که تمام درخواست های جدول "_InfoRg4312" را که بیش از 3 ثانیه طول می کشد در پایگاه داده "TestBase_8_2" دریافت کنم، این کار را انجام می دهم:
الف) فیلتر بر اساس پایگاه داده، مثال نشان داده شده در بالا
ب) بر اساس مدت زمان به میلی ثانیه فیلتر کنید.

ج) بر اساس متن درخواست فیلتر کنید


در اینجا ماسک را مشخص می کنیم. اگر نیاز به ردیابی جستجوهایی دارید که به چندین جدول دسترسی دارند، سپس چندین مورد را در بخش "به نظر می رسد" ایجاد کنید. شرایط همه فیلترها با هم کار می کنند.

7. اکنون می توانید ردیابی را شروع کنید. روی "شروع" کلیک کنید، پس از آن ردیابی شروع به کار می کند، و می توانید رویدادهایی را که برای نمایش پیکربندی کرده اید و در زیر فیلترهای شما قرار می گیرند، مشاهده کنید. می توانید از دکمه های موجود در نوار فرمان برای کنترل ردیابی استفاده کنید.


از چپ به راست: پاک کن - پنجره ردیابی را پاک می کند، شروع - ردیابی را شروع می کند، مکث - ردیابی را متوقف می کند، با فشار دادن Start ردیابی را از سر می گیرد، توقف - ردیابی را متوقف می کند

8. پنجره ردیابی خود از دو قسمت تشکیل شده است. رویدادها و ویژگی های رویداد در قسمت بالایی قرار دارند. قسمت پایین بسته به نوع رویداد اطلاعات متفاوتی را نمایش می دهد. در مورد ما، یا متن درخواست یا طرح آن در اینجا نمایش داده می شود.

9. پرس و جو را در کنسول پرس و جو 1C اجرا کنید و ببینید که چگونه در پروفایلر منعکس می شود.


ردیابی نشان می دهد که چندین درخواست وجود داشته است و فقط یکی از آنها مال ما است. بقیه درخواست ها سرویس است.

10. با ویژگی های رویدادها می توانید بفهمید: پرس و جو چند ثانیه اجرا شده است (Duration)، تعداد قرائت های منطقی (Reads) وجود دارد، پرس و جو در نتیجه چند ردیف برگردانده شده است (RowCounts) و غیره. در مورد من، پرس و جو 2 میلی ثانیه طول کشید، 4 خواندن منطقی انجام داد و 1 ردیف را برگرداند.

11. اگر یک رویداد بالا برویم، می توانیم طرح پرس و جو را به صورت گرافیکی ببینیم.
همانطور که از طرح مشخص است، جستجو بر اساس شاخص به قیمت انجام می شود، اگرچه این طرح را نمی توان ایده آل نامید، زیرا. ایندکس پوشش داده نمی‌شود، فیلدهای کد و نام با استفاده از KeyLookup به دست می‌آیند که 50 درصد زمان را می‌گیرد.


استفاده كردن منوی زمینه، طرح گرافیکی را می توان در آن ذخیره کرد فایل جداگانهبا پسوند *.SQLPlan و آن را در یک پروفایل در رایانه دیگری یا با استفاده از برنامه پیشرفته تر SQL Sentry Plan Explorer باز کنید.

12. اگر حتی بالاتر برویم، همان طرح پرس و جو را خواهیم دید، اما به صورت متنی. این طرح است که در TJ، TsUP و سایر کنترل های عملکرد 1C نمایش داده می شود. برای تجزیه و تحلیل آن، توصیه می کنم از پیشرفته استفاده کنید ویرایشگر متنبا هایلایت، مانند Notepad++.

13. با استفاده از منوی "File-Save As"، کل ردیابی را می توان در آن ذخیره کرد فرمت های مختلف:
الف) به فرمت خود پروفایلر، یعنی. با پسوند *.trc
ب) به فرمت xml
ج) می توانید یک الگو از ردیابی بسازید. پاراگراف بعدی را ببینید.
د) می توانید ردیابی را به عنوان جدول پایگاه داده ذخیره کنید. راه راحت، اگر لازم باشد، برای مثال، کندترین درخواست را در کل ردیابی پیدا کنیم، یا درخواست ها را بر اساس پارامتری انتخاب کنیم. فایل - ذخیره به عنوان - جدول ردیابی - یک سرور DBMS را انتخاب کرده و به آن متصل شوید سپس باید یک پایگاه داده در سرور مشخص شده انتخاب کنید و نام جدولی را که ردیابی در آن ذخیره می شود را مشخص کنید. می توانید یک جدول موجود را انتخاب کنید یا یک نام جدید بنویسید و سپس جدول به طور خودکار در پایگاه داده انتخاب شده ایجاد می شود.

در این حالت باید در نظر گرفت که Duration در جدول بر حسب میلیونیم ثانیه ذخیره می شود و هنگام نمایش نتیجه مطلوب است که مقدار آن به میلی ثانیه تبدیل شود. ستون RowNumber نیز به جدول اضافه می شود که تعداد سطر داده شده در ردیابی را نشان می دهد.

14. اگر به استفاده مکرر از پروفایلر برای تجزیه و تحلیل درخواست ها نیاز دارید، تنظیم فیلترها و رویدادهای لازم به سرعت خسته کننده می شود و علاوه بر این، زمان زیادی را نیز می طلبد. الگوهای Trace به کمک می آیند، جایی که فیلترهای مورد نیاز و ترتیب ستون ها را مشخص می کنیم و سپس به سادگی این الگو را هنگام ایجاد یک ردیابی جدید انتخاب می کنیم. برای ایجاد یک الگو، از منوی File - Templates - New Template استفاده کنید

در تب اول، همه چیز ساده است. نوع سرور، نام قالب را مشخص کنید و در صورت لزوم یک پرچم برای استفاده از این الگو به صورت پیش فرض تعیین کنید. در تب دوم، رویدادها را انتخاب می کنیم و فیلترها را تنظیم می کنیم، همانطور که در بالا نشان داده شده است. همچنین توصیه می‌کنم ترتیب ستون‌ها را در ردیابی تنظیم کنید، این باعث صرفه‌جویی در زمان هنگام تجزیه و تحلیل پرس‌وجوها می‌شود. برای مثال، من استفاده از ترتیب زیر را راحت‌تر می‌دانم.

اکنون هنگام ایجاد یک ردیابی جدید می توانید به سادگی قالب مورد نیاز را مشخص کنید، پس از آن در تب دوم، تمام فیلترها و رویدادها به صورت خودکار پر می شوند.

البته، به دور از همه روش های استفاده از این ابزار فوق العاده در اینجا نشان داده شده است، اگر علاقه مخاطبان وجود داشته باشد، در آینده امکان پر کردن مجموعه مقالات در این زمینه وجود خواهد داشت.

در کار ما اغلب با موقعیتی مواجه می شویم که یک درخواست خاص به کندی اجرا می شود و هیچ مشکل آشکاری در متن درخواست مشاهده نمی شود. معمولاً در این مورد لازم است مشکل در سطح عمیق تری بررسی شود. به عنوان یک قاعده، نگاه کردن به متن کوئری SQL و طرح آن ضروری می شود و اینجاست که SQL Profiler به ما کمک می کند.

SQL Profiler چیست و چرا اصلاً مورد نیاز است.

SQL Profiler برنامه ای است که با MS SQL Server عرضه می شود و برای مشاهده تمام رویدادهایی که در SQL Server رخ می دهد یا به عبارت دیگر برای ثبت ردیابی طراحی شده است.

چرا یک برنامه نویس 1C به SQL Profiler نیاز دارد؟

حداقل برای اینکه متن پرس و جو را در SQL دریافت کنید و طرح آن را ببینید. البته این کار را می توان با کمک مجله فناوری هم انجام داد، اما این کار نیاز به مهارت دارد و پلان در تی جی چندان زیبا و خواندنی نیست.

در پروفایلر می توانید نه تنها یک متن، بلکه یک طرح اجرای پرس و جو گرافیکی را نیز مشاهده کنید که به نظر من بسیار راحت تر است.

همچنین می توانید از پروفایلر برای موارد زیر استفاده کنید:

درخواست های طولانی تر از یک زمان خاص

پرس و جو در برابر یک جدول خاص

انتظار روی بلوک ها

تایم اوت ها

بن بست ها

و خیلی بیشتر…

تجزیه و تحلیل پرس و جو با SQL Profiler

اغلب، پروفایلر به طور خاص برای تجزیه و تحلیل پرس و جو استفاده می شود. به عنوان یک قاعده، ما نیازی به ردیابی همه پرس و جوها نداریم، اغلب باید ببینیم که چگونه یک جستجوی خاص در زبان 1C به SQL ترجمه می شود و برنامه اجرای آن را ببینیم. به عنوان مثال، این ممکن است برای تعیین اینکه چرا یک پرس و جو به کندی اجرا می شود مورد نیاز باشد، یا ما یک پرس و جو بزرگ نوشته ایم و می خواهیم مطمئن شویم که متن پرس و جو SQL حاوی اتصالات فرعی نیست.

برای گرفتن درخواست در ردیابی، موارد زیر را انجام دهید:

1. SQL Profiler را اجرا کنید

شروع - همه برنامه ها - Microsoft SQL Server 2008 R2 - Performance Tools - SQL Profiler

2. یک ردیابی جدید ایجاد کنید

فایل - ایجاد ردیابی (Ctrl+N)
3. سرور DBMS که پایگاه داده ما در آن قرار دارد را مشخص کنید و روی "اتصال" کلیک کنید.

به طور طبیعی، هیچ چیز شما را از ردیابی سرور DBMS که در رایانه دیگری قرار دارد، باز نمی دارد.

4. در پنجره ظاهر شده "Trace properties" به تب دوم "Select events" بروید.

5. حال باید رویدادها و ویژگی های این رویدادها را که می خواهیم در trace ببینیم را مشخص کنید.

ما به کوئری ها و طرح های پرس و جو نیاز داریم، بنابراین باید رویدادهای مناسب را فعال کنیم. برای نمایش لیست کامل ویژگی ها و رویدادها، پرچم های "نمایش همه ستون ها" و "نمایش همه رویدادها" را فعال کنید.

شرح وقایع:

ShowplanStatisticsProfile - طرح اجرای پرس و جو متن

ShowplanXMLStatisticsProfile - طرح اجرای پرس و جو گرافیکی

RPC:تکمیل شده - متن درخواست، اگر به صورت رویه اجرا شود (اگر درخواست 1C با پارامترها اجرا شود).

SQL:BatchCompleted – متن پرس و جو در صورتی که به عنوان یک پرس و جو معمولی اجرا شود (اگر پرس و جوی 1C بدون پارامتر اجرا شده باشد).

6. اکنون باید فیلتر را برای رویدادها پیکربندی کنید. اگر این کار انجام نشد، ما پرس و جوهایی را برای همه پایگاه های داده واقع در این سرور DBMS خواهیم دید.

روی دکمه "Column Filters" کلیک کنید و یک فیلتر را با نام پایگاه داده مشخص کنید

اکنون در Trace فقط پرس و جوهای پایگاه داده "TestBase_8_2" را خواهیم دید.

در صورت تمایل، می‌توانید روی فیلدهای دیگر فیلتر قرار دهید، جالب‌ترین آنها: Duration (Duration)، TextData (معمولاً این متن پرس و جو است) و RowCounts (تعداد ردیف‌های برگردانده شده توسط پرس و جو).

به عنوان مثال، اگر من نیاز داشته باشم که تمام درخواست های جدول "_InfoRg4312" را که بیش از 3 ثانیه طول می کشد در پایگاه داده "TestBase_8_2" دریافت کنم، این کار را انجام می دهم:

الف) فیلتر بر اساس پایگاه داده، مثال نشان داده شده در بالا

ب) بر اساس مدت زمان به میلی ثانیه فیلتر کنید.

ج) بر اساس متن درخواست فیلتر کنید

در اینجا ماسک را مشخص می کنیم. اگر نیاز به ردیابی جستجوهایی دارید که به چندین جدول دسترسی دارند، سپس چندین مورد را در بخش "به نظر می رسد" ایجاد کنید. شرایط همه فیلترها با هم کار می کنند.

7. اکنون می توانید ردیابی را شروع کنید. روی "شروع" کلیک کنید، پس از آن ردیابی شروع به کار می کند، و می توانید رویدادهایی را که برای نمایش پیکربندی کرده اید و در زیر فیلترهای شما قرار می گیرند، مشاهده کنید.

می توانید از دکمه های موجود در نوار فرمان برای کنترل ردیابی استفاده کنید.

از چپ به راست:

پاک کن - پنجره ردیابی را پاک می کند

شروع - ردیابی را شروع می کند

مکث - ردیابی را متوقف می کند، وقتی روی Start کلیک می کنید، ردیابی از سر گرفته می شود

توقف - ردیابی را متوقف می کند

8. پنجره ردیابی خود از دو قسمت تشکیل شده است. رویدادها و ویژگی های رویداد در قسمت بالایی قرار دارند.

قسمت پایین بسته به نوع رویداد اطلاعات متفاوتی را نمایش می دهد. در مورد ما، یا متن درخواست یا طرح آن در اینجا نمایش داده می شود.

9. پرس و جو را در کنسول پرس و جو 1C اجرا کنید و ببینید که چگونه در پروفایلر منعکس می شود.

ردیابی نشان می دهد که چندین درخواست وجود داشته است و فقط یکی از آنها مال ما است. بقیه درخواست ها سرویس است.

10. با ویژگی های رویدادها می توانید بفهمید: پرس و جو چند ثانیه اجرا شده است (Duration)، تعداد قرائت های منطقی (Reads) وجود دارد، پرس و جو در نتیجه چند ردیف برگردانده شده است (RowCounts) و غیره.

در مورد من، پرس و جو 2 میلی ثانیه طول کشید، 4 خواندن منطقی انجام داد و 1 ردیف را برگرداند.

11. اگر یک رویداد بالا برویم، می توانیم طرح پرس و جو را به صورت گرافیکی ببینیم.

همانطور که از طرح مشخص است، جستجو بر اساس شاخص به قیمت انجام می شود، اگرچه این طرح را نمی توان ایده آل نامید، زیرا. ایندکس پوشش داده نمی‌شود، فیلدهای کد و نام با استفاده از KeyLookup به دست می‌آیند که 50 درصد زمان را می‌گیرد.

با استفاده از منوی زمینه، طرح گرافیکی را می توان در یک فایل جداگانه با پسوند *.SQLPlan ذخیره کرد و در یک نمایه ساز در رایانه دیگری یا با استفاده از برنامه پیشرفته تر SQL Sentry Plan Explorer باز کرد.

12. اگر حتی بالاتر برویم، همان طرح پرس و جو را خواهیم دید، اما به صورت متنی.

این طرح است که در TJ، TsUP و سایر کنترل های عملکرد 1C نمایش داده می شود. برای تجزیه و تحلیل آن، توصیه می کنم از یک ویرایشگر متن پیشرفته با برجسته سازی، مانند Notepad++ استفاده کنید.

الف) به فرمت خود پروفایلر، یعنی. با پسوند *.trc

ب) به فرمت xml

ج) می توانید یک الگو از ردیابی بسازید. پاراگراف بعدی را ببینید.

در مرحله بعد، باید یک پایگاه داده در سرور مشخص شده انتخاب کنید و نام جدولی که ردیابی در آن ذخیره می شود را مشخص کنید. می توانید یک جدول موجود را انتخاب کنید یا یک نام جدید بنویسید و سپس جدول به طور خودکار در پایگاه داده انتخاب شده ایجاد می شود.

در این مورد، باید در نظر داشت که Duration در جدول در میلیونم ثانیه ذخیره می شود و هنگام نمایش نتیجه، توصیه می شود مقدار را به میلی ثانیه تبدیل کنید. ستون RowNumber نیز به جدول اضافه می شود که تعداد سطر داده شده در ردیابی را نشان می دهد.

14. اگر اغلب برای تجزیه و تحلیل درخواست ها نیاز به استفاده از نمایه ساز دارید، تنظیم فیلترها و رویدادهای لازم به سرعت خسته کننده می شود و علاوه بر این، زمان زیادی را می طلبد.

الگوهای Trace به کمک می آیند، جایی که فیلترهای مورد نیاز و ترتیب ستون ها را مشخص می کنیم و سپس به سادگی این الگو را هنگام ایجاد یک ردیابی جدید انتخاب می کنیم.

برای ایجاد یک الگو، از منوی File - Templates - New Template استفاده کنید

در تب اول، همه چیز ساده است. نوع سرور، نام قالب را مشخص کنید و در صورت لزوم یک پرچم برای استفاده از این الگو به صورت پیش فرض تعیین کنید.

در تب دوم، رویدادها را انتخاب می کنیم و فیلترها را تنظیم می کنیم، همانطور که در بالا نشان داده شده است.

اکنون هنگام ایجاد یک ردیابی جدید می توانید به سادگی قالب مورد نیاز را مشخص کنید، پس از آن در تب دوم، تمام فیلترها و رویدادها به صورت خودکار پر می شوند.

البته به دور از تمام راه های استفاده از این ابزار فوق العاده در اینجا نشان داده شده است، فکر می کنم در آینده به مجموعه مقالاتی در این زمینه اضافه خواهم کرد.

اگر هنوز سوالی در مورد استفاده از SQL Profiler دارید، در نظرات بپرسید، خوشحال می شوم پاسخ دهم.

امروز ما عملکرد برنامه خود را با استفاده از آن اندازه گیری می کنیم استودیوی تصویریابزار پروفایل.

ابزار پروفایل سازی ویژوال استودیوبه توسعه دهندگان اجازه می دهد تا عملکرد برنامه و کد را اندازه گیری، ارزیابی کنند. این ابزارها به طور کامل در IDE تعبیه شده اند تا به توسعه دهنده کنترل بی وقفه را بدهند.
در این آموزش گام به گام اپلیکیشن را نمایه می کنیم. PeopleTraxاستفاده كردن نمونه برداریو ابزار دقیقتکنیک های پروفایل برای شناسایی مشکلات در عملکرد برنامه

تعداد زیادی عکس.

آموزش

برای تکمیل این راهنما، شما نیاز دارید:
  • Microsoft Visual Studio 2010
  • دانش متوسط ​​C#
  • یک کپی از برنامه آزمایشی PeopleTrax، قابل دانلود از گالری کد MSDN

روش های پروفایل سازی

بیایید کمی از موضوع اصلی مقاله فاصله بگیریم و روش های احتمالی پروفایل را در نظر بگیریم. این فصل را می توان نادیده گرفت، روش های پروفایل مورد استفاده قبل از استفاده به طور خلاصه توضیح داده می شود.
نمونه برداری
نمونه برداری- داده های آماری را در مورد عملکرد برنامه (در طول پروفایل) جمع آوری می کند. این روش سبک وزن است و بنابراین در نتیجه کار آن خطای بسیار کمی در داده های به دست آمده وجود دارد.

هر بازه زمانی معینی اطلاعات مربوط به پشته تماس (پشته تماس) جمع آوری می شود. بر اساس این داده ها، عملکرد محاسبه می شود. برای پروفایل اولیه و شناسایی مشکلات مربوط به استفاده از CPU استفاده می شود.

ابزار دقیق
ابزار دقیق- اطلاعات دقیق در مورد زمان اجرای هر تابع فراخوانی را جمع آوری می کند. برای اندازه گیری عملکرد عملیات I/O استفاده می شود.

این روش کد خود را به یک فایل باینری تزریق می کند که اطلاعات زمان بندی (زمان) را برای هر تابع در فایل و برای هر تابعی که در آن یک فراخوانی می شود جمع آوری می کند.

گزارش شامل 4 مقدار برای ارائه زمان سپری شده است:

  • فراگیر گذشت- کل زمان صرف شده برای اجرای عملکرد
  • برنامه شامل- زمان صرف شده برای اجرای عملکرد، به استثنای زمان تماس با سیستم عامل.
  • انحصاری گذشت- زمان صرف شده برای اجرای کد در بدنه. زمان صرف شده توسط توابع فراخوانی شده توسط تابع هدف.
  • برنامه انحصاری- زمان صرف شده برای اجرای کد در بدنه. زمان صرف شده برای برقراری تماس را حذف می کند سیستم عاملو زمان صرف شده برای اجرای توابع فراخوانی شده توسط تابع هدف.
همزمانی
همزمانی- اطلاعاتی در مورد برنامه های چند رشته ای جمع آوری می کند (نحوه اشکال زدایی برنامه های چند رشته ای، به "راهنمای اشکال زدایی برنامه های چند رشته ای در ویژوال استودیو 2010" مراجعه کنید). این روش هر بار که رشته های رقیب مجبور می شوند برای دسترسی به یک منبع منتظر بمانند، اطلاعات دقیقی در مورد پشته تماس جمع آوری می کند.
حافظه دات نت
حافظه دات نت- نمایه ساز اطلاعاتی را در مورد نوع، اندازه و تعداد اشیایی که در تخصیص ایجاد شده اند یا توسط جمع کننده زباله از بین رفته اند جمع آوری می کند. پروفایل حافظه تأثیر کمی بر عملکرد کلی برنامه ندارد.
تعامل ردیف
تعامل ردیف- اطلاعات مربوط به تماس های همزمان را به فایل پروفایل اضافه می کند ADO.NETبین صفحه ASP.NETیا برنامه های کاربردی دیگر و SQLسرور داده ها شامل تعداد و زمان تماس ها و همچنین حداکثر و حداقل زمان می باشد.

این بررسی روش‌های نمایه‌سازی را به پایان می‌رساند و به یادگیری نحوه پروفایل کردن برنامه‌ها ادامه می‌دهد.

پروفایل به روش نمونه گیری

نمونه برداری یک تکنیک پروفایل است که به طور دوره ای فرآیند مورد نظر را برای تعیین تابع فعال مورد نظرسنجی قرار می دهد. نتیجه تعداد دفعاتی را نشان می دهد که تابع در ابتدای پشته تماس در طول آزمایش بوده است.
پروفایل کردن
افتتاح پروژه آزمایشی PeopleTrax. تنظیمات را روی رهایی(نسخه Debug اطلاعات اضافی را برای اشکال زدایی برنامه تعبیه می کند و تأثیر بدی بر دقت نتایج پروفایل می گذارد).

در منو تجزیه و تحلیلکلیک کنید ویزارد عملکرد را راه اندازی کنید.

در این مرحله باید یک روش پروفایل را انتخاب کنید. CPU Sampling (توصیه می شود) را انتخاب کنید و روی Next کلیک کنید.

ما انتخاب می کنیم که کدام برنامه را نمایه کنیم، این PeopleTraxو دکمه Next در مرحله بعد، روی Finish کلیک کنید و پروفایلر و برنامه ما به طور خودکار شروع می شود. در صفحه ما برنامه PeopleTrax را می بینیم. دکمه را فشار می دهیم مردم را بدست آورید، منتظر اتمام کار و داده های صادراتی. دفترچه یادداشت را می بندیم و برنامه و نمایه ساز گزارشی تولید می کنند.

گزارش ایجاد شده از نمایه ساز (*.vsp)

تجزیه و تحلیل گزارش روش نمونه گیری
AT خلاصهنموداری از استفاده از CPU در کل زمان پروفایل را نمایش می دهد. فهرست کنید مسیر داغشاخه های فراخوانی را نشان می دهد که بیشترین فعالیت را نشان می دهند. و در لیست عملکردهایی که اکثر کارهای فردی را انجام می دهند(که نام آن به خودی خود صحبت می کند) - توابعی که b در بارهزمان پردازش طولانی تر در بدنه این توابع.

با نگاه کردن به لیست مسیر داغمی بینیم که روش PeopleNS.People.GetNamesتقریباً آخرین مکان در شعبه تماس را اشغال می کند. سپس می توان آن را برای بهبود عملکرد بیشتر مورد مطالعه قرار داد. را کلیک کنید PeopleNS.People.GetNamesو پیش روی ما باز می شود جزئیات عملکرد.

این پنجره شامل دو بخش است. پنجره هزینه فراهم می کند نمایش گرافیکیکار توابع، و سهم تابع و فراخوان‌کنندگان آن در تعداد نمونه‌هایی که انتخاب شده‌اند. شما می توانید تابع مورد نظر را با کلیک بر روی آن با ماوس تغییر دهید.

نمای کد تابعکد روش را در صورت موجود بودن نشان می دهد و گران ترین خطوط را در روش انتخابی برجسته می کند. وقتی روش انتخاب می شود GetNamesمشاهده می شود که خطوطی از منابع برنامه را با استفاده از آن می خواند StringReader، اضافه کردن هر خط به ArrayList. هیچ راه واضحی برای بهبود این بخش وجود ندارد.

زیرا PeopleNS.People.GetPeopleتنها کسی که زنگ می زند GetNames- مطبوعات GetPeople. این روش برمی گردد ArrayListاشیاء PersonInformationNS.PersonInformationبا اسامی افراد و شرکت ها برگردانده شده به روش GetNames. با این وجود، GetNamesهر بار که ایجاد می شود دو بار فراخوانی می شود اطلاعات شخص. (این در هایلایت های زرد و قرمز نشان داده شده است). بدیهی است که می توان با ایجاد لیست تنها یک بار در ابتدای متد به راحتی روش را بهینه کرد.

نسخه جایگزین GetPeopleهمچنین در کد موجود است و اکنون آن را روشن می کنیم. برای این کار باید تعریف کنید OPTIMIZED_GETPEOPLEبه عنوان نماد کامپایل شرطی در پنجره خصوصیات پروژه مردمو PeopleTrax. و بله، اگر می خواهید آزمایش های من را تکرار کنید، باید خطای پروژه را برطرف کنید. سازنده کلاس بهینه شده نام منابع را اشتباه نوشته است: به جای PeopleNS.Resource به PeopleNS.Resources نیاز دارید. اگر این تغییر نشود، همه چیز با خطاهای وحشتناکی سقوط می کند.

روش بهینه شده جایگزین روش قدیمی در ساخت بعدی خواهد شد.

با کلیک کردن، نمایه سازی را در جلسه جاری مجدداً شروع کنید با نمایه سازی راه اندازی کنیددر پنجره کاوشگر عملکرد. را کلیک کنید مردم را بدست آوریدو داده های صادراتی. دفترچه یادداشت را می بندیم و برنامه و نمایه ساز گزارش جدیدی تولید می کند.

برای مقایسه دو گزارش، هر دو و RMB را انتخاب کنید مقایسه گزارش های عملکرد. ستون دلتا تفاوت عملکرد نسخه را نشان می دهد خط مبنااز بعد مقایسه. انتخاب کنید % نمونه های فراگیرو اعمال کنید.

همانطور که می بینید، افزایش عملکرد با چشم غیر مسلح قابل مشاهده است.

پروفایل سازی با ابزار دقیق

این روش هنگام پروفایل کردن عملیات I/O، نوشتن روی دیسک و هنگام برقراری ارتباط از طریق شبکه مفید است. این روش اطلاعات بیشتری نسبت به روش قبلی ارائه می دهد، اما هزینه های اضافی بیشتری نیز دارد. باینری ها پس از درج دریافت شدند کد اضافیبزرگتر از حد معمول هستند و قرار نیست مستقر شوند.

این بار ما تجزیه و تحلیل خود را بر روی صادرات داده متمرکز خواهیم کرد، که در آن لیستی از افراد در یک فایل notepad نوشته می شود.

پروفایل کردن
AT کاوشگر عملکردانتخاب کنید ابزار دقیقو روی Start Profileng کلیک کنید. روی دریافت افراد کلیک کنید. پس از آپلود افراد، 10 ثانیه صبر کنید و روی Export Data کلیک کنید. دفترچه یادداشت و برنامه را ببندید. نمایه ساز گزارشی ایجاد می کند.
تحلیل و بررسی
نمایه ساز این تصویر را نشان می دهد:

ما اطلاعاتی را که می خواستیم به دست نیاوردیم. بیایید داده ها را فیلتر کنیم. ما عمداً 10 ثانیه منتظر ماندیم تا داده‌های نمایه‌ای را که در حال حاضر به آن نیاز نداریم فیلتر کنیم. از سیزدهم تا آخر علامت گذاری می کنیم و فشار می دهیم فیلتر بر اساس انتخاب. نتیجه دیگر:

مسیر داغنشان می دهد که روش Concatزمان زیادی می برد (همچنین اولین مورد در لیست توابع با بیشترین کار فردی است). را کلیک کنید Concatبرای مشاهده اطلاعات دقیق در مورد روش.

واضح است که PeopleTrax.Form1.ExportDataتنها روشی است که فراخوانی می کند Concat. کلیک PeopleTrax.Form1.ExportDataدر روش های فراخوانی ( تابعی که این تابع را فراخوانی می کند).

روش را در پنجره کد آنالیز می کنیم. توجه داشته باشید که هیچ تماس مستقیمی با Concat وجود ندارد. در عوض، استفاده از عملوند وجود دارد += ، که کامپایلر با متدهایی جایگزین می کند System.String.Concat. همانطور که تقریباً همه می‌دانند، هر تغییری در رشته‌ها در دات‌نت منجر به تخریب می‌شود نسخه قدیمیرشته و ایجاد یک رشته اصلاح شده. خوشبختانه دات نت یک کلاس دارد StringBuilderکه برای انجام کار طراحی شده است.

پروژه در حال حاضر دارای یک روش بهینه با استفاده از StringBuilder. در پروژه PeopleTrax یک متغیر کامپایل اضافه کنید OPTIMIZED_EXPORTDATA. پروفایلر را دوباره ذخیره و اجرا می کنیم و گزارش ها را با هم مقایسه می کنیم. بلافاصله واضح است (و منطقاً واضح است) که ما تماس های Concat را بهینه کرده ایم (از 6000 تا 0 بار).

پس از راه اندازی برنامه، بهبود قابل توجهی در عملکرد به چشم قابل مشاهده است. اجرای دوباره پروفایل بسیار مهم است، حتی پیشرفت های قابل مشاهده ای نیز وجود دارد. مشاهده داده های جدید پس از رفع مشکل ممکن است سایر مشکلات عملکرد برنامه را آشکار کند.

یکی از ابزارهای مورد علاقه من، SQL Server Profiler است که اغلب به سادگی به عنوان Profiler شناخته می شود. این ابزار داده ها را در مورد هر تعداد رویداد SQL Server با جزئیات نمایش می دهد. این رویدادهای سرور را می توان در پنجره Trace Properties (شکل 49-3) مشاهده کرد و همچنین برای تجزیه و تحلیل بعدی در یک فایل یا جدول ثبت نام کرد. فیلترها را می توان طوری تنظیم کرد که همه رویدادها یا یک زیر مجموعه انتخاب شده از آنها را ثبت کند.

عکس 49.2. AT این مثالپروتکل متر اطلاعات را ثبت می کند

در مورد عملکرد SQL Server در دایرکتوری C:\Perf Logs

SQL Server Profiler را می توان از منوی Tools در Management Studio یا مستقیماً از پوشه SQL Server 2005 در منوی Start راه اندازی کرد. برای مشاهده اکشن‌ها، یا باید یک ردیابی جدید تعریف کنید یا از یک فایل موجود استفاده کنید.

SQL Server Profiler اکنون با SP1 در دسترس است ردیابی حجم زیادی از داده ها در رایانه های بزرگ

علاوه بر این، هنگام نظارت بر سرویس تجزیه و تحلیل، زمان قبلاً در زمان همگام سازی جهانی (UTC) نمایش داده می شد. در حال حاضر با استفاده از محلی زمان سیستم. پیش از این، رویدادهای با موفقیت بازتولید شده به اشتباه شمارش می شدند، در نتیجه، کاربر آمار نادرستی دریافت می کرد. این مشکل رفع شده است.

تعریف ردیابی جدید

هنگامی که یک ردیابی جدید ایجاد می شود (با استفاده از دستور منوی File^New Trace یا دکمه نوار ابزار New Trace)، یک اتصال جدید به SQL Server نیز ایجاد می شود و کادر محاوره ای Trace Properties باز می شود (شکل 49-4). در تب General این پنجره، ردیابی پیکربندی شده است (به ویژه نام، محل فایل و غیره)، و در تب Events Selection، رویدادها، داده ها و فیلترهایی که باید ثبت شوند، تعریف می شوند. اگر ردیابی در حال اجرا باشد، این گزینه ها قابل مشاهده هستند اما تغییر نمی کنند. یک پیکربندی ردیابی را می توان به عنوان یک الگو ذخیره کرد تا ایجاد ردیابی های جدید در آینده آسان تر شود.

برنج. 49.4. برگه انتخاب رویدادها در پنجره Trace Properties به شما امکان می دهد رویدادهای ردیابی شده توسط ابزار Profiler را انتخاب کنید.

ردیابی را می توان در زمان واقعی مشاهده کرد، اما داده ها را می توان همزمان در یک فایل یا جدول SQL Server نوشت. این برای بعد مفید است تحلیل فکری، مقایسه با داده های شمارنده مانیتور سیستم، یا برای وارد کردن به مشاور تنظیم موتور پایگاه داده.

هنگامی که خوانش ها در یک فایل نوشته می شوند، برای بهبود عملکرد در زنجیره های 128 کیلوبایتی به هم متصل می شوند. به طور مشابه، هنگام نوشتن روی یک جدول، داده ها در چندین ردیف گروه بندی می شوند.

برای ذخیره داده های گرفته شده توسط Profiler برای تجزیه و تحلیل بعدی، از یک عملکرد بالا استفاده کنید روش فایل، و همچنین ردیابی سرور (در ادامه در مورد آن صحبت خواهیم کرد). اگر می خواهید داده ها را با دستورالعمل های T-SQL، دقیقاً از همین روش استفاده کنید، اما پس از پایان جلسه ردیابی، فایل حاصل را در ابزار Profiler باز کنید و دستور File^Save As^Table را از منو انتخاب کنید.

انتخاب رویداد

تب Events Selection اقدامات انجام شده توسط سرور پایگاه داده را که توسط ابزار Profiler ثبت می شود، تعریف می کند. مانند یک نمایشگر عملکرد، Profiler می تواند بسیاری از رویدادهای کلیدی SQL Server را ردیابی کند. برای ساده کردن تنظیمات انتخاب، می توانید از الگوهای پیش فرض استفاده کنید.

I رویداد SQL Batch Completed بر اساس اجرای دسته های T-SQL در

SVS به عنوان یک کل (بسته هایی که توسط پایان دهنده ها از هم جدا شده اند)، نه دستورالعمل های فردی آنها.

| * بر این اساس، Profiler بدون توجه به تنها یک رویداد، داده ها را ثبت می کند

سیمو در طول بسته. برای ثبت اجرای دستورالعمل های فردی

DML، از رویداد SQL Statement Complete استفاده کنید.

نمی توان از همه رویدادها برای بازتولید ردیابی استفاده کرد. به عنوان مثال، رویداد SQL Batch Start را می توان دوباره پخش کرد، اما رویداد SQL Batch Complete نمی تواند.

بسته به رویدادها، داده های مختلفی برای ردیابی در دسترس می شود. اگرچه ستون داده SPID اختیاری به نظر می رسد، این تصور گمراه کننده است - لازم است.

فیلتر کردن رویداد

برنامه Profiler قادر است اطلاعات زیادی را برای شما جمع آوری کند که به راحتی می تواند یک درایو دیسک را در یک چشم به هم زدن پر کند. خوشبختانه، فیلتر ارائه شده توسط برنامه (شکل 49.5) به شما کمک می کند این آرایه را فقط به داده هایی که به آنها علاقه دارید محدود کنید.

برنج. 49.6. SQL Server Profiler می‌تواند داده‌های نظارت بر عملکرد را یکپارچه کند و آن‌ها را با رویدادهای ردیابی شده همگام نگه دارد

با استفاده از SQL Trace

SQL Profiler معمولاً به صورت تعاملی استفاده می شود و برای جمع آوری داده های متناوب کافی است. با این حال، ردیابی طولانی می تواند به راحتی صدها هزار رکورد را جمع آوری کند، که می تواند مشکلات بسیار خاصی را در ایستگاه کاری که ردیابی را اجرا می کند، ایجاد کند. راه حل این است که یک گزارش ردیابی مستقیماً روی سرور ایجاد کنید. چنین ردیابی باعث یک بار اضافی کوچک بر روی سرور می شود. در این صورت فایل ها در بلوک های 128 کیلوبایتی نوشته می شوند.

AT سیستم های صنعتیردیابی در سمت سرور، نوشتن داده ها بر روی یک فایل در سرور است بهترین راهمجموعه اطلاعات

در مورد عملکرد و به حداقل رساندن بار اضافی روی سرور.

ردیابی که روی سرور اجرا می شود را می توان با استفاده از مجموعه ای از رویه های ذخیره شده سیستم تعریف و پیاده سازی کرد. می توانید کد را خودتان بنویسید یا از برنامه SQL Server Profiler استفاده کنید.

هنگامی که ردیابی در SQL Server Profiler پیکربندی و آزمایش شد، File^Export^Trace Definition^For SQL Server 2005 را از منو انتخاب کنید تا یک اسکریپت T-SQL با قابلیت ردیابی سمت سرور تولید شود.

I برای اینکه بفهمید کدام ردپاها روی سرور اجرا می شوند، عبارت را جستجو کنید

SVS به دیدگاه مدیریتی ما از systraces. هنگامی که به نتایج I * این پرس و جو نگاه می کنید، ردیابی های اضافی را مشاهده خواهید کرد. شماره * اول همیشه دارای یک به اصطلاح ردیابی پیش فرض است که داده ها را برای گزارش های SQL Server جمع آوری می کند - نمی توان آن را متوقف کرد.

برای متوقف کردن ردیابی سرور، از روش ذخیره شده سیستم sp_trace_setstatus استفاده کنید. آرگومان اول آن (traceid) شناسه ردیابی است و دومی ماهیت عمل را مشخص می کند. پارامتر عمل صفر باعث می شود که ردیابی متوقف شود، یک آن را شروع کند و دو آن را ببندد و حذف کند. کد زیر ردیابی شماره 2 را متوقف می کند.

SQL Profiler- ابزار نرم افزاریبرای ردیابی SQL Server استفاده می شود. "ردیابی" - جلسه جمع آوری اطلاعات در مورد عملکرد SQL Server 2008

هدف اصلی:

SQL Profiler توسط مدیران برای موارد زیر استفاده می شود:

تجزیه و تحلیل برنامه؛

تعیین بهینه بودن درخواست های ارسال شده به سرور؛

· شناسایی دستورات Transact-SQL که باعث خطا می شوند.

جمع آوری اطلاعات در مورد فعالیت کاربر در یک دوره زمانی طولانی؛

نظارت بر عملکرد سرور در زمان واقعی

فرصت های تازه:

آ. پروفایل سازی خدمات تجزیه و تحلیل;

ب نمایه سازی رویدادهای خدمات یکپارچه سازی؛

ج توانایی ضبط قرائت شمارنده از مانیتور عملکرد هنگام ضبط اطلاعات اجرای دستور.

د بسیاری از رویدادها و منابع اطلاعاتی جدید به Profiler اضافه شده اند که می توان آنها را برای نوشتن در فایل ردیابی انتخاب کرد.

f. امکان گروه بندی رویدادها در پنجره نمایه ساز.

کار با SQL Server Profiler

1. SQL Server Profiler - را از منو اجرا کنید Startà Programsà SQL Server 2008à Performance Toolsà SQL Server Profiler.

2. در پنجره باز شده در منو فایلانتخاب کنید ردیابی جدیدو به سرور SQLسرور 2008 که ما بر آن نظارت خواهیم کرد.

3. تنظیمات جلسه را در پنجره پیکربندی کنید ویژگی های ردیابی، که به طور خودکار قبل از شروع یک جلسه ردیابی باز می شود (شکل 8.1 را ببینید).

برنج. 8.1.تنظیم گزینه های جلسه ردیابی

آ. روی زبانه عمومیرا از لیست انتخاب کنید از قالب استفاده کنیدمناسب ترین قالب الگو با استفاده از منو انتخاب می شود فایل à قالب هادر SQL Server Profiler. در ابتدا، شما هشت الگو در اختیار دارید:

1). استاندارد (پیش فرض)- یک الگوی پیش فرض که به شما امکان می دهد تمام رویه های ذخیره شده و دستورات Transact-SQL را که برای اجرا اجرا می شوند ردیابی کنید.

2). SP_Counts- مجموعه ای از اطلاعات در مورد رویه های ذخیره شده و توابع راه اندازی شده برای اجرا، مرتب شده بر اساس نام؛

3). TSQL- مجموعه ای از اطلاعات در مورد تمام دستورات Transact-SQL که برای اجرا در سرور راه اندازی شده اند که نشان دهنده شناسه فرآیندهای کاربر و زمان شروع است.

4). TSQL_Duration- مشابه قالب قبلی، اما به جای اطلاعات مربوط به زمان شروع دستور TSQL، مدت زمان اجرای آن ثبت می شود.

5). TSQL_Grouped- علاوه بر اطلاعات مربوط به کد دستور Transact-SQL و زمان اجرای آن، اطلاعات مربوط به نام برنامه نیز ثبت می شود. حسابکاربر در سیستم عامل و حساب کاربری که برای اتصال استفاده شده است.



6). TSQL_Replay- ثبت دقیق ترین اطلاعات در مورد دستورات اجرا شده Transact-SQL.

7). TSQL_SPs- علاوه بر ثبت اطلاعات مربوط به شروع شروع رویه ذخیره شده (SP:Starting)، اطلاعات مربوط به اجرای هر یک از دستورات رویه ذخیره شده نیز ثبت می شود (SP:StmtStarting).

8). تنظیم- برای جمع آوری اطلاعات مورد نیاز توسط مشاور تنظیم پایگاه داده استفاده می شود.

ب روی زبانه عمومیاگر لازم است مکان ذخیره اطلاعات ردیابی را مشخص کنید:

یک). اطلاعات ردیابی را می توان در یک فایل (به طور پیش فرض 5 مگابایت) ثبت کرد:

· پارامتر Rollover فایل را فعال کنیدتعیین می کند که آیا پر کردن یک فایل به طور خودکار فایل بعدی را ایجاد می کند یا خیر. نام فایل بعدی با نام فایل قبلی یکی خواهد بود، اما یک عدد به نام آن اضافه می شود (1، 2، 3 و ...)

· پارامتر سرور داده های ردیابی را پردازش می کندمی توان برای افزایش قابلیت اطمینان ثبت اطلاعات ردیابی استفاده کرد. پس از انتخاب این کادر، سرور اطلاعات ردیابی را پردازش می کند.

2). اطلاعات ردیابی را می توان در جدول SQL Server ذخیره کرد. یک جدول با مجموعه ستون های مورد نظر به طور خودکار ایجاد می شود.

3). با استفاده از پارامتر زمان توقف ردیابی را فعال کنیدمی توانید زمانی را مشخص کنید که ردیابی به طور خودکار خاموش شود.

ج روی زبانه انتخاب رویدادتعیین پارامترهای جمع آوری اطلاعات در جدول این تب باید رویدادهای مورد نیاز (در ردیف) و اطلاعات (در ستون) که برای آنها ثبت می شود را انتخاب کنید. برای نمایش تمام سطرها و ستون ها، باید کادرها را علامت بزنید نمایش همه رویدادهاو نمایش همه ستون ها.

یک). با یک دکمه فیلترهای ستونی(فیلترهای ستونی) فیلترها را برای جمع آوری اطلاعات لازم پیکربندی می کند (عملکردهای انجام شده در یک پایگاه داده خاص، یا توسط یک برنامه خاص، یا توسط یک کاربر خاص) - پسندیدنیا نه مانند;

2). با استفاده از دکمه سازماندهی ستون ها(Organize Columns) ترتیب ستون ها را برای نمایش یا ضبط در نمایه ساز با قابلیت گروه بندی داده ها - بخش گروه پیکربندی کنید.

4. پس از تنظیم تمام پارامترهای ردیابی، روی دکمه کلیک کنید اجرا کن(شروع) (شکل 8.2 را ببینید)

برنج. 8.2.مشاهده اطلاعات در طول یک جلسه ردیابی

قسمت بالای پنجره وقایع روی سرور را نمایش می دهد و قسمت پایین نشان می دهد اطلاعات دقیقبرای هر رویداد (به عنوان مثال، کد دستوری SQL).

ویژگی های موجود در پنجره ردیابی:

1. اگر در زبانه سازماندهی ستون هادر ویژگی های قالب که ستون هایی را برای گروه بندی انتخاب کرده اید، می توانید رکوردها را بر اساس این ستون ها در پنجره مشاهده گروه بندی کنید. برای این منظور منو چشم اندازدستور ارائه شده است نمای گروهی;

2. اگر در لیست گروهفقط یک ستون قرار داده شده است، سپس شما می توانید از حالت نمایش استفاده کنید نمای تجمیع شده(شکل 8.3 را ببینید). این حالت با دستور فعال می شود نمای تجمیع شدهاز همان منو چشم انداز.

برنج. 8.3.حالت نمایش نمای تجمیع شده

3. می توانید رویدادهای ذخیره شده در فایل های ردیابی و جداول را در پروفایلر باز کنید. همچنین امکان تکرار عملیات ثبت شده با استفاده از منو وجود دارد بازپخش;

4. می توانید اطلاعات ردیابی را به شمارنده های عملکرد مانیتور سیستم پیوند دهید. برای این:

یک جلسه ردیابی را تعریف کنید که در طی آن اطلاعات ستون ها باید نوشته شود زمان شروعو زمان پایان;

· راه اندازی یک جلسه ردیابی با اطلاعات نوشته شده در یک فایل یا جدول. همزمان با آن، یک پروتکل از قرائت های متر را در یک فایل جمع آوری کنید نظارت بر کارایی;

باز کن اطلاعات جمع آوری شدهاز فایل trace در پروفایلر، و سپس از دستور استفاده کنید وارد کردن داده های عملکرداز منو فایل.