Zasoby usługi Application Insights oparte na obszarze roboczym

Zasoby oparte na obszarze roboczym Szczegółowe informacje aplikacji usługi Azure Monitorintegrują usługę Application Szczegółowe informacje i Log Analytics.

W przypadku zasobów opartych na obszarze roboczym usługa Application Szczegółowe informacje wysyła dane telemetryczne do wspólnego obszaru roboczego usługi Log Analytics, zapewniając pełny dostęp do wszystkich funkcji usługi Log Analytics przy zachowaniu dzienników aplikacji, infrastruktury i platformy w jednej skonsolidowanej lokalizacji. Ta integracja umożliwia wspólną kontrolę dostępu opartą na rolach platformy Azure w zasobach i eliminuje potrzebę zapytań między aplikacjami/obszarami roboczymi.

Uwaga

Pozyskiwanie i przechowywanie danych dla zasobów aplikacji opartych na obszarze roboczym Szczegółowe informacje są rozliczane za pośrednictwem obszaru roboczego usługi Log Analytics, w którym znajdują się dane. Aby dowiedzieć się więcej na temat rozliczeń dla zasobów usługi Application Szczegółowe informacje opartych na obszarze roboczym, zobacz Szczegóły cennika dzienników usługi Azure Monitor.

Nowe możliwości

Aplikacja oparta na obszarze roboczym Szczegółowe informacje integruje się z usługami Azure Monitor i Log Analytics, aby zwiększyć możliwości:

  • Klucz zarządzany przez klienta szyfruje dane magazynowane tylko przy użyciu kluczy, do których uzyskujesz dostęp.
  • Usługa Azure Private Link bezpiecznie łączy usługi Azure PaaS z siecią wirtualną przy użyciu prywatnych punktów końcowych.
  • Funkcja Bring Your Own Storage (BYOS) dla profilera i debugera migawek umożliwia zarządzanie danymi z programu Application Szczegółowe informacje Profiler i Snapshot Debugger przy użyciu zasad szyfrowania, okresu istnienia i dostępu do sieci.
  • Warstwy zobowiązania oferują do 30% oszczędności w porównaniu z płatnością zgodnie z rzeczywistym użyciem.
  • Przesyłanie strumieniowe usługi Log Analytics przetwarza dane szybciej.

Tworzenie zasobu opartego na obszarze roboczym

Zaloguj się do witryny Azure Portal i utwórz zasób aplikacji Szczegółowe informacje.

Zrzut ekranu przedstawiający zasób aplikacji Szczegółowe informacje oparty na obszarze roboczym.

Jeśli nie masz istniejącego obszaru roboczego usługi Log Analytics, zapoznaj się z dokumentacją tworzenia obszaru roboczego usługi Log Analytics.

Zasoby oparte na obszarze roboczym są obecnie dostępne we wszystkich regionach komercyjnych i w usłudze Azure Government. Posiadanie Szczegółowe informacje aplikacji i usługi Log Analytics w dwóch różnych regionach może mieć wpływ na opóźnienie i zmniejszyć ogólną niezawodność rozwiązania do monitorowania.

Po utworzeniu zasobu zobaczysz odpowiednie informacje o obszarze roboczym w okienku Przegląd .

Zrzut ekranu przedstawiający nazwę obszaru roboczego.

Wybierz niebieski tekst linku, aby przejść do skojarzonego obszaru roboczego usługi Log Analytics, w którym można korzystać z nowego ujednoliconego środowiska zapytań obszaru roboczego.

Uwaga

Nadal zapewniamy pełną zgodność z poprzednimi wersjami dla aplikacji Szczegółowe informacje klasycznych zapytań dotyczących zasobów, skoroszytów i alertów opartych na dziennikach. Aby wykonać zapytanie lub wyświetlić nową strukturę lub schemat tabel opartych na obszarze roboczym, musisz najpierw przejść do obszaru roboczego usługi Log Analytics. Wybierz pozycję Dzienniki (analiza) w okienkach Szczegółowe informacje aplikacji, aby uzyskać dostęp do klasycznego środowiska zapytań usługi Application Szczegółowe informacje.

