Publikowanie symboli za pomocą usługi Azure Pipelines

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Za pomocą usługi Azure Pipelines możesz opublikować symbole na serwerze symboli usługi Azure Artifacts przy użyciu zadania Źródła indeksu i opublikować symbole . Możesz użyć debugera, aby nawiązać połączenie i automatycznie pobrać poprawne pliki symboli bez znajomości nazw produktów, numerów kompilacji lub nazw pakietów. Za pomocą usługi Azure Pipelines można również publikować symbole w udziałach plików i przenośnych plikach PDB.

Uwaga

Zadanie Indeksowanie źródeł i symboli publikowania nie jest obsługiwane w potokach wydania.

Publikowanie symboli na serwerze symboli usługi Azure Artifacts

  1. Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.

  2. Wybierz pozycję Potoki, wybierz potok, a następnie wybierz pozycję Edytuj , aby zmodyfikować potok.

  3. W definicji potoku wybierz pozycję + , aby dodać nowe zadanie.

  4. Wyszukaj zadanie Indeksuj źródła i opublikuj symbole. Wybierz pozycję Dodaj , aby dodać go do potoku.

  5. Wypełnij wymagane pola w następujący sposób:

    • Wersja zadania: 2.\*.

    • Nazwa wyświetlana: nazwa wyświetlana zadania.

    • Ścieżka do folderu symboli: ścieżka do folderu obsługującego pliki symboli.

    • Wzorzec wyszukiwania: wzorzec używany do lokalizowania plików .pdb w folderze wyznaczonym w obszarze Ścieżka do folderu symboli. Obsługiwane są symbole wieloznaczne z jednym folderem (*) i cykliczne symbole wieloznaczne (**). Przykład: *\bin**.pdb: wyszuka wszystkie pliki .pdb we wszystkich podkatalogach o nazwie bin.

    • Źródła indeksów: wskazuje, czy należy wstrzyknąć informacje o serwerze źródłowym do plików PDB.

    • Symbole publikowania: wskazuje, czy opublikować pliki symboli.

      • Typ serwera symboli: wybierz pozycję Serwer symboli w tej organizacji/kolekcji (wymaga usługi Azure Artifacts), aby opublikować symbole na serwerze symboli usługi Azure Artifacts.
    • Pełne rejestrowanie: podaj więcej informacji w dziennikach.

Zrzut ekranu przedstawiający sposób konfigurowania źródeł indeksu i publikowania symboli w celu publikowania symboli na serwerze symboli usługi Azure Artifacts.

Publikowanie symboli w udziale plików

Oprócz serwera symboli usługi Azure Artifacts można również opublikować symbole w udziale plików przy użyciu zadania Źródła indeksu i Publikuj symbole .

  1. Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.

  2. Wybierz pozycję Potoki, wybierz potok, a następnie wybierz pozycję Edytuj , aby zmodyfikować potok.

  3. W definicji potoku wybierz pozycję + , aby dodać nowe zadanie.

  4. Wyszukaj zadanie Indeksuj źródła i opublikuj symbole. Wybierz pozycję Dodaj , aby dodać go do potoku.

  5. Wypełnij wymagane pola w następujący sposób:

    • Wersja zadania: 2.\*.

    • Nazwa wyświetlana: nazwa wyświetlana zadania.

    • Ścieżka do folderu symboli: ścieżka do folderu obsługującego pliki symboli.

    • Wzorzec wyszukiwania: wzorzec używany do lokalizowania plików .pdb w folderze wyznaczonym w obszarze Ścieżka do folderu symboli.

    • Źródła indeksów: wskazuje, czy należy wstrzyknąć informacje o serwerze źródłowym do plików PDB.

    • Symbole publikowania: wskazuje, czy opublikować pliki symboli.

      • Typ serwera symboli: wybierz pozycję Udział plików, aby opublikować symbole w udziale plików.
      • Ścieżka do publikowania symboli: udział plików, który będzie hostować symbole.
    • Pełne rejestrowanie: sprawdź, czy w dziennikach znajdują się więcej informacji.

    Zrzut ekranu przedstawiający sposób konfigurowania źródeł indeksu i publikowania symboli w celu publikowania symboli w udziale plików.

Publikowanie przenośnych plików PDB na serwerze symboli usługi Azure Artifacts

Przenośne pliki PDB to pliki symboli, które można tworzyć i używać na wszystkich platformach w przeciwieństwie do tradycyjnych plików PDB, które są używane tylko w systemie Windows. W przypadku przenośnych plików PDB kompilacja wykonuje indeksowanie, ale nadal musisz użyć zadania Źródła indeksu i Opublikuj symbole, aby opublikować symbole .

