Uygulama Analizler ile Azure Active Directory B2C günlüklerini toplama

Başlamadan önce, ayarladığınız ilke türünü seçmek için İlke türü seçin seçicisini kullanın. Azure Active Directory B2C, kullanıcıların uygulamalarınızla nasıl etkileşim kurduğunu tanımlamak için iki yöntem sunar: önceden tanımlanmış kullanıcı akışları veya tam olarak yapılandırılabilir özel ilkeler aracılığıyla. Bu makalede gerekli adımlar her yöntem için farklıdır.

Bu özellik yalnızca özel ilkeler için kullanılabilir. Kurulum adımları için, önceki seçicide Özel ilke'yi seçin.

Bu makalede, özel ilkelerinizle ilgili sorunları tanılayabilmek için Active Directory B2C'den (Azure AD B2C) günlük toplama adımları sağlanır. Application Insights özel durumları tanılamak ve uygulama performansı sorunlarını görselleştirmek için bir yol sağlar. Azure AD B2C'nin Application Insights'a veri göndermek için bir özelliği vardır.

Burada açıklanan ayrıntılı etkinlik günlükleri YALNIZCA özel ilkelerinizin geliştirilmesi sırasında etkinleştirilmelidir.

Uyarı

üretim ortamlarında olarak ayarlamayın DeploymentModeDevelopment . Günlükler, kimlik sağlayıcılarına gönderilen ve kimlik sağlayıcılarından gönderilen tüm talepleri toplar. Uygulama Analizler günlüklerinizde toplanan tüm kişisel verilerin sorumluluğunu geliştirici olarak siz üstlenirsiniz. Bu ayrıntılı günlükler yalnızca ilke GELİşTİrİCİ MODU'na yerleştirildiğinde toplanır.

Ayarla Application Insights

Henüz bir uygulamanız yoksa aboneliğinizde bir Uygulama Analizler örneği oluşturun.

Bahşiş

Birden çok Azure AD B2C kiracısı için tek bir Application Analizler örneği kullanılabilir. Ardından sorgunuzda kiracıya veya ilke adına göre filtreleyebilirsiniz. Daha fazla bilgi için bkz. Uygulama Analizler örneklerindeki günlükler.

Aboneliğinizde mevcut bir Application Analizler örneğini kullanmak için şu adımları izleyin:

  1. Azure Portal oturum açın.
  2. Azure AD B2C dizininizi değil Azure aboneliğinizi içeren Microsoft Entra dizinini kullandığınızdan emin olun. Portal araç çubuğunda Dizinler + abonelikler simgesini seçin.
  3. Portal ayarlarında | Dizinler + abonelikler sayfası, Dizin adı listesinde Microsoft Entra dizininizi bulun ve ardından Değiştir'i seçin.
  4. Daha önce oluşturduğunuz Uygulama Analizler kaynağını açın.
  5. Genel Bakış sayfasında İzleme Anahtarı'nı kaydedin

Aboneliğinizde Uygulama Analizler örneği oluşturmak için şu adımları izleyin:

  1. Azure Portal oturum açın.
  2. Azure AD B2C dizininizi değil Azure aboneliğinizi içeren Microsoft Entra dizinini kullandığınızdan emin olun. Portal araç çubuğunda Dizinler + abonelikler simgesini seçin.
  3. Portal ayarlarında | Dizinler + abonelikler sayfası, Dizin adı listesinde Microsoft Entra dizininizi bulun ve ardından Değiştir'i seçin.
  4. Sol gezinti menüsünde Kaynak oluştur'u seçin.
  5. Uygulama Analizler'ı arayın ve seçin, ardından Oluştur'u seçin.
  6. Formu doldurun, Gözden geçir + oluştur'u ve ardından Oluştur'u seçin.
  7. Dağıtım tamamlandıktan sonra Kaynağa git'i seçin.
  8. Uygulama Analizler menüsünde Yapılandır'ın altında Özellikler'i seçin.
  9. sonraki bir adımda kullanmak üzere INSTRUMENTATION KEY değerini kaydedin.