Kopiowanie parametrów połączenia

Parametry połączenia identyfikuje zasób, z którym chcesz skojarzyć dane telemetryczne. Można go również użyć do modyfikowania punktów końcowych używanych przez zasób jako miejsca docelowego dla telemetrii. Musisz skopiować parametry połączenia i dodać ją do kodu aplikacji lub do zmiennej środowiskowej.

Konfigurowanie monitorowania

Po utworzeniu zasobu Szczegółowe informacje aplikacji opartej na obszarze roboczym należy skonfigurować monitorowanie.

Monitorowanie aplikacji opartych na kodzie

W przypadku monitorowania aplikacji opartych na kodzie należy zainstalować odpowiedni zestaw SDK usługi Application Szczegółowe informacje i wskazać parametry połączenia nowo utworzony zasób.

Aby uzyskać informacje na temat konfigurowania zestawu SDK usługi Application Szczegółowe informacje na potrzeby monitorowania opartego na kodzie, zobacz następującą dokumentację specyficzną dla języka lub platformy:

Monitorowanie bez użycia kodu

W celu monitorowania bez kodu usług, takich jak Azure Functions i aplikacja systemu Azure Services, możesz najpierw utworzyć zasób aplikacji Szczegółowe informacje oparty na obszarze roboczym. Następnie należy wskazać ten zasób podczas konfigurowania monitorowania. Alternatywnie możesz utworzyć nowy zasób usługi Application Szczegółowe informacje w ramach włączania usługi Application Szczegółowe informacje.

Automatyczne tworzenie zasobu

Interfejs wiersza polecenia platformy Azure

Aby uzyskać dostęp do poleceń interfejsu wiersza polecenia platformy Azure Szczegółowe informacje aplikacji w wersji zapoznawczej, należy najpierw uruchomić następujące polecenie:

 az extension add -n application-insights

Jeśli polecenie nie zostanie uruchomione az extension add , zostanie wyświetlony komunikat o błędzie informujący o błędzie az : ERROR: az monitor: 'app-insights' is not in the 'az monitor' command group. See 'az monitor --help'.

Teraz możesz uruchomić następujący kod, aby utworzyć zasób aplikacji Szczegółowe informacje:

az monitor app-insights component create --app
                                         --location
                                         --resource-group
                                         [--application-type]
                                         [--ingestion-access {Disabled, Enabled}]
                                         [--kind]
                                         [--only-show-errors]
                                         [--query-access {Disabled, Enabled}]
                                         [--tags]
                                         [--workspace]

Przykład

az monitor app-insights component create --app demoApp --location eastus --kind web -g my_resource_group --workspace "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test1234/providers/microsoft.operationalinsights/workspaces/test1234555"

Aby uzyskać pełną dokumentację interfejsu wiersza polecenia platformy Azure dla tego polecenia, zobacz dokumentację interfejsu wiersza polecenia platformy Azure.

Azure PowerShell

Utwórz nowy zasób aplikacji opartej na obszarze roboczym Szczegółowe informacje.

New-AzApplicationInsights -Name <String> -ResourceGroupName <String> -Location <String> -WorkspaceResourceId <String>
   [-SubscriptionId <String>]
   [-ApplicationType <ApplicationType>]
   [-DisableIPMasking]
   [-DisableLocalAuth]
   [-Etag <String>]
   [-FlowType <FlowType>]
   [-ForceCustomerStorageForProfiler]
   [-HockeyAppId <String>]
   [-ImmediatePurgeDataOn30Day]
   [-IngestionMode <IngestionMode>]
   [-Kind <String>]
   [-PublicNetworkAccessForIngestion <PublicNetworkAccessType>]
   [-PublicNetworkAccessForQuery <PublicNetworkAccessType>]
   [-RequestSource <RequestSource>]
   [-RetentionInDays <Int32>]
   [-SamplingPercentage <Double>]
   [-Tag <Hashtable>]
   [-DefaultProfile <PSObject>]
   [-Confirm]
   [-WhatIf]
   [<CommonParameters>]