Link źródłowy to zestaw narzędzi, które umożliwiają deweloperom debugowanie kodu źródłowego przez mapowanie z zestawów platformy .NET z powrotem do kodu źródłowego. Zapoznaj się z repozytorium dotnet/sourcelink w witrynie GitHub, aby dowiedzieć się więcej o różnych dołączonych pakietach.

  • W przypadku projektów hostowanych w usłudze GitHub dodaj Microsoft.SourceLink.GitHub odwołanie do pakietu do pliku projektu.

    <ItemGroup>
      <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" PrivateAssets="All"/>
    </ItemGroup>
    
  • W przypadku projektów hostowanych w usłudze Azure Repos (dawniej Visual Studio Team Services) dodaj Microsoft.SourceLink.AzureRepos.Git odwołanie do pakietu do pliku projektu.

    <ItemGroup>
      <PackageReference Include="Microsoft.SourceLink.AzureRepos.Git" Version="1.1.1" PrivateAssets="All"/>
    </ItemGroup>
    
  • W przypadku projektów hostowanych na serwerze Azure DevOps Server (byłym serwerze Team Foundation Server) dodaj Microsoft.SourceLink.AzureDevOpsServer.Git odwołanie do pakietu do pliku projektu.

    <ItemGroup>
      <PackageReference Include="Microsoft.SourceLink.AzureDevOpsServer.Git" Version="1.1.1" PrivateAssets="All"/>
    </ItemGroup>
    

Konfigurowanie zadania publikowania

Zadanie Źródła indeksu i publikowanie symboli służy do indeksowania kodu źródłowego i publikowania symboli na serwerze i udziałach plików w usłudze Azure Artifacts. Ponieważ używamy linku źródłowego, musimy wyłączyć indeksowanie w zadaniu publikowania.

  1. Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.

  2. Wybierz pozycję Potoki, wybierz potok, a następnie wybierz pozycję Edytuj , aby zmodyfikować potok.

  3. W definicji potoku wybierz pozycję + , aby dodać nowe zadanie.

  4. Wyszukaj zadanie Indeksuj źródła i opublikuj symbole. Wybierz pozycję Dodaj , aby dodać go do potoku.

  5. Wypełnij wymagane pola i wybierz pozycję Serwer symboli dla typu serwera symboli. Upewnij się, że nie zaznaczono opcji Źródła indeksów, aby wyłączyć indeksowanie.

    Zrzut ekranu przedstawiający sposób konfigurowania zadania publikowania w celu publikowania przenośnych plików PDB na serwerze symboli usługi Azure Artifacts.

Ważne

Aby usunąć symbole opublikowane za pomocą zadania Źródła indeksu i publikuj symbole , należy najpierw usunąć kompilację, która wygenerowała te symbole. Można to zrobić przy użyciu zasad przechowywania lub ręcznie usuwając przebieg.

Konfigurowanie programu Visual Studio

Uwaga

Visual Studio dla komputerów Mac nie obsługuje debugowania przy użyciu serwerów symboli.

Przed rozpoczęciem korzystania z symboli z serwera symboli usługi Azure Artifacts upewnij się, że program Visual Studio jest prawidłowo skonfigurowany:

  1. W programie Visual Studio wybierz pozycję Narzędzia, a następnie pozycję Opcje.

  2. Wybierz pozycję Symbole z menu Debugowanie .

  3. Wybierz znak, + aby dodać nową lokalizację serwera symboli.

    Zrzut ekranu przedstawiający sposób dodawania nowej lokalizacji serwera symboli.

  4. Zostanie wyświetlone nowe okno dialogowe, wybierz swoje konto z menu rozwijanego, a następnie wybierz organizację, z którą chcesz nawiązać połączenie. Po zakończeniu wybierz pozycję Połączenie.

  5. Wybierz pozycję Ogólne w tej samej sekcji Debugowanie . Przewiń w dół i zaznacz opcję Włącz obsługę linków źródłowych, aby włączyć obsługę przenośnych plików PDB.

    Zrzut ekranu przedstawiający sposób włączania obsługi linków źródłowych w programie Visual Studio.

Uwaga

Zaznaczenie opcji Włącz obsługę serwera źródłowego umożliwia użycie serwera źródłowego w przypadkach, gdy kod źródłowy jest niedostępny lokalnie lub plik symboli nie jest zgodny z kodem źródłowym. Jeśli chcesz włączyć debugowanie kodu źródłowego innej firmy, usuń zaznaczenie pola wyboru Włącz tylko mój kod .

Często zadawane pytania

Pyt.: Jaki jest czas przechowywania symboli?

1: Plik symboli ma ten sam okres przechowywania co kompilacja, która ją wygenerowała. Usunięcie kompilacji ręcznie lub przy użyciu zasad przechowywania spowoduje również usunięcie symboli wygenerowanych przez kompilację.

Pyt.: Czy można używać indeksowania źródłowego na przenośnym pliku PDB wygenerowanym na podstawie zestawu platformy .NET Core?

1: Nie jest to możliwe w tej chwili. Indeksowanie źródłowe nie jest obecnie obsługiwane w przypadku przenośnych plików PDB. Zalecaną metodą jest skonfigurowanie kompilacji w celu przeprowadzenia indeksowania.