intuizioni di applicazione: non ci sono dati per le chiamate di dipendenza

voti
3

sito ASP.NET ospitato su Azure VM. ApplicationInsights Status Monitor installato sul VM. Predefinito ApplicationInsights.config creato da menu Aggiungi AppInsights in Visual Studio, solo inizializzatore personalizzato aggiunto invece di ikey:

<Add Type=WebSite.WebSiteTelemetryInitializer, WebSite />

Codice:

public class WebSiteTelemetryInitializer : ITelemetryInitializer
    {
        public void Initialize(ITelemetry telemetry)
        {           
            TelemetryConfiguration.Active.InstrumentationKey = WebConfigurationManager.AppSettings[ikey];

            telemetry.Context.User.Id = Environment.UserName;
            telemetry.Context.Session.Id = Guid.NewGuid().ToString();
            telemetry.Context.Component.Version = typeof(WebSiteTelemetryInitializer).Assembly.GetName().Version.ToString();
        }
    }

Tutto funziona come previsto, ma non ci sono dati di performance (CPU, memoria). Dopo aver aggiunto AppPool utente al Performance Monitor Usersgruppo:

$group = [ADSI]WinNT://$Env:ComputerName/Performance Monitor Users,group
$ntAccount = New-Object System.Security.Principal.NTAccount(IIS APPPOOL\DefaultAppPool)
$strSID = $ntAccount.Translate([System.Security.Principal.SecurityIdentifier])
$user = [ADSI]WinNT://$strSID
$group.Add($user.Path)

non ci sono dati per le chiamate di dipendenza.

AGGIORNAMENTO Ci sono 3 ripetendo registri di traccia:

  1. AI (interno): Completa la copia creazione ombra di estensione, extensionBaseDirectory: C: \ inetpub \ wwwroot \ sito \ bin, extensionName: Microsoft.ApplicationInsights.Extensions.Intercept con errore System.UnauthorizedAccessException: Access to the path 'C:\Windows\system32\config\systemprofile' is denied.
  2. AI (interno): Estensione allegare fallimento, in grado di collegare, baseFolder: C: \ inetpub \ wwwroot \ sito \ bin, nativeExtensionName: Microsoft.ApplicationInsights.Extensions.Intercept
  3. AI (interno): [msg = RemoteDependencyModule fallito]; [msg = System.InvalidOperationException: Impossibile collegare estensione, hresult: 2147500037
È pubblicato 05/12/2015 alle 14:55
fonte dall'utente
In altre lingue...                            


2 risposte

voti
1

dipendenze remoto:

Ok, quindi questo è ciò che impedisce ApplicationInsights da raccolta dipendenze: AI (interne): copia completa creazione ombra di estensione, extensionBaseDirectory: C: \ inetpub \ wwwroot \ sito \ bin, NomeEstensione: Microsoft.ApplicationInsights.Extensions.Intercept con errore di sistema .UnauthorizedAccessException: Accesso al percorso 'C: \ Windows \ system32 \ config \ systemprofile' viene negato.

C: \ Windows \ system32 \ config \ systemprofile è quello che viene impostata come una cartella temporanea per il vostro processo. È necessario cambiare cartella temporanea per il processo e fare in modo che l'applicazione può scrivere lì. (ApplicationInsights sta affrontando binari nativi lì che vengono utilizzati dai profiler. Cartella Temp viene utilizzato anche quando si hanno problemi di accesso a Internet temporanei. Si risparmia eventi che non sono stati inviati e li invia quando la connessione viene ripristinata.)

I contatori delle prestazioni:

Al fine di raccogliere le prestazioni contatori l'utente che pool di applicazioni gira sotto (di solito è ApplicationPoolIdentity) dovrebbe essere un membro del gruppo di Performance Monitor Users sulla scatola. Assicurarsi che viene aggiunto lì e si dovrebbe fare iisreset dopo aver aggiunto l'utente al gruppo altrimenti le modifiche non avranno effetto.

Descritto qui in basso: http://blogs.msdn.com/b/visualstudioalm/archive/2014/12/11/updated-application-insights-status-monitor-to-support-12-and-later-application- intuizioni-sdk.aspx

Risposto il 09/12/2015 a 05:06
fonte dall'utente

voti
1

Giusto per aggiungere, è possibile modificare la cartella temporanea che l'applicazione Insights scrive alla modificando il fine del file applicationsinsights.config e aggiungendo la posizione della cartella Temp. Ecco quello che ho fatto:

<TelemetryChannel Type="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.ServerTelemetryChannel, Microsoft.AI.ServerTelemetryChannel">
<StorageFolder>D:\AITempFolder</StorageFolder>

Spero che questo aiuti qualcun altro troppo.

Risposto il 08/01/2018 a 15:22
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more