Özel ilkeyi yapılandırma

  1. Bağlı olan taraf (RP) dosyasını açın, örneğin SignUpOrSignin.xml.

  2. öğesine aşağıdaki öznitelikleri <TrustFrameworkPolicy> ekleyin:

    DeploymentMode="Development"
    UserJourneyRecorderEndpoint="urn:journeyrecorder:applicationinsights"
    
  3. Henüz yoksa düğüme <RelyingParty> bir <UserJourneyBehaviors> alt düğüm ekleyin. sonrasında bulunmalıdır <DefaultUserJourney ReferenceId="UserJourney Id" from your extensions policy, or equivalent (for example:SignUpOrSigninWithAAD" />. RelyingParty alt öğelerinin tam sırası için bkz. RelyingParty şema başvurusu.

  4. Aşağıdaki düğümü öğesinin <UserJourneyBehaviors> alt öğesi olarak ekleyin. değerini daha önce kaydettiğiniz Application Analizler Instrumentation Key ile değiştirdiğinizden {Your Application Insights Key} emin olun.

    <JourneyInsights TelemetryEngine="ApplicationInsights" InstrumentationKey="{Your Application Insights Key}" DeveloperMode="true" ClientEnabled="false" ServerEnabled="true" TelemetryVersion="1.0.0" />
    
    • DeveloperMode="true"Application Analizler'a işleme işlem hattı aracılığıyla telemetriyi hızlandırmasını bildirir. Geliştirme için iyidir, ancak yüksek hacimlerde kısıtlanır. Üretimde öğesini olarak falseayarlayınDeveloperMode.
    • ClientEnabled="true"sayfa görünümünü ve istemci tarafı hatalarını izlemek için Application Analizler istemci tarafı betiğini gönderir. Bunu Application Analizler portalındaki browserTimings tablosunda görüntüleyebilirsiniz. ayarını ClientEnabled= "true"yaparak sayfa betiğinize Uygulama Analizler eklersiniz ve sayfa yüklemelerinin ve AJAX çağrılarının zamanlamalarını, sayıları, tarayıcı özel durumlarının ve AJAX hatalarının ayrıntılarını ve kullanıcı ve oturum sayılarını alırsınız. Bu alan isteğe bağlıdır ve varsayılan olarak olarak false ayarlanır.
    • ServerEnabled="true"mevcut UserJourneyRecorder JSON dosyasını Application Analizler'a özel bir olay olarak gönderir.

    Örneğin:

    <TrustFrameworkPolicy
      ...
      TenantId="fabrikamb2c.onmicrosoft.com"
      PolicyId="SignUpOrSignInWithAAD"
      DeploymentMode="Development"
      UserJourneyRecorderEndpoint="urn:journeyrecorder:applicationinsights"
    >
    ...
    <RelyingParty>
      <DefaultUserJourney ReferenceId="UserJourney ID from your extensions policy, or equivalent (for example: SignUpOrSigninWithAzureAD)" />
      <Endpoints>
         <!--points to refresh token journey when app makes refresh token request-->
         <Endpoint Id="Token" UserJourneyReferenceId="RedeemRefreshToken" />
      </Endpoints>
      <UserJourneyBehaviors>
        <JourneyInsights TelemetryEngine="ApplicationInsights" InstrumentationKey="{Your Application Insights Key}" DeveloperMode="true" ClientEnabled="false" ServerEnabled="true" TelemetryVersion="1.0.0" />
      </UserJourneyBehaviors>
      ...
    </TrustFrameworkPolicy>
    
  5. İlkeyi karşıya yükleyin.

Uygulama Analizler günlüklerine bakın

Application Analizler'da yeni günlükleri görebilmeniz için genellikle beş dakikadan kısa bir gecikme süresi vardır.

  1. Azure portalında oluşturduğunuz Uygulama Analizler kaynağını açın.
  2. Genel Bakış sayfasında Günlükler'i seçin.
  3. Uygulama Analizler'nde yeni bir sekme açın.

Günlükleri görmek için kullanabileceğiniz sorguların listesi aşağıdadır:

Sorgu Açıklama
traces Azure AD B2C tarafından oluşturulan tüm günlükleri alma
traces | where timestamp > ago(1d) Azure AD B2C tarafından son gün için oluşturulan tüm günlükleri alın.
traces | where message contains "exception" | where timestamp > ago(2h) Son iki saatdeki hatalarla tüm günlükleri alın.
traces | where customDimensions.Tenant == "contoso.onmicrosoft.com" and customDimensions.UserJourney == "b2c_1a_signinandup" Azure AD B2C contoso.onmicrosoft.com kiracısı tarafından oluşturulan tüm günlükleri alın; kullanıcı yolculuğu b2c_1a_signinandup.
traces | where customDimensions.CorrelationId == "00000000-0000-0000-0000-000000000000" Bir bağıntı kimliği için Azure AD B2C tarafından oluşturulan tüm günlükleri alın. Bağıntı kimliğini bağıntı kimliğiniz ile değiştirin.

Girdiler uzun olabilir. Daha yakından bakmak için CSV'ye aktarın.

Sorgulama hakkında daha fazla bilgi için bkz . Azure İzleyici'de günlük sorgularını genel bakış.

VS Code uzantısındaki günlüklere bakın

VS Code için Azure AD B2C uzantısını yüklemenizi öneririz. Azure AD B2C uzantısıyla günlükler sizin için ilke adı, bağıntı kimliği (uygulama içgörüleri bağıntı kimliğinin ilk rakamını gösterir) ve günlük zaman damgasına göre düzenlenir. Bu özellik, yerel zaman damgasını temel alarak ilgili günlüğü bulmanıza ve Azure AD B2C tarafından yürütülen kullanıcı yolculuğunu görmenize yardımcı olur.

Dekont

Topluluk, Azure AD B2C çözümlerini uygulayan ve bakımını üstlenen kişilere yardımcı olmak için VS Code uzantısını geliştirmiştir. Uzantı Microsoft tarafından desteklenmez ve kesinlikle olduğu gibi kullanılabilir hale getirilir.

Uygulama Analizler API erişimini ayarlama

Uygulama Analizler ayarladıktan ve özel ilkeyi yapılandırdıktan sonra Uygulama Analizler API kimliğinizi almanız ve API Anahtarı oluşturmanız gerekir. Hem API Kimliği hem de API anahtarı, Uygulama Analizler olaylarını (telemetriler) okumak için Azure AD B2C uzantısı tarafından kullanılır. API anahtarlarınız parolalar gibi yönetilmelidir. Sır olarak sakla.

Dekont

Daha önce oluşturduğunuz uygulama Analizler izleme anahtarı, Azure AD B2C tarafından Application Analizler'a telemetri göndermek için kullanılır. İzleme anahtarını YALNıZCA Azure AD B2C ilkenizde kullanırsınız, VS Code uzantısında kullanmazsınız.

Uygulama Analizler kimliğini ve anahtarını almak için:

  1. Azure portalında uygulamanızın Uygulama Analizler kaynağını açın.

  2. Yapılandır'ı ve ardından API Erişimi'ni seçin.

  3. Uygulama Kimliğini kopyalama

  4. API Anahtarı Oluştur'u seçin

  5. Telemetriyi oku kutusunu işaretleyin.

  6. API anahtarı oluştur dikey penceresini kapatmadan önce Anahtarı kopyalayın ve güvenli bir yere kaydedin. Anahtarı kaybederseniz başka bir anahtar oluşturmanız gerekir.

    Screenshot that demonstrates how to create API access key.

Azure AD B2C VS Code uzantısını ayarlama

artık Azure Uygulaması lication insights API Kimliği ve Anahtarına sahip olduğunuz için VS Code uzantısını günlükleri okuyacak şekilde yapılandırabilirsiniz. Azure AD B2C VS Code uzantısı ayarlar için iki kapsam sağlar:

  • Kullanıcı Genel Ayarlar - Açtığınız herhangi bir VS Code örneğine genel olarak uygulanan Ayarlar.
  • Çalışma alanı Ayarlar - Ayarlar çalışma alanınızın içinde depolanır ve yalnızca çalışma alanı açıldığında (VS Code açık klasör kullanılarak) uygulanır.
  1. Azure AD B2C İzleme gezgininde Ayarlar simgesine tıklayın.

    Screenshot that demonstrates select the application insights settings.

  2. Azure Uygulaması Analizler kimliğini ve anahtarını belirtin.

  3. Kaydet’e tıklayın

Ayarları kaydettikten sonra, Application Insights günlükleri Azure AD B2C İzleme (Uygulama Analizler) penceresinde görünür.

Screenshot of Azure AD B2C extension for vscode, presenting the Azure Application insights trace.

Üretimde Uygulama Analizler Yapılandırma

Üretim ortamınızın performansını ve daha iyi kullanıcı deneyimini geliştirmek için, ilkenizi önemli olmayan iletileri yoksayacak şekilde yapılandırmanız önemlidir. Üretim ortamlarında aşağıdaki yapılandırmayı kullanın ve uygulama içgörülerinize günlük gönderilmez.

  1. DeploymentMode TrustFrameworkPolicy özniteliğini olarak Productionayarlayın.

    <TrustFrameworkPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06" PolicySchemaVersion="0.3.0.0"
    TenantId="yourtenant.onmicrosoft.com"
    PolicyId="B2C_1A_signup_signin"
    PublicPolicyUri="http://yourtenant.onmicrosoft.com/B2C_1A_signup_signin"
    DeploymentMode="Production"
    UserJourneyRecorderEndpoint="urn:journeyrecorder:applicationinsights">
    
  2. DeveloperModeJourney Analizler değerini olarak falseayarlayın.

    <UserJourneyBehaviors>
      <JourneyInsights TelemetryEngine="ApplicationInsights" InstrumentationKey="{Your Application Insights Key}" DeveloperMode="false" ClientEnabled="false" ServerEnabled="true" TelemetryVersion="1.0.0" />
    </UserJourneyBehaviors>
    
  3. İlkenizi karşıya yükleyin ve test edin.

Sonraki adımlar