Collecte, rétention et stockage des données dans Application Insights
Lorsque vous installez le kit de développement logiciel Application Insights dans votre application, il envoie des données télémétriques sur votre application dans le cloud. En tant que développeur responsable, vous voulez savoir exactement quelles données sont envoyées, ce qu’elles deviennent et comment vous pouvez garder le contrôle. Ils souhaitent savoir, plus particulièrement, si les données sensibles peuvent être envoyées, où elles sont stockées et à quel point elles sont sécurisées ?
Tout d’abord, la réponse courte :
- Les modules de télémétrie standard qui s’exécutent « dès le départ » sont peu susceptibles d’envoyer des données sensibles au service. La télémétrie s’attache aux métriques de charge, de performance et d’utilisation, aux rapports d’exception et autres données de diagnostic. Les principales données utilisateur visibles dans les rapports de diagnostic sont des URL. Mais votre application ne doit en aucun cas placer de données sensibles en texte brut dans une URL.
- Vous pouvez écrire du code qui envoie davantage de données de télémétrie personnalisées, afin de vous aider avec les diagnostics et à surveiller l’utilisation. (Cette extensibilité est une fonctionnalité intéressante de Application Insights.) Il serait possible, par erreur, d’écrire ce code de manière à ce qu’il inclue les données personnelles et d’autres données sensibles. Si votre application fonctionne avec ces données, vous devez vérifier de manière approfondie l’ensemble du code que vous écrivez.
- Pendant que vous développez et que vous testez votre application, il est facile d’examiner ce qui est envoyé par le Kit de développement logiciel (SDK). Les données apparaissent dans les fenêtres de sortie de débogage de l’IDE et du navigateur.
- Vous pouvez sélectionner l’emplacement quand vous créez une ressource Application Insights. Pour plus d’informations sur la disponibilité d’Application Insights par région, consultez Produits disponibles par région.
- Passez en revue les données collectées, car celles-ci peuvent inclure des données qui sont autorisées dans certains cas, mais pas dans d’autres. À cet égard, un nom d’appareil constitue un parfait exemple. Le nom de l’appareil d’un serveur n’affecte pas la confidentialité et est une information utile. Le nom de l’appareil d’un téléphone ou d’un ordinateur portable peut avoir des répercussions sur la confidentialité et être moins utile. Un SDK développé principalement pour les serveurs cibles collecte le nom de l’appareil par défaut. Cette fonctionnalité peut avoir besoin d’être remplacée dans les événements normaux et les exceptions.
Le reste de cet article traite plus en détail de ces points. Cet article est autonome. Vous pouvez donc le partager avec des collègues qui ne font pas partie de votre équipe.
Présentation d’Application Insights
Application Insights est un service de Microsoft qui vous aide à améliorer les performances et la convivialité de votre application dynamique. Il analyse votre application tout au long de son exécution, pendant les tests et une fois que vous avez l’avez publiée ou déployée. Application Insights crée des graphiques et des tableaux qui vous montrent des métriques informatives. Par exemple, vous pouvez voir les heures de la journée auxquelles vous avez le plus d’utilisateurs, la réactivité de l’application et comment elle est prise en charge par les services externes dont elle dépend. En cas d’incident ou de problèmes de performances, vous pouvez effectuer une recherche dans les données de télémétrie pour diagnostiquer la cause. Le service vous envoie des messages électroniques si des modifications sont apportées à la disponibilité et à la performance de votre application.
Pour obtenir cette fonctionnalité, vous devez installer un Kit SDK Application Insights dans votre application, il devient partie intégrante de son code. Lorsque votre application est en cours d'exécution, le kit de développement logiciel surveille son fonctionnement et envoie des données télémétriques à un espace de travail Application Insights Log Analytics, qui est un service en nuage hébergé par Microsoft Azure. Mais Application Insights fonctionne aussi pour toutes les applications, pas uniquement celles qui sont hébergées dans Azure.
Application Insights stocke et analyse les données de télémétrie. Pour afficher l’analyse ou effectuer une recherche dans la télémétrie stockée, connectez-vous à votre compte Azure et ouvrez la ressource Application Insights pour votre application. Vous pouvez également partager l’accès aux données avec d’autres membres de votre équipe, ou avec des abonnés Azure spécifiés.
Vous pouvez exporter des données à partir d’Application Insights vers une base de données ou des outils externes, par exemple. Vous devez attribuer une clé spéciale, que vous obtenez de la part du service, à chaque outil. La clé peut être révoquée si nécessaire.
Les kits SDK Application Insights sont disponibles pour toute une gamme d’applications :
- Services web hébergés dans vos propres serveurs Java EE ou ASP.NET, ou dans Azure
- Clients web, autrement dit, le code s’exécutant dans une page web
- Applications et services de bureau
- Applications d’appareils tels que Windows Phone, iOS et Android
Toutes envoient les données de télémétrie vers le même service.
Notes
Le support de l’ingestion de clé d’instrumentation prendra fin le 31 mars 2025. L’ingestion de clé d’instrumentation continuera de fonctionner, mais nous ne fournirons plus de mises à jour ni de support pour la fonctionnalité. Passez aux chaînes de connexion pour tirer parti des nouvelles fonctionnalités.
Quelles données collecte-t-il ?
Il existe trois sources de données :
Le SDK, que vous intégrez à votre application soit pendant le développement, soit au moment de l’exécution. Il existe différents Kits SDK pour différents types d’applications. Il existe également un Kit SDK pour les pages web, qui se charge dans le navigateur de l’utilisateur en même temps que la page.
- Chaque Kit SDK comporte de nombreux modules, utilisant diverses techniques pour collecter différents types de données de télémétrie.
- Si vous installez le Kit SDK pendant le développement, vous pouvez utiliser ses API pour envoyer votre propre télémétrie, ainsi que les modules standards. Ces données de télémétrie personnalisées peuvent inclure toutes les données que vous souhaitez envoyer.
Sur certains serveurs web, il existe également des agents qui s’exécutent en même temps que l’application et qui envoient des données de télémétrie concernant l’UC, la mémoire et l’occupation du réseau. Par exemple, les machines virtuelles Azure, les hôtes Docker et les serveurs d’applications Java peuvent disposer de ces agents.
Les tests de disponibilité sont des processus exécutés par Microsoft qui envoient des requêtes à votre application web à intervalles réguliers. Les résultats sont envoyés à Application Insights.
Quel est le type de données collecté ?
Les principales catégories sont :
-
La télémétrie du serveur web : requêtes HTTP. L’URI, le temps nécessaire pour traiter la demande, le code de réponse, l’adresse IP du client.
Session id
. - Les pages web : page, utilisateur et décomptes de sessions. Le temps de chargement de page. Les exceptions. Appels Ajax.
- Les performances des compteurs : mémoire, UC, E/S et occupation du réseau.
- Le contexte du client et du serveur : système d’exploitation, paramètres régionaux, type d’appareil, navigateur et résolution d’écran.
- Les exceptions et les incidents : vidages de pile,
build id
et type d’UC. - Les dépendances : les appels aux services externes tels que REST, SQL et AJAX. L’URI ou la chaîne de connexion, la durée, la réussite et la commande.
- Les tests de disponibilité : durée et étapes du test et réponses.
- Les journaux d’activité de suivi et la télémétrie personnalisée : tout ce que vous codez dans vos journaux d’activité ou télémétrie.
Pour plus d’informations, consultez la section Données envoyées par Application Insights.
Comment puis-je vérifier ce qui a été collecté ?
Si vous développez une application à l’aide de Visual Studio, exécutez l’application en mode débogage (F5). Les données de télémétrie s’affichent dans la fenêtre Sortie. À partir de là, vous pouvez les copier et les mettre au format JSON pour une inspection facile.
Il existe également une vue plus lisible dans la fenêtre Diagnostics.
Pour les pages web, ouvrez la fenêtre de débogage de votre navigateur. Appuyez sur F12 et ouvrez l’onglet Réseau.
Puis-je écrire le code pour filtrer les données de télémétrie avant qu’elles soient envoyées ?
Vous devez écrire un plug-in de processeur de télémétrie.
Combien de temps sont conservées les données ?
Les points de données brutes (autrement dit, les éléments que vous pouvez interroger dans Analytics et inspecter dans Recherche) sont conservés pendant 730 jours maximum. Vous pouvez sélectionner une durée de rétention de 30, 60, 90, 120, 180, 270, 365, 550 ou 730 jours. Si vous devez conserver des données pendant plus de 730 jours, vous pouvez utiliser les paramètres de diagnostic suivants.
Les données conservées plus de 90 jours entraînent des frais supplémentaires. Plus d’informations sur la tarification d’Application Insights, consultez la page de tarification Azure Monitor.
Les données agrégées (autrement dit, les nombres, moyennes et autres données statistiques que vous voyez dans Metrics Explorer) sont conservées avec une granularité de 1 minute pendant 90 jours.
Les captures instantanées de débogage sont stockées pendant 15 jours. Cette stratégie de rétention est définie application par application. Si vous devez augmenter cette valeur, faites-en la demande en ouvrant une demande de support dans le portail Azure.
Qui peut accéder aux données ?
Les données sont visibles par vous et, si vous disposez un compte d’organisation, par les membres de votre équipe.
Vous ou les membres de votre équipe pouvez les exporter et les copier à d’autres endroits, ou les transférer à d’autres personnes.
Que fait Microsoft des informations que mon application envoie à Application Insights ?
Microsoft n’utilise les données que pour vous fournir le service.
Où sont conservées les données ?
Vous pouvez sélectionner l’emplacement quand vous créez une ressource Application Insights. Pour plus d’informations sur la disponibilité d’Application Insights, consultez Produits disponibles par région.
Mes données sont-elles sécurisées ?
Application Insights est un service Azure. Les stratégies de sécurité sont décrites dans le livre blanc sur la sécurité, la confidentialité et la conformité Azure.
Les données sont stockées sur des serveurs Microsoft Azure. Pour les comptes du Portail Azure, les restrictions sont décrites dans le document relatif à la sécurité, la confidentialité et la conformité Azure.
L'accès à vos données par le personnel Microsoft est limité. Nous n’accédons à vos données qu’avec votre autorisation, et seulement pour vous aider à utiliser Application Insights.
Les données agrégées sur toutes les applications de nos clients, comme le débit des données et la taille moyenne des suivis, sont utilisées pour améliorer Application Insights.
Les données de télémétrie d’une autre personne peuvent-elles interférer avec mes données d’Application Insights ?
Une personne peut envoyer plus de données de télémétrie à votre compte à l’aide de la clé d’instrumentation. Cette clé se trouve dans le code de vos pages web. Avec suffisamment de données supplémentaires, vos mesures ne représentent pas correctement les performances et l’utilisation de votre application.
Si vous partagez le code avec d’autres projets, pensez à supprimer votre clé d’instrumentation.
Les données sont-elles chiffrées ?
Toutes les données sont chiffrées, aussi bien au repos que lors de leur déplacement entre les centres de données.
Les données sont-elles chiffrées lors de leur passage depuis mon application vers les serveurs Application Insights ?
Oui. Nous utilisons le protocole HTTPS pour envoyer les données au portail à partir de presque tous les Kits de développement logiciel (SDK), y compris les serveurs web, les appareils et les pages web HTTPS.
Le kit de développement logiciel (SDK) crée-t-il un stockage local temporaire ?
Oui. Certains canaux de télémétrie conservent les données localement si un point de terminaison est inaccessible. Les paragraphes suivants décrivent les infrastructures et les canaux de télémétrie affectés :
- Les canaux de télémétrie qui utilisent le stockage local créent des fichiers temporaires dans les répertoires TEMP ou APPDATA, qui sont limités au compte exécutant votre application. Cette situation peut se produire lorsqu’un point de terminaison a été temporairement indisponible ou lorsque vous avez atteint la limite de bande passante. Une fois ce problème résolu, le canal de télémétrie reprend l’envoi de toutes les données nouvelles et conservées.
- Ces données persistantes ne sont pas chiffrées en local. Si cela pose problème, passez en revue les données et limitez la collection de données privées. Pour plus d’informations, consultez Exporter et supprimer des données privées.
- Si un client a besoin de configurer ce répertoire avec des exigences de sécurité spécifiques, il peut être configuré par infrastructure. Assurez-vous que le processus exécutant votre application dispose d’un accès en écriture à ce répertoire. Assurez-vous également que ce répertoire est protégé pour éviter que les données de télémétrie ne soient lues par des utilisateurs inattendus.
Java
Le dossier C:\Users\username\AppData\Local\Temp
est utilisé pour les données persistantes. Cet emplacement n’est pas configurable à partir du répertoire de configuration et les autorisations pour accéder à ce dossier sont limitées à l’utilisateur qui possède les informations d’identification requises. Pour plus d’informations, consultez Implémentation.
.NET
Par défaut, ServerTelemetryChannel
utilise le dossier de données d’application local %localAppData%\Microsoft\ApplicationInsights
ou le dossier temp %TMP%
de l’utilisateur actuel. Pour plus d’informations, consultez Implémentation.
Par le biais du fichier de configuration :
<TelemetryChannel Type="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.ServerTelemetryChannel, Microsoft.AI.ServerTelemetryChannel">
<StorageFolder>D:\NewTestFolder</StorageFolder>
</TelemetryChannel>
Par le biais du code :
Supprimer
ServerTelemetryChannel
du fichier de configuration.Ajoutez cet extrait de code à votre configuration :
ServerTelemetryChannel channel = new ServerTelemetryChannel(); channel.StorageFolder = @"D:\NewTestFolder"; channel.Initialize(TelemetryConfiguration.Active); TelemetryConfiguration.Active.TelemetryChannel = channel;
NetCore
Par défaut, ServerTelemetryChannel
utilise le dossier de données d’application local %localAppData%\Microsoft\ApplicationInsights
ou le dossier temp %TMP%
de l’utilisateur actuel. Pour plus d’informations, consultez Implémentation.
Dans un environnement Linux, le stockage local sera désactivé sauf si un dossier de stockage est spécifié.
Notes
Grâce à la version 2.15.0-beta3 et celles ultérieures, un stockage local est désormais automatiquement créé pour Linux, Mac et Windows. Pour les systèmes non Windows, le Kit de développement logiciel (SDK) crée automatiquement un dossier de stockage local selon la logique suivante :
-
${TMPDIR}
: Si la variable d’environnement${TMPDIR}
est définie, cet emplacement est utilisé. -
/var/tmp
: Si l’emplacement précédent n’existe pas, nous essayons/var/tmp
. -
/tmp
: Si les deux emplacements précédents n’existent pas, nous essayonstmp
. - Si aucun de ces emplacements n’existe, le stockage local n’est pas créé et la configuration manuelle est toujours requise.
Pour plus d’informations sur l’implémentation, consultez ServerTelemetryChannel stocke les données de télémétrie dans le dossier par défaut pendant les erreurs temporaires dans les environnements non Windows.
L’extrait de code suivant montre comment définir ServerTelemetryChannel.StorageFolder
dans la méthode ConfigureServices()
de votre classe Startup.cs
:
services.AddSingleton(typeof(ITelemetryChannel), new ServerTelemetryChannel () {StorageFolder = "/tmp/myfolder"});
Pour plus d’informations, consultez Configuration personnalisée d’AspNetCore.
Node.js
Par défaut, %TEMP%/appInsights-node{INSTRUMENTATION KEY}
est utilisé pour les données persistantes. Les autorisations d’accès à ce dossier sont limitées à l’utilisateur actuel et aux administrateurs. Pour plus d’informations, consultez Implémentation.
Le préfixe du dossier appInsights-node
peut être substitué en modifiant la valeur d’exécution de la variable statique Sender.TEMPDIR_PREFIX
trouvée dans Sender.ts.
Javascript (navigateur)
Le stockage de session HTML5 est utilisé pour faire persister les données. Deux mémoires tampons distinctes sont utilisées : AI_buffer
et AI_sent_buffer
. Les données de télémétrie traitées par lots et en attente d’envoi sont stockées dans AI_buffer
. Les données de télémétrie qui viennent d’être envoyées sont placées dans AI_sent_buffer
jusqu’à ce que le serveur d’ingestion réponde qu’elles ont bien été reçues.
Une fois que les données de télémétrie ont bien été reçues, elles sont supprimées de toutes les mémoires tampons. En cas de défaillances temporaires (par exemple, perte de connectivité pour un utilisateur), les données de télémétrie restent dans AI_buffer
jusqu’à ce qu’elles soient bien reçues ou que le serveur d’ingestion réponde que les données de télémétrie ne sont pas valides (schéma incorrect ou trop ancien, par exemple).
Les mémoires tampons de télémétrie peuvent être désactivées en définissant enableSessionStorageBuffer
sur false
. Quand le stockage de session est désactivé, une baie locale est utilisée comme stockage persistant. Comme le kit SDK JavaScript s’exécute sur un appareil client, l’utilisateur a accès à cet emplacement de stockage via les outils de développement de son navigateur.
OpenCensus Python
Par défaut, le SDK OpenCensus Python utilise le dossier de l’utilisateur actuel %username%/.opencensus/.azure/
. Les autorisations d’accès à ce dossier sont limitées à l’utilisateur actuel et aux administrateurs. Pour plus d’informations, consultez Implémentation. Le dossier contenant vos données persistantes va porter le nom du fichier Python qui a généré les données de télémétrie.
Vous pouvez changer l’emplacement de votre fichier de stockage en passant le paramètre storage_path
dans le constructeur de l’exportateur que vous utilisez.
AzureLogHandler(
connection_string='InstrumentationKey=00000000-0000-0000-0000-000000000000',
storage_path='<your-path-here>',
)
Comment envoyer des données à Application Insights à l’aide de TLS 1.2 ?
Pour garantir la sécurité des données en transit vers les points de terminaison Application Insights, nous encourageons vivement les clients à configurer leur application de façon à utiliser TLS version 1.2 minimum. Les versions antérieures de TLS/SSL (Secure Sockets Layer) se sont avérées vulnérables. Bien qu’elles fonctionnent toujours pour permettre la compatibilité descendante, elles ne sont pas recommandées. L’industrie évolue et abandonne rapidement la prise en charge de ces protocoles plus anciens.
Le PCI Security Standards Council a défini une échéance au 30 juin 30, 2018 pour désactiver les versions antérieures de TLS/SSL et effectuer une mise à niveau vers des protocoles plus sécurisés. Une fois qu’Azure arrêtera la prise en charge des versions héritées, si votre application ou vos clients ne peuvent pas communiquer via le protocole TLS version 1.2 minimum, vous ne serez plus en mesure d’envoyer des données à Application Insights. L’approche que vous adoptez pour tester et valider la prise en charge TLS de votre application varie selon le système d’exploitation ou la plateforme, ainsi que le langage ou l’infrastructure que votre application utilise.
Nous vous déconseillons de définir explicitement votre application pour qu’elle utilise uniquement TLS 1.2, sauf si nécessaire. Ce paramètre peut annuler les fonctionnalités de sécurité au niveau de la plateforme qui vous permettent de détecter automatiquement et de tirer parti des protocoles plus sécurisés et plus récents dès qu’ils sont disponibles, tels que TLS 1.3. Nous vous recommandons d’effectuer un audit complet du code de votre application pour vérifier le codage en dur des versions spécifiques de TLS/SSL.
Conseils spécifiques à la plateforme/au langage
Plateforme/Langage | Support | Informations complémentaires |
---|---|---|
Azure App Services | Pris en charge, la configuration peut être nécessaire. | La prise en charge a été annoncée en avril 2018. Lisez l’annonce pour connaître les détails de configuration. |
Applications de fonction Azure | Pris en charge, la configuration peut être nécessaire. | La prise en charge a été annoncée en avril 2018. Lisez l’annonce pour connaître les détails de configuration. |
.NET | Pris en charge, support à long terme (LTS). | Pour obtenir des informations de configuration détaillées, reportez-vous à ces instructions. |
Agent Application Insights | Pris en charge, configuration requise. | Application Insights Agent s’appuie sur une Configuration du système d’exploitation + Configuration .NET pour prendre en charge TLS 1.2. |
Node.js | Pris en charge, dans v10.5.0, la configuration peut être nécessaire. | Utilisez la documentation officielle de Node.js TLS/SSL pour toute configuration spécifique à une application. |
Java | Pris en charge, prise en charge JDK pour TLS 1.2 ajoutée dans JDK 6 mise à jour 121 et JDK 7. | JDK 8 utilise TLS 1.2 par défaut. |
Linux | Les distributions de Linux s’appuient généralement sur OpenSSL pour la prise en charge de TLS 1.2. | Vérifiez OpenSSL Changelog pour vous assurer que votre version d’OpenSSL est prise en charge. |
Windows 8.0 - 10 | Pris en charge, activé par défaut. | Pour confirmer que vous utilisez toujours les paramètres par défaut. |
Windows Server 2012 - 2016 | Pris en charge, activé par défaut. | Pour confirmer que vous utilisez toujours les paramètres par défaut. |
Windows 7 SP1 et Windows Server 2008 R2 SP1 | Pris en charge, mais non activé par défaut. | Consultez la page Paramètres de Registre de TLS pour plus d’informations sur l’activation. |
Windows Server 2008 SP2 | La prise en charge de TLS 1.2 nécessite une mise à jour. | Consultez Mise à jour pour ajouter la prise en charge de TLS 1.2 dans Windows Server 2008 SP2. |
Windows Vista | Non pris en charge. | N/A |
Vérifier la version d’OpenSSL que votre distribution Linux exécute
Pour vérifier la version d’OpenSSL installée, ouvrez le terminal et exécutez :
openssl version -a
Exécuter un test de transaction de TLS 1.2 sur Linux
Pour exécuter un test préliminaire pour voir si votre système Linux peut communiquer via TLS 1.2, ouvrez le terminal et exécutez :
openssl s_client -connect bing.com:443 -tls1_2
Données personnelles stockées dans Application Insights
Pour une discussion approfondie sur ce problème, consultez Gestion des données personnelles dans Log Analytics et Application Insights.
Mes utilisateurs peuvent-ils désactiver Application Insights ?
Pas directement. Il n’existe pas de commutateur que vos utilisateurs peuvent utiliser pour désactiver Application Insights.
Vous pouvez implémenter cette fonctionnalité dans votre application. Tous les Kits de développement logiciel (SDK) comprennent un paramètre API qui désactive la collecte de télémétrie.
Données envoyées par Application Insights
Les kits de développement logiciel (SDK) varient en fonction des plateformes et vous pouvez installer plusieurs composants. Pour plus d’informations, consultez Vue d'ensemble d’Application Insights. Chaque composant envoie des données différentes.
Classes de données envoyées dans différents scénarios
Votre action | Classes de données collectées (voir tableau suivant) |
---|---|
Ajouter le kit de développement logiciel (SDK) Application Insights à un projet web .NET | ServerContext Inferred Perf counters Demandes Exceptions session users |
Installer Application Insights Agent sur IIS | Les dépendances ServerContext Inferred Perf counters |
Ajouter le kit de développement logiciel (SDK) Application Insights à une application web Java | ServerContext Inferred Requête session users |
Ajouter le kit de développement logiciel (SDK) JavaScript à une page web | ClientContext Inferred Page ClientPerf Ajax |
Définir les propriétés par défaut | Propriétés sur tous les événements standard et personnalisés |
Appeler TrackMetric | Valeurs numériques Propriétés |
Appeler Track* | Nom d'événement Propriétés |
Appeler TrackException |
Exceptions Vidage de pile Propriétés |
Le Kit SDK ne peut pas collecter les données. Par exemple : - Impossible d’accéder aux compteurs de performances - Exception dans l’initialiseur de télémétrie |
SDK diagnostics |
Pour les Kits de développement logiciel (SDK) des autres plateformes, consultez les documents correspondants.
Les classes de données collectées
Classe des données collectées | Comprend (liste non exhaustive) |
---|---|
Propriétés | Toutes les données - en fonction de votre code |
DeviceContext |
Id adresse IP, paramètres régionaux, modèle d’appareil, réseau, type de réseau, nom OEM, résolution d’écran, instance de rôle, nom du rôle, type d’appareil |
ClientContext | Système d’exploitation, paramètres régionaux, langue, réseau, résolution de la fenêtre |
session | session id |
ServerContext | Nom de l’ordinateur, paramètres régionaux, système d’exploitation, appareil, session utilisateur, contexte utilisateur, opération |
Inferred | Emplacement géographique à partir de l’adresse IP, horodatage, système d’exploitation, navigateur |
Mesures | Valeur et nom de la mesure |
Événements | Valeur et nom de l’événement |
PageViews | URL et nom de la page ou de l’écran |
Client perf | URL/nom de la page, temps de chargement du navigateur |
Ajax | Appels HTTP de la page web au serveur |
Demandes | URL, durée, code de réponse |
Les dépendances | Type (SQL, HTTP, ...), chaîne de connexion ou URI, synchronisation/désynchronisation, durée, réussite, instruction SQL (avec Application Insights Agent) |
Exceptions | Type, message, piles d’appels, fichier source, numéro ligne, thread id |
Crashes |
Process id , parent process id , crash thread id ; correctif de l’application, id , version ; type d’exception, adresse, motif ; symboles et enregistrements obfusqués, adresses binaires de début et de fin, nom et chemin du fichier binaire, type de processeur |
Trace | Message et niveau de gravité |
Perf counters | Temps processeur, mémoire disponible, taux de demande, taux d’exception, octets privés du processus, taux d’E/S, durée de la demande, longueur de file d’attente de la demande |
Disponibilité | Code de réponse de test web, durée de chaque étape de test, nom de test, horodatage, réussite, temps de réponse, emplacement de test |
SDK diagnostics | Message de suivi ou exception |
Vous pouvez désactiver certaines données en modifiant ApplicationInsights.config.
Notes
L’IP du client est utilisée pour déduire son emplacement géographique, mais par défaut, les données d’IP ne sont plus stockées et tous les zéros sont écrits dans le champ associé. Pour en savoir plus sur la gestion des données personnelles, consultez Gestion des données personnelles dans Log Analytics et Application Insights. Si vous avez besoin de stocker des données d’adresse IP, la gestion de la géolocalisation et des adresses IP vous présentera vos options.
Puis-je modifier ou mettre à jour les données une fois qu’elles ont été collectées ?
Non. Les données sont en lecture seule et ne peuvent être supprimées qu’à l’aide de la fonctionnalité de vidage. Pour en savoir plus, consultez Aide pour les données personnelles stockées dans Log Analytics et Application Insights.
Forum aux questions
Cette section fournit des réponses aux questions fréquentes.
Qu’advient-il de la télémétrie Application Insight lorsqu’un serveur ou un appareil perd la connexion avec Azure ?
Tous nos Kits de développement logiciel (SDK), y compris le Kit de développement logiciel (SDK) web, incluent un transport fiable ou un transport robuste. Lorsque le serveur ou l’appareil perd la connexion avec Azure, la télémétrie est stockée localement sur le système de fichiers (Kits de développement logiciel [SDK] de serveur) ou dans le stockage de session HTML5 (Kit de développement logiciel [SDK] web). Le Kit de développement logiciel (SDK) envoie périodiquement cette télémétrie jusqu’à ce que notre service d’ingestion la considère « obsolète » (48 heures pour les journaux, 30 minutes pour les métriques). Les données de télémétrie obsolètes sont supprimées. Dans certains cas, par exemple lorsque le stockage local est saturé, il n’y a pas de nouvel envoi.
Est-ce que des données personnelles sont envoyées dans la télémétrie ?
Vous pouvez envoyer des données personnelles si votre code envoie ces données. Cela peut également se produire si les variables dans les arborescences des appels de procédure incluent des données personnelles. Votre équipe de développement doit mener une évaluation des risques afin de s’assurer que les données personnelles sont correctement gérées. En savoir plus sur la conservation et la confidentialité des données.
Tous les octets de l’adresse web du client ont toujours la valeur 0 lors de la recherche des attributs de géolocalisation.
Par défaut, le SDK JavaScript Application Insights n’inclut pas de données personnelles dans sa saisie semi-automatique. Toutefois, certaines données personnelles utilisées dans votre application peuvent être récupérées par le SDK (par exemple, les noms complets dans window.title
ou les ID de compte dans les paramètres de requête URL XHR). Pour un masquage personnalisé des données personnelles, ajoutez un initialiseur de télémétrie.