Przykład

New-AzApplicationInsights -Kind java -ResourceGroupName testgroup -Name test1027 -location eastus -WorkspaceResourceId "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test1234/providers/microsoft.operationalinsights/workspaces/test1234555"

Aby uzyskać pełną dokumentację programu PowerShell dotyczącą tego polecenia cmdlet i dowiedzieć się, jak pobrać parametry połączenia, zobacz dokumentację programu Azure PowerShell.

Szablony usługi Azure Resource Manager

@description('Name of Application Insights resource.')
param name string

@description('Type of app you are deploying. This field is for legacy reasons and will not impact the type of App Insights resource you deploy.')
param type string

@description('Which Azure Region to deploy the resource to. This must be a valid Azure regionId.')
param regionId string

@description('See documentation on tags: https://learn.microsoft.com/azure/azure-resource-manager/management/tag-resources.')
param tagsArray object

@description('Source of Azure Resource Manager deployment')
param requestSource string

@description('Log Analytics workspace ID to associate with your Application Insights resource.')
param workspaceResourceId string

resource component 'Microsoft.Insights/components@2020-02-02' = {
  name: name
  location: regionId
  tags: tagsArray
  kind: 'other'
  properties: {
    Application_Type: type
    Flow_Type: 'Bluefield'
    Request_Source: requestSource
    WorkspaceResourceId: workspaceResourceId
  }
}

Plik parametrów

{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "name": {
      "value": "my_workspace_based_resource"
    },
    "type": {
      "value": "web"
    },
    "regionId": {
      "value": "westus2"
    },
    "tagsArray": {
      "value": {}
    },
    "requestSource": {
      "value": "CustomDeployment"
    },
    "workspaceResourceId": {
      "value": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/testxxxx/providers/microsoft.operationalinsights/workspaces/testworkspace"
    }
  }
}

Modyfikowanie skojarzonego obszaru roboczego

Po utworzeniu zasobu Szczegółowe informacje aplikacji opartej na obszarze roboczym można zmodyfikować skojarzony obszar roboczy usługi Log Analytics.

W okienku Zasobów Szczegółowe informacje aplikacji wybierz pozycję Właściwości>Zmień obszary robocze> usługi Log Analytics.

Eksportowanie telemetrii

Starsza funkcja eksportu ciągłego nie jest obsługiwana w przypadku zasobów opartych na obszarze roboczym. Zamiast tego wybierz pozycję Ustawienia>diagnostyczne Dodaj ustawienie diagnostyczne w zasobie Szczegółowe informacje aplikacji. Możesz wybrać wszystkie tabele lub podzbiór tabel, aby zarchiwizować je na koncie magazynu. Możesz również przesyłać strumieniowo do centrum zdarzeń platformy Azure.

Uwaga

Wyeksportowanie ustawień diagnostycznych może zwiększyć koszty. Więcej informacji znajduje się w temacie Przechwytywanie telemetrii z usługi Application Insights. Aby uzyskać informacje o cenach tej funkcji, zobacz stronę cennika usługi Azure Monitor. Przed rozpoczęciem rozliczeń powiadomienia będą wysyłane. Jeśli po upływie okresu powiadomienia będziesz nadal używać eksportu danych telemetrycznych, opłaty będą naliczane zgodnie z odpowiednią stawką.

Ile zasobów aplikacji Szczegółowe informacje należy wdrożyć?

Podczas tworzenia następnej wersji aplikacji internetowej nie chcesz mieszać danych telemetrycznych aplikacji Szczegółowe informacje z nowej wersji i już wydanej wersji.

