Bagikan melalui


Menambahkan tanda pengguna ke garis waktu pembuatan profil (C#, C++)

Tanda Pengguna memungkinkan Anda melacak peristiwa kustom terhadap alat pembuatan profil Visual Studio dengan menambahkan fungsi tanda pengguna ke dalam kode Anda. Tanda pengguna muncul sebagai tanda visual pada grafik garis waktu. Anda dapat melakukan ini untuk melacak satu peristiwa, atau melacak rentang. Misalnya, Anda dapat melacak rentang peristiwa "stop" dan "start".

Cuplikan layar memperlihatkan tanda pengguna pembuatan profil.

Catatan

Fitur ini memerlukan Visual Studio 2022 versi 17.11 Pratinjau 3. Fitur ini tersedia di Profiler Performa dan bukan saat penelusuran kesalahan di Hub Diagnostik.

Penginstalan dan konfigurasi

Anda dapat menginstal dukungan untuk fitur tersebut menggunakan paket NuGet atau dengan menambahkan file sumber yang benar.

  • Instal menggunakan Paket NuGet (C#)

    Unduh paket, Microsoft.VisualStudio.DiagnosticsHub.UserMarks.

  • Instal dengan menambahkan file sumber (C#, C++)

    Setelah menginstal Visual Studio, buka folder berikut: [VS jalur penginstalan]\Common7\IDE\CommonExtensions\Platform\DiagnosticsHub.

    Untuk kode C#, tambahkan UserMarks.cs dan UserMarksRange.cs ke proyek Anda.

    Untuk kode C++ asli, tambahkan UserMarks.h ke proyek Anda.

Menambahkan tanda pengguna (C#)

Tambahkan definisi praprosesor berikut ke konfigurasi build proyek: DIAGHUB_ENABLE_TRACE_SYSTEM.

Untuk menambahkan definisi di Visual Studio:

  1. Klik kanan proyek di Penjelajah Solusi lalu pilih Properti.

  2. Pilih Bangun > simbol kompilasi Bersyar umum>.

  3. Di bidang simbol kustom untuk build Debug dan Rilis, tambahkan DIAGHUB_ENABLE_TRACE_SYSTEM sebagai definisi pra-prosesor.

Tambahkan objek tanda pengguna dan keluarkan. Kode berikut menunjukkan contoh penambahan tanda pengguna.

using Microsoft.DiagnosticsHub;

// Create a user mark
var myUserMark = new UserMarks("MyMark");

// Emit the usermark
myUserMark.Emit("Event happened!");

// Emit statically
UserMarks.EmitMessage("Emitting just a message");

// Emitting a range
using (var myRange = new UserMarkRange("MyMethodRange"))
{
   // Your code here
}

Menambahkan tanda pengguna (C++)

Untuk menggunakan API tanda pengguna asli, tambahkan UserMarks.h ke proyek dan tambahkan kode berikut di aplikasi Anda:

#define DIAGHUB_ENABLE_TRACE_SYSTEM
#include "UserMarks.h"
DIAGHUB_DECLARE_TRACE;

// Start the trace system
DIAGHUB_START_TRACE_SYSTEM();

// Initialize user marks
USERMARKS_INITIALIZE(L"User mark name");

// Initialize user mark range
USERMARKRANGE_INITIALIZE(L"Range name");

// Emit events
USERMARKS_EMIT(L"Message to emit with user mark");
USERMARKRANGE_START(L"Message to emit with range");
USERMARKRANGE_END();

// Stop the trace system
DIAGHUB_STOP_TRACE_SYSTEM();

Menampilkan tanda pengguna

  1. Dengan proyek Anda terbuka di Visual Studio, buka Profiler Performa (Alt + F2), lalu pilih alat dan pilih tombol Mulai .

  2. Pastikan kode tanda pengguna yang Anda tambahkan ke aplikasi Anda berjalan.

    Tanda pengguna ditampilkan pada penggaris di atas grafik garis waktu dan dalam tabel dengan detail tentang tanda waktu, proses terkait, dan pesan apa pun yang Anda keluarkan.

    Di garis waktu, tanda pengguna muncul sebagai segitiga terbalik.

  3. Di panel Ringkasan , pilih Perlihatkan tanda pengguna untuk melihat detail tentang tanda pengguna.

    Cuplikan layar memperlihatkan garis waktu.

    Detail muncul di tab Tanda Pengguna.

    Cuplikan layar memperlihatkan tanda pengguna.

  4. Untuk melihat detail tanda pengguna di garis waktu, arahkan mouse ke atas tanda di penggaris.

    Cuplikan layar memperlihatkan mengarahkan kumparan ke tanda pengguna.

  5. Untuk memfilter tampilan detail, pilih rentang waktu dalam grafik garis waktu, atau klik kanan baris dan pilih waktu mulai dan berakhir untuk memfilter grafik garis waktu.

    Anda juga dapat memfilter tampilan dengan mengatur interval pada rentang atau dengan memilih beberapa tanda pengguna.

    Cuplikan layar memperlihatkan pengaturan interval tanda pengguna.