Aby uniknąć nieporozumień, wyślij dane telemetryczne z różnych etapów programowania, aby oddzielić zasoby usługi Application Szczegółowe informacje oddzielnymi parametry połączenia.

Jeśli system jest wystąpieniem usług Azure Cloud Services, istnieje inna metoda ustawiania oddzielnych parametry połączenia.

Informacje o zasobach i parametry połączenia

Podczas konfigurowania monitorowania aplikacji Szczegółowe informacje dla aplikacji internetowej należy utworzyć zasób aplikacji Szczegółowe informacje na platformie Azure. Otwórz zasób w witrynie Azure Portal, aby wyświetlić i przeanalizować dane telemetryczne zebrane z aplikacji. Parametry połączenia identyfikuje zasób. Po zainstalowaniu pakietu application Szczegółowe informacje do monitorowania aplikacji należy skonfigurować ją przy użyciu parametry połączenia, aby wiedziała, gdzie wysyłać dane telemetryczne.

Każdy zasób aplikacji Szczegółowe informacje zawiera metryki, które są dostępne w pudełku. Jeśli oddzielne składniki zgłaszają ten sam zasób aplikacji Szczegółowe informacje, może nie mieć sensu otrzymywać alertów dotyczących tych metryk.

Kiedy należy używać pojedynczego zasobu usługi Application Szczegółowe informacje

Użyj pojedynczego zasobu Szczegółowe informacje aplikacji dla:

  • Usprawnianie zarządzania metodykami DevOps/ITOps dla aplikacji wdrożonych razem, zwykle opracowywanych i zarządzanych przez ten sam zespół.
  • Scentralizowanie kluczowych wskaźników wydajności, takich jak czasy odpowiedzi i współczynniki awarii, domyślnie na pulpicie nawigacyjnym. W razie potrzeby segmentuj według nazwy roli w Eksploratorze metryk.
  • Jeśli nie ma potrzeby innego zarządzania kontrolą dostępu opartą na rolach platformy Azure między składnikami aplikacji.
  • W przypadku identycznych kryteriów alertów metryk wystarczy ciągłe eksporty i zarządzanie rozliczeniami/limitami przydziału między składnikami.
  • Jeśli klucz interfejsu API jest akceptowalny w celu uzyskania dostępu do danych ze wszystkich składników, a 10 kluczy interfejsu API spełnia wymagania wszystkich składników.
  • Gdy te same ustawienia integracji funkcji wykrywania inteligentnego i elementu roboczego są odpowiednie dla wszystkich ról.

Uwaga

Jeśli chcesz skonsolidować wiele zasobów usługi Application Szczegółowe informacje, możesz wskazać istniejące składniki aplikacji na nowy, skonsolidowany zasób aplikacji Szczegółowe informacje. Dane telemetryczne przechowywane w starym zasobie nie zostaną przeniesione do nowego zasobu. Usuń stary zasób tylko wtedy, gdy masz wystarczającą ilość danych telemetrycznych w nowym zasobie na potrzeby ciągłości działania.

Inne uwagi

Aby aktywować środowiska portalu, dodaj niestandardowy kod w celu przypisania znaczących wartości do atrybutu Cloud_RoleName . Bez tych wartości funkcje portalu nie działają.

W przypadku aplikacji usługi Azure Service Fabric i klasycznych usług w chmurze zestaw SDK automatycznie konfiguruje usługi, odczytując ze środowiska roli platformy Azure. W przypadku innych typów aplikacji zazwyczaj trzeba je jawnie ustawić.

Metryki na żywo nie mogą dzielić danych według nazwy roli.

Tworzenie większej liczby zasobów Szczegółowe informacje aplikacji

Aby utworzyć zasób aplikacji Szczegółowe informacje, zobacz Tworzenie zasobu Szczegółowe informacje aplikacji.

Ostrzeżenie

Jeśli zasób aplikacji Szczegółowe informacje monitoruje zasób platformy Azure (tj. producent telemetrii) w innym regionie, może zostać naliczony dodatkowy koszt sieci. Koszty będą się różnić w zależności od regionu, z którego pochodzą dane telemetryczne i skąd się ona dzieje. Aby uzyskać szczegółowe informacje, zapoznaj się z cennikiem przepustowości platformy Azure.

Pobieranie parametrów połączenia

Parametry połączenia identyfikuje utworzony zasób.

Potrzebujesz parametry połączenia wszystkich zasobów, do których aplikacja wysyła dane.

Filtruj numer kompilacji

Podczas publikowania nowej wersji aplikacji chcesz mieć możliwość oddzielenia danych telemetrycznych od różnych kompilacji.

Możesz ustawić właściwość Wersja aplikacji, aby można było filtrować wyniki wyszukiwania i eksploratora metryk.

Istnieje kilka różnych metod ustawiania właściwości Wersja aplikacji.

  • Ustaw bezpośrednio:

    telemetryClient.Context.Component.Version = typeof(MyProject.MyClass).Assembly.GetName().Version;

  • Zawijaj ten wiersz w inicjatorze telemetrii, aby upewnić się, że wszystkie TelemetryClient wystąpienia są ustawione spójnie.

  • ASP.NET: ustaw wersję w pliku BuildInfo.config. Moduł internetowy pobiera wersję z węzła BuildLabel . Dołącz ten plik do projektu i pamiętaj, aby ustawić właściwość Kopiuj zawsze w Eksplorator rozwiązań.

    <?xml version="1.0" encoding="utf-8"?>
    <DeploymentEvent xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/VisualStudio/DeploymentEvent/2013/06">
      <ProjectName>AppVersionExpt</ProjectName>
      <Build type="MSBuild">
        <MSBuild>
          <BuildLabel kind="label">1.0.0.2</BuildLabel>
        </MSBuild>
      </Build>
    </DeploymentEvent>
    
    
  • ASP.NET: Wygeneruj BuildInfo.config automatycznie w akompiluj aparat Microsoft Build Engine. Dodaj kilka wierszy do .csproj pliku:

    <PropertyGroup>
      <GenerateBuildInfoConfigFile>true</GenerateBuildInfoConfigFile>    <IncludeServerNameInBuildInfo>true</IncludeServerNameInBuildInfo>
    </PropertyGroup>
    

    Ten krok generuje plik o nazwie yourProjectName.BuildInfo.config. Proces publikowania zmienia jego nazwę na BuildInfo.config.

    Etykieta kompilacji zawiera symbol (*AutoGen_...*) zastępczy podczas kompilacji za pomocą programu Visual Studio. Jednak podczas kompilowania za pomocą aparatu Microsoft Build Engine jest on wypełniany prawidłowym numerem wersji.

    Aby zezwolić aparatowi Microsoft Build Engine na generowanie numerów wersji, ustaw wersję podobną 1.0.* do w pliku AssemblyReference.cs.

Śledzenie wersji i wydania

Aby śledzić wersję aplikacji, upewnij się, że proces aparatu Microsoft Build Engine generuje buildinfo.configwartość . .csproj W pliku dodaj:

<PropertyGroup>
  <GenerateBuildInfoConfigFile>true</GenerateBuildInfoConfigFile>
  <IncludeServerNameInBuildInfo>true</IncludeServerNameInBuildInfo>
</PropertyGroup>

Gdy moduł aplikacji Szczegółowe informacje sieci Web zawiera informacje o kompilacji, automatycznie dodaje wersję aplikacji jako właściwość do każdego elementu telemetrii. Z tego powodu można filtrować według wersji podczas wyszukiwania diagnostycznego lub eksplorowania metryk.

Aparat Microsoft Build Engine generuje wyłącznie numer wersji kompilacji, a nie kompilację dewelopera z programu Visual Studio.

Adnotacje dotyczące wersji

Jeśli używasz usługi Azure DevOps, możesz uzyskać znacznik adnotacji dodany do wykresów przy każdym wydaniu nowej wersji.

Często zadawane pytania

Ta sekcja zawiera odpowiedzi na typowe pytania.

Jak mogę przenieść zasób usługi Application Szczegółowe informacje do nowego regionu?

Przenoszenie istniejących zasobów Szczegółowe informacje aplikacji między regionami nie jest obsługiwane i nie można migrować danych historycznych do nowego regionu. Obejście obejmuje:

  • Tworzenie nowego zasobu aplikacji opartej na obszarze roboczym Szczegółowe informacje w żądanym regionie.
  • Utwórz ponownie wszystkie unikatowe dostosowania z oryginalnego zasobu w nowym.
  • Aktualizowanie aplikacji przy użyciu parametry połączenia nowego zasobu regionu.
  • Testowanie w celu upewnienia się, że wszystko działa zgodnie z oczekiwaniami przy użyciu nowego zasobu application Szczegółowe informacje.
  • Zdecyduj się zachować lub usunąć oryginalny zasób aplikacji Szczegółowe informacje. Usunięcie zasobu klasycznego oznacza utratę wszystkich danych historycznych. Jeśli zasób jest oparty na obszarze roboczym, dane pozostają w usłudze Log Analytics, umożliwiając dostęp do danych historycznych do momentu wygaśnięcia okresu przechowywania.

Unikatowe dostosowania, które często wymagają ręcznego ponownego utworzenia lub zaktualizowania zasobu w nowym regionie, ale nie są ograniczone do następujących elementów:

  • Utwórz ponownie niestandardowe pulpity nawigacyjne i skoroszyty.
  • Utwórz ponownie lub zaktualizuj zakres dowolnych alertów dzienników niestandardowych/metryk.
  • Utwórz ponownie alerty dostępności.
  • Utwórz ponownie dowolne niestandardowe ustawienia kontroli dostępu opartej na rolach platformy Azure, które są wymagane dla użytkowników w celu uzyskania dostępu do nowego zasobu.
  • Replikuj ustawienia obejmujące próbkowanie pozyskiwania, przechowywanie danych, dzienny limit i włączanie metryk niestandardowych. Te ustawienia są kontrolowane za pośrednictwem okienka Użycie i szacowane koszty .
  • Każda integracja, która opiera się na kluczach interfejsu API, takich jak adnotacje wydania i bezpieczny kanał kontroli metryk na żywo. Musisz wygenerować nowe klucze interfejsu API i zaktualizować skojarzą integrację.
  • Eksport ciągły w zasobach klasycznych musi zostać ponownie skonfigurowany.
  • Należy ponownie skonfigurować ustawienia diagnostyczne w zasobach opartych na obszarze roboczym.

Uwaga

Jeśli zasób tworzony w nowym regionie zastępuje klasyczny zasób, zalecamy zapoznanie się z zaletami tworzenia nowego zasobu opartego na obszarze roboczym. Alternatywnie zmigruj istniejący zasób do obszaru roboczego.

Czy mogę używać dostawców ('Microsoft.Szczegółowe informacje', 'components').apiVersions[0] we wdrożeniach usługi Azure Resource Manager?

Nie zalecamy używania tej metody wypełniania wersji interfejsu API. Najnowsza wersja może reprezentować wersje zapoznawcza, które mogą zawierać zmiany powodujące niezgodność. Nawet w przypadku nowszych wersji innych niż wersja zapoznawcza wersje interfejsu API nie zawsze są zgodne z poprzednimi wersjami z istniejącymi szablonami. W niektórych przypadkach wersja interfejsu API może nie być dostępna dla wszystkich subskrypcji.

Następne kroki