Collecte, rétention et stockage des données dans Application InsightsData collection, retention and storage in Application Insights

Quand vous installez le Kit de développement logiciel (SDK) Azure Application Insights dans votre application, il envoie des données de télémétrie sur votre application au cloud.When you install Azure Application Insights SDK in your app, it sends telemetry about your app to the Cloud. Bien-sûr, les développeurs responsables veulent savoir exactement quelles données sont envoyées, ce qu’elles deviennent et comment ils peuvent conserver le contrôle.Naturally, responsible developers want to know exactly what data is sent, what happens to the data, and how they can keep control of it. 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 ?In particular, could sensitive data be sent, where is it stored, and how secure is it?

Tout d’abord, la réponse courte :First, the short answer:

  • 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.The standard telemetry modules that run "out of the box" are unlikely to send sensitive data to the 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.The telemetry is concerned with load, performance and usage metrics, exception reports, and other diagnostic data. Les données d’utilisateur principal visibles dans les rapports de diagnostics sont des URL ; mais votre application ne doit en aucun cas mettre des données sensibles en texte brut dans une URL.The main user data visible in the diagnostic reports are URLs; but your app shouldn't in any case put sensitive data in plain text in a URL.
  • Vous pouvez écrire du code qui envoie les données de télémétrie personnalisées supplémentaires, afin de vous aider avec les diagnostics et à surveiller l’utilisation.You can write code that sends additional custom telemetry to help you with diagnostics and monitoring usage. (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.(This extensibility is a great feature of Application Insights.) It would be possible, by mistake, to write this code so that it includes personal and other sensitive data. Si votre application fonctionne avec ces données, vous devez vérifier de manière approfondie l’ensemble du code que vous écrivez.If your application works with such data, you should apply a thorough review processes to all the code you write.
  • Pendant le développement et le test de votre application, il est facile d’examiner ce qui est envoyé par le Kit de développement logiciel (SDK).While developing and testing your app, it's easy to inspect what's being sent by the SDK. Les données apparaissent dans les fenêtres de sortie de débogage de l’IDE et du navigateur.The data appears in the debugging output windows of the IDE and browser.
  • Les données sont stockées sur des serveurs Microsoft Azure aux États-Unis.The data is held in Microsoft Azure servers in the USA or Europe. (Mais votre application peut s’exécuter n’importe où.) Azure dispose de processus de sécurité renforcés, il est conforme à une large gamme de normes de conformité.(But your app can run anywhere.) Azure has strong security processes and meets a broad range of compliance standards. Seuls vous et votre équipe avez accès à vos données.Only you and your designated team have access to your data. Le personnel Microsoft peut avoir un accès restreint uniquement dans certaines circonstances définies, avec votre consentement.Microsoft staff can have restricted access to it only under specific limited circumstances with your knowledge. Les données sont chiffrées, en transit comme au repos.It's encrypted in transit and at rest.

Le reste de cet article aborde plus en détail ces réponses.The rest of this article elaborates more fully on these answers. Il est conçu pour être autonome, afin que vous puissiez le montrer à des collègues qui ne font pas partie de votre équipe.It's designed to be self-contained, so that you can show it to colleagues who aren't part of your immediate team.

Présentation d’Application InsightsWhat is Application Insights?

Azure Application Insights est un service de Microsoft qui vous aide à améliorer les performances et la convivialité de votre application dynamique.Azure Application Insights is a service provided by Microsoft that helps you improve the performance and usability of your live application. 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.It monitors your application all the time it's running, both during testing and after you've published or deployed it. Application Insights crée des graphiques et tableaux présentant, par exemple, les heures de la journée à laquelle 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.Application Insights creates charts and tables that show you, for example, what times of day you get most users, how responsive the app is, and how well it is served by any external services that it depends on. En cas d’incidents, d’échecs ou de problèmes de performances, vous pouvez effectuer une recherche dans les données de télémétrie pour diagnostiquer la cause en détail.If there are crashes, failures or performance issues, you can search through the telemetry data in detail to diagnose the cause. Et le service vous enverra des messages électroniques si des modifications sont apportées à la disponibilité et à la performance de votre application.And the service will send you emails if there are any changes in the availability and performance of your app.

Pour obtenir cette fonctionnalité, vous devez installer un Kit SDK Application Insights dans votre application, il devient partie intégrante de son code.In order to get this functionality, you install an Application Insights SDK in your application, which becomes part of its code. Lorsque votre application s’exécute, le Kit SDK surveille ses opérations et envoie les données de télémétrie au service Application Insights.When your app is running, the SDK monitors its operation and sends telemetry to the Application Insights service. Il s’agit d’un service cloud hébergé par Microsoft Azure.This is a cloud service hosted by Microsoft Azure. (Mais Application Insights fonctionne pour toutes les applications, pas uniquement celles qui sont hébergées dans Azure.)(But Application Insights works for any applications, not just those that are hosted in Azure.)

Le service Application Insights stocke et analyse les données de télémétrie.The Application Insights service stores and analyzes the telemetry. 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.To see the analysis or search through the stored telemetry, you sign in to your Azure account and open the Application Insights resource for your 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.You can also share access to the data with other members of your team, or with specified Azure subscribers.

Vous pouvez exporter des données à partir du service Application Insights vers une base de données ou des outils externes, par exemple.You can have data exported from the Application Insights service, for example to a database or to external tools. Vous devez attribuer une clé spéciale, que vous obtenez de la part du service, à chaque outil.You provide each tool with a special key that you obtain from the service. La clé peut être révoquée si nécessaire.The key can be revoked if necessary.

Les Kits SDK d’Application Insights sont disponibles pour une variété d’applications : les services web hébergés dans vos propres serveurs Java EE ou ASP.NET ou dans Azure ; les clients web, autrement dit, le code s’exécutant dans une page web ; les applications et les services de bureau ; les applications pour appareils comme Windows Phone, iOS et Android.Application Insights SDKs are available for a range of application types: web services hosted in your own Java EE or ASP.NET servers, or in Azure; web clients - that is, the code running in a web page; desktop apps and services; device apps such as Windows Phone, iOS, and Android. Toutes envoient les données de télémétrie vers le même service.They all send telemetry to the same service.

Quelles données collecte-t-il ?What data does it collect?

Comment les données sont-elles collectées ?How is the data is collected?

Il existe trois sources de données :There are three sources of data:

  • Le SDK, que vous intégrez à votre application soit pendant le développement, soit au moment de l’exécution.The SDK, which you integrate with your app either in development or at run time. Il existe différents Kits SDK pour différents types d’applications.There are different SDKs for different application types. Il existe également un Kit SDK pour les pages web, qui se charge dans le navigateur de l’utilisateur final et sur la page.There's also an SDK for web pages, which loads into the end-user's browser along with the page.

    • Chaque Kit SDK comporte un certain nombre de modules, utilisant diverses techniques pour collecter différents types de données de télémétrie.Each SDK has a number of modules, which use different techniques to collect different types of telemetry.
    • 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.If you install the SDK in development, you can use its API to send your own telemetry, in addition to the standard modules. Ces données de télémétrie personnalisées peuvent inclure toutes les données que vous souhaitez envoyer.This custom telemetry can include any data you want to send.
  • 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.In some web servers, there are also agents that run alongside the app and send telemetry about CPU, memory, and network occupancy. Par exemple, les machines virtuelles Azure, les hôtes Docker et les serveurs Java EE peuvent disposer de ces agents.For example, Azure VMs, Docker hosts, and Java EE servers can have such agents.

  • Les tests de disponibilité sont des processus exécutés par Microsoft qui envoient des requêtes à votre application web à intervalles réguliers.Availability tests are processes run by Microsoft that send requests to your web app at regular intervals. Les résultats sont envoyés au service Application Insights.The results are sent to the Application Insights service.

Quel genre de données est collecté ?What kinds of data are collected?

Les principales catégories sont :The main categories are:

  • La télémétrie du serveur web : requêtes HTTP.Web server telemetry - HTTP requests. L’URI, le temps nécessaire pour traiter la demande, le code de réponse, l’adresse IP du client.Uri, time taken to process the request, response code, client IP address. L’Id de session.Session id.
  • Les pages web : page, utilisateur et décomptes de sessions.Web pages - Page, user and session counts. Le temps de chargement de page.Page load times. Les exceptions.Exceptions. Appels Ajax.Ajax calls.
  • Les performances des compteurs : mémoire, UC, E/S, occupation du réseau.Performance counters - Memory, CPU, IO, Network occupancy.
  • Le contexte du client et du serveur : système d’exploitation, paramètres régionaux, type d’appareil, navigateur, résolution d’écran.Client and server context - OS, locale, device type, browser, screen resolution.
  • Les exceptions et les incidents : vidages de pile, génération d’id, type d’UC.Exceptions and crashes - stack dumps, build id, CPU type.
  • Les dépendances : les appels aux services externes tels que REST, SQL, AJAX.Dependencies - calls to external services such as REST, SQL, AJAX. L’URI ou la chaîne de connexion, la durée, la réussite, la commande.URI or connection string, duration, success, command.
  • Les tests de disponibilité : durée et étapes du test, réponses.Availability tests - duration of test and steps, responses.
  • 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.Trace logs and custom telemetry - anything you code into your logs or telemetry.

Plus de détails.More detail.

Comment puis-je vérifier ce qui a été collecté ?How can I verify what's being collected?

Si vous développez l’application à l’aide de Visual Studio, exécutez l’application en mode débogage (F5).If you're developing the app using Visual Studio, run the app in debug mode (F5). Les données de télémétrie s’affichent dans la fenêtre Sortie.The telemetry appears in the Output window. À partir de là, vous pouvez les copier et les mettre au format JSON pour une inspection facile.From there, you can copy it and format it as JSON for easy inspection.

Il existe également une vue plus lisible dans la fenêtre Diagnostics.There's also a more readable view in the Diagnostics window.

Pour les pages web, ouvrez la fenêtre de débogage de votre navigateur.For web pages, open your browser's debugging window.

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 ?Can I write code to filter the telemetry before it is sent?

Cela est possible en écrivant un plug-in de processeur de télémétrie.This would be possible by writing a telemetry processor plugin.

Combien de temps sont conservées les données ?How long is the data kept?

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.Raw data points (that is, items that you can query in Analytics and inspect in Search) are kept for up to 730 days. Vous pouvez sélectionner une durée de rétention de 30, 60, 90, 120, 180, 270, 365, 550 ou 730 jours.You can select a retention duration of 30, 60, 90, 120, 180, 270, 365, 550 or 730 days. Si vous voulez conserver les données plus longtemps, vous pouvez utiliser l’exportation continue pour les copier dans un compte de stockage durant l’ingestion des données.If you need to keep data longer than 730 days, you can use Continuous Export to copy it to a storage account during data ingestion.

Des frais supplémentaires sont facturés pour les données conservées pendant plus de 90 jours.Data kept longer than 90 days will incur addition charges. Plus d’informations sur la tarification d’Application Insights sur la page de tarification Azure Monitor.Learn more about Application Insights pricing on the Azure Monitor pricing page.

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.Aggregated data (that is, counts, averages and other statistical data that you see in Metric Explorer) are retained at a grain of 1 minute for 90 days.

Les captures instantanées de débogage sont stockées pendant quinze jours.Debug snapshots are stored for fifteen days. Cette stratégie de rétention est définie application par application.This retention policy is set on a per-application basis. Si vous devez augmenter cette valeur, faites-en la demande en ouvrant une demande de support dans le portail Azure.If you need to increase this value, you can request an increase by opening a support case in the Azure portal.

Qui peut accéder aux données ?Who can access the data?

Les données sont visibles par vous et, si vous disposez un compte d’organisation, par les membres de votre équipe.The data is visible to you and, if you have an organization account, your team members.

Vous ou les membres de votre équipe pouvez les exporter et les copier à d’autres endroits, ou les transférer à d’autres personnes.It can be exported by you and your team members and could be copied to other locations and passed on to other people.

Que fait Microsoft des informations que mon application envoie à Application Insights ?What does Microsoft do with the information my app sends to Application Insights?

Microsoft n’utilise les données que pour vous fournir le service.Microsoft uses the data only in order to provide the service to you.

Où sont conservées les données ?Where is the data held?

  • Vous pouvez sélectionner l’emplacement quand vous créez une ressource Application Insights.You can select the location when you create a new Application Insights resource. Vous pouvez en savoir plus sur la disponibilité d’Application Insights par région ici.Know more about Application Insights availability per region here.

Cela signifie-t-il que mon application doit être hébergée aux États-Unis, en Europe ou en Asie Sud-Est ?Does that mean my app has to be hosted in the USA, Europe or Southeast Asia?

  • Non.No. Votre application peut s’exécuter n’importe où, sur vos propres hôtes locaux ou dans le cloud.Your application can run anywhere, either in your own on-premises hosts or in the cloud.

Mes données sont-elles sécurisées ?How secure is my data?

Application Insights est un service Azure.Application Insights is an Azure Service. Les stratégies de sécurité sont décrites dans le livre blanc sur la sécurité, la confidentialité et la conformité Azure.Security policies are described in the Azure Security, Privacy, and Compliance white paper.

Les données sont stockées sur des serveurs Microsoft Azure.The data is stored in Microsoft Azure servers. Pour les comptes du portail Azure, les restrictions sont décrites dans le document relatif à la sécurité, la confidentialité et la conformité Azure.For accounts in the Azure Portal, account restrictions are described in the Azure Security, Privacy, and Compliance document.

L'accès à vos données par le personnel Microsoft est limité.Access to your data by Microsoft personnel is restricted. Nous n'accédons à vos données qu'avec votre autorisation, et seulement pour vous aider à utiliser Application Insights.We access your data only with your permission and if it is necessary to support your use of 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.Data in aggregate across all our customers' applications (such as data rates and average size of traces) is used to improve 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 ?Could someone else's telemetry interfere with my Application Insights data?

Elles peuvent envoyer des données de télémétrie supplémentaires à votre compte à l’aide de la clé d’instrumentation, qui se trouve dans le code de vos pages web.They could send additional telemetry to your account by using the instrumentation key, which can be found in the code of your web pages. Avec suffisamment de données supplémentaires, vos mesures ne représentent pas correctement les performances et l’utilisation de votre application.With enough additional data, your metrics would not correctly represent your app's performance and usage.

Si vous partagez le code avec d’autres projets, pensez à supprimer votre clé d’instrumentation.If you share code with other projects, remember to remove your instrumentation key.

Les données sont-elles chiffrées ?Is the data encrypted?

Toutes les données sont chiffrées, aussi bien au repos que lors de leur déplacement entre les centres de données.All data is encrypted at rest and as it moves between data centers.

Les données sont-elles chiffrées lors de leur passage depuis mon application vers les serveurs Application Insights ?Is the data encrypted in transit from my application to Application Insights servers?

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.Yes, we use https to send data to the portal from nearly all SDKs, including web servers, devices and HTTPS web pages. La seule exception concerne les données envoyées à partir des pages web HTTP.The only exception is data sent from plain HTTP web pages.

Le kit de développement logiciel (SDK) crée-t-il un stockage local temporaire ?Does the SDK create temporary local storage?

Oui, certains canaux de télémétrie conservent les données localement si un point de terminaison est inaccessible.Yes, certain Telemetry Channels will persist data locally if an endpoint cannot be reached. Consultez ce qui suit pour voir les infrastructures et les canaux de télémétrie concernés.Please review below to see which frameworks and telemetry channels are affected.

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.Telemetry channels that utilize local storage create temp files in the TEMP or APPDATA directories which are restricted to the specific account running your application. Cela se produit lorsqu’un point de terminaison a été temporairement indisponible ou lorsque vous avez atteint la limite de bande passante.This may happen when an endpoint was temporarily unavailable or you hit the throttling limit. 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.Once this issue is resolved, the telemetry channel will resume sending all the new and persisted data.

Ces données persistantes ne sont pas chiffrées en local.This persisted data is not encrypted locally. Si cela pose problème, passez en revue les données et limitez la collection de données privées.If this is a concern, review the data and restrict the collection of private data. (Pour plus d’informations, consultez Comment exporter et supprimer des données privées.)(See How to export and delete private data for more information.)

Si un client a besoin configurer ce répertoire avec des exigences de sécurité spécifiques, il peut être configuré conformément au framework.If a customer needs to configure this directory with specific security requirements it can be configured per framework. Vérifiez que le processus exécutant votre application a accès en écriture à ce répertoire, mais veillez également à que ce répertoire soit protégé pour éviter la lecture des données de télémétrie par des utilisateurs non autorisés.Please make sure that the process running your application has write access to this directory, but also make sure this directory is protected to avoid telemetry being read by unintended users.

JavaJava

C:\Users\username\AppData\Local\Temp est utilisé pour les données persistantes.C:\Users\username\AppData\Local\Temp is used for persisting data. 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.This location isn't configurable from the config directory and the permissions to access this folder are restricted to the specific user with required credentials. (Consultez l’implémentation ici.)(See implementation here.)

.Net.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.By default ServerTelemetryChannel uses the current user’s local app data folder %localAppData%\Microsoft\ApplicationInsights or temp folder %TMP%. (Consultez l’implémentation ici.)(See implementation here.)

Par le biais du fichier de configuration :Via configuration file:

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

Par le biais du code :Via code:

  • Supprimer ServerTelemetryChannel du fichier de configurationRemove ServerTelemetryChannel from configuration file
  • Ajoutez cet extrait de code à votre configuration :Add this snippet to your configuration:
    ServerTelemetryChannel channel = new ServerTelemetryChannel();
    channel.StorageFolder = @"D:\NewTestFolder";
    channel.Initialize(TelemetryConfiguration.Active);
    TelemetryConfiguration.Active.TelemetryChannel = channel;
    

NetCoreNetCore

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.By default ServerTelemetryChannel uses the current user’s local app data folder %localAppData%\Microsoft\ApplicationInsights or temp folder %TMP%. (Consultez l’implémentation ici.) Dans un environnement Linux, le stockage local sera désactivé sauf si un dossier de stockage est spécifié.(See implementation here.) In a Linux environment, local storage will be disabled unless a storage folder is specified.

L’extrait de code suivant montre comment définir ServerTelemetryChannel.StorageFolder dans la méthode ConfigureServices() de votre classe Startup.cs :The following code snippet shows how to set ServerTelemetryChannel.StorageFolder in the ConfigureServices() method of your Startup.cs class:

services.AddSingleton(typeof(ITelemetryChannel), new ServerTelemetryChannel () {StorageFolder = "/tmp/myfolder"});

(Pour plus d’informations, consultez Configuration personnalisée d’AspNetCore.(See AspNetCore Custom Configuration for more information. ))

Node.jsNode.js

Par défaut, %TEMP%/appInsights-node{INSTRUMENTATION KEY} est utilisé pour les données persistantes.By default %TEMP%/appInsights-node{INSTRUMENTATION KEY} is used for persisting data. Les autorisations d’accès à ce dossier sont limitées à l’utilisateur actuel et aux administrateurs.Permissions to access this folder are restricted to the current user and Administrators. (Consultez l’implémentation ici.)(See implementation here.)

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.The folder prefix appInsights-node can be overridden by changing the runtime value of the static variable Sender.TEMPDIR_PREFIX found in Sender.ts.

Comment envoyer des données à Application Insights à l’aide de TLS 1.2 ?How do I send data to Application Insights using 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.To insure the security of data in transit to the Application Insights endpoints, we strongly encourage customers to configure their application to use at least Transport Layer Security (TLS) 1.2. Les versions antérieures de TLS/Secure Sockets Layer (SSL) sont vulnérables et bien qu’elles fonctionnent toujours actuellement pour permettre une compatibilité descendante, elles sont déconseillées, et le secteur évolue rapidement vers un arrêt de la prise en charge de ces protocoles plus anciens.Older versions of TLS/Secure Sockets Layer (SSL) have been found to be vulnerable and while they still currently work to allow backwards compatibility, they are not recommended, and the industry is quickly moving to abandon support for these older protocols.

Le PCI Security Standards Council a défini une échéance au 30 juin 2018 pour désactiver les versions antérieures de TLS/SSL et effectuer une mise à niveau vers des protocoles plus sécurisés.The PCI Security Standards Council has set a deadline of June 30th, 2018 to disable older versions of TLS/SSL and upgrade to more secure protocols. Une fois qu’Azure arrêtera la prise en charge des versions héritées, si votre application/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.Once Azure drops legacy support, if your application/clients cannot communicate over at least TLS 1.2 you would not be able to send data to 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/la plateforme, ainsi que le langage/l’infrastructure que votre application utilise.The approach you take to test and validate your application's TLS support will vary depending on the operating system/platform as well as the language/framework your application uses.

Nous ne recommandons pas de configurer explicitement votre application de façon à ce qu’elle utilise uniquement TLS 1.2, sauf nécessité absolue, car cela 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, par exemple TLS 1.3.We do not recommend explicitly setting your application to only use TLS 1.2 unless absolutely necessary as this can break platform level security features that allow you to automatically detect and take advantage of newer more secure protocols as they become available such as 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.We recommend performing a thorough audit of your application's code to check for hardcoding of specific TLS/SSL versions.

Conseils spécifiques à la plateforme/au langagePlatform/Language specific guidance

Plateforme/LangagePlatform/Language SupportSupport Informations complémentairesMore Information
Azure App ServicesAzure App Services Pris en charge, la configuration peut être nécessaire.Supported, configuration may be required. La prise en charge a été annoncée en avril 2018.Support was announced in April 2018. Lisez l’annonce pour connaître les détails de configuration.Read the announcement for configuration details.
Applications de fonction AzureAzure Function Apps Pris en charge, la configuration peut être nécessaire.Supported, configuration may be required. La prise en charge a été annoncée en avril 2018.Support was announced in April 2018. Lisez l’annonce pour connaître les détails de configuration.Read the announcement for configuration details.
.NET.NET Pris en charge, la configuration diffère selon la version.Supported, configuration varies by version. Pour des informations de configuration détaillées pour .NET 4.7 et versions antérieures, reportez-vous à ces instructions.For detailed configuration info for .NET 4.7 and earlier versions refer to these instructions.
Status MonitorStatus Monitor Pris en charge, configuration requiseSupported, configuration required Status Monitor s’appuie sur la configuration du système d’exploitation + la configuration .NET pour prendre en charge TLS 1.2.Status Monitor relies on OS Configuration + .NET Configuration to support TLS 1.2.
Node.jsNode.js Pris en charge, dans v10.5.0, la configuration peut être nécessaire.Supported, in v10.5.0, configuration may be required. Utilisez la documentation officielle de Node.js TLS/SSL pour toute configuration spécifique à une application.Use the official Node.js TLS/SSL documentation for any application specific configuration.
JavaJava Pris en charge, prise en charge JDK pour TLS 1.2 ajoutée dans JDK 6 mise à jour 121 et JDK 7.Supported, JDK support for TLS 1.2 was added in JDK 6 update 121 and JDK 7. JDK 8 utilise TLS 1.2 par défaut.JDK 8 uses TLS 1.2 by default.
LinuxLinux Les distributions de Linux s’appuient généralement sur OpenSSL pour la prise en charge de TLS 1.2.Linux distributions tend to rely on OpenSSL for TLS 1.2 support. Vérifiez OpenSSL Changelog pour vous assurer que votre version d’OpenSSL est prise en charge.Check the OpenSSL Changelog to confirm your version of OpenSSL is supported.
Windows 8.0 - 10Windows 8.0 - 10 Pris en charge, activé par défaut.Supported, and enabled by default. Pour confirmer que vous utilisez toujours les paramètres par défaut.To confirm that you are still using the default settings.
Windows Server 2012 - 2016Windows Server 2012 - 2016 Pris en charge, activé par défaut.Supported, and enabled by default. Pour confirmer que vous utilisez toujours les paramètres par défautTo confirm that you are still using the default settings
Windows 7 SP1 et Windows Server 2008 R2 SP1Windows 7 SP1 and Windows Server 2008 R2 SP1 Pris en charge, mais non activé par défaut.Supported, but not enabled by default. Consultez la page Paramètres de Registre de TLS pour plus d’informations sur l’activation.See the Transport Layer Security (TLS) registry settings page for details on how to enable.
Windows Server 2008 SP2Windows Server 2008 SP2 La prise en charge de TLS 1.2 nécessite une mise à jour.Support for TLS 1.2 requires an update. Consultez Mise à jour pour ajouter la prise en charge de TLS 1.2 dans Windows Server 2008 SP2.See Update to add support for TLS 1.2 in Windows Server 2008 SP2.
Windows VistaWindows Vista Non pris en charge.Not Supported. N/AN/A

Vérifier la version d’OpenSSL que votre distribution Linux exécuteCheck what version of OpenSSL your Linux distribution is running

Pour vérifier la version d’OpenSSL installée, ouvrez le terminal et exécutez :To check what version of OpenSSL you have installed, open the terminal and run:

openssl version -a

Exécuter un test de transaction de TLS 1.2 sur LinuxRun a test TLS 1.2 transaction on Linux

Pour exécuter un test préliminaire de base pour voir si votre système Linux peut communiquer via TLS 1.2.To run a basic preliminary test to see if your Linux system can communicate over TLS 1.2. Ouvrez le terminal et exécutez :Open the terminal and run:

openssl s_client -connect bing.com:443 -tls1_2

Données personnelles stockées dans Application InsightsPersonal data stored in Application Insights

Notre article Données personnelles Application Insights traite de ce problème en profondeur.Our Application Insights personal data article discusses this issue in-depth.

Mes utilisateurs peuvent-ils désactiver Application Insights ?Can my users turn off Application Insights?

Pas directement.Not directly. Il n’existe pas de commutateur que vos utilisateurs peuvent utiliser pour désactiver Application Insights.We don't provide a switch that your users can operate to turn off Application Insights.

Toutefois, vous pouvez implémenter cette fonctionnalité dans votre application.However, you can implement such a feature in your application. Tous les Kits de développement logiciel (SDK) comprennent un paramètre API qui désactive la collecte de télémétrie.All the SDKs include an API setting that turns off telemetry collection.

Données envoyées par Application InsightsData sent by Application Insights

Les kits de développement logiciel (SDK) varient en fonction des plateformes et vous pouvez installer plusieurs composants.The SDKs vary between platforms, and there are several components that you can install. (Consultez Application Insights - Vue d’ensemble.) Chaque composant envoie des données différentes.(Refer to Application Insights - overview.) Each component sends different data.

Classes de données envoyées dans différents scénariosClasses of data sent in different scenarios

Votre actionYour action Classes de données collectées (voir tableau suivant)Data classes collected (see next table)
Ajouter le kit de développement logiciel (SDK) Application Insights à un projet web .NETAdd Application Insights SDK to a .NET web project ServerContextServerContext
InferredInferred
Perf countersPerf counters
DemandesRequests
ExceptionsExceptions
sessionSession
usersusers
Installer Status Monitor sur IISInstall Status Monitor on IIS Les dépendancesDependencies
ServerContextServerContext
InferredInferred
Perf countersPerf counters
Ajouter le kit de développement logiciel (SDK) Application Insights à une application web JavaAdd Application Insights SDK to a Java web app ServerContextServerContext
InferredInferred
RequêteRequest
sessionSession
usersusers
Ajouter le kit de développement logiciel (SDK) JavaScript à une page webAdd JavaScript SDK to web page ClientContextClientContext
InferredInferred
PagePage
ClientPerfClientPerf
AjaxAjax
Définir les propriétés par défautDefine default properties Propriétés sur tous les événements standard et personnalisésProperties on all standard and custom events
Appeler TrackMetricCall TrackMetric Valeurs numériquesNumeric values
PropriétésProperties
Appeler Track*Call Track* Nom de l'événementEvent name
PropriétésProperties
Appeler TrackExceptionCall TrackException ExceptionsExceptions
Vidage de pileStack dump
PropriétésProperties
Le Kit SDK ne peut pas collecter les données.SDK can't collect data. Par exemple :For example:
- impossible d’accéder aux compteurs de performances- can't access perf counters
- exception dans l’initialiseur de télémétrie- exception in telemetry initializer
SDK diagnosticsSDK diagnostics

Pour les Kits de développement logiciel (SDK) des autres plateformes, consultez les documents correspondants.For SDKs for other platforms, see their documents.

Les classes de données collectéesThe classes of collected data

Classe des données collectéesCollected data class Comprend (liste non exhaustive)Includes (not an exhaustive list)
PropriétésProperties Toutes les données - en fonction de votre codeAny data - determined by your code
DeviceContextDeviceContext 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’appareilId, IP, Locale, Device model, network, network type, OEM name, screen resolution, Role Instance, Role Name, Device Type
ClientContextClientContext Système d’exploitation, paramètres régionaux, langue, réseau, résolution de la fenêtreOS, locale, language, network, window resolution
sessionSession ID de sessionsession id
ServerContextServerContext Nom de l’ordinateur, paramètres régionaux, système d’exploitation, appareil, session utilisateur, contexte utilisateur, opérationMachine name, locale, OS, device, user session, user context, operation
InferredInferred Emplacement géographique à partir de l’adresse IP, horodatage, système d’exploitation, navigateurgeo location from IP address, timestamp, OS, browser
MesuresMetrics Valeur et nom de la mesureMetric name and value
ÉvénementsEvents Valeur et nom de l’événementEvent name and value
PageViewsPageViews URL et nom de la page ou de l’écranURL and page name or screen name
Client perfClient perf URL/nom de la page, temps de chargement du navigateurURL/page name, browser load time
AjaxAjax Appels HTTP de la page web au serveurHTTP calls from web page to server
DemandesRequests URL, durée, code de réponseURL, duration, response code
Les dépendancesDependencies Type (SQL, HTTP, ...), chaîne de connexion ou URI, synchronisation/désynchronisation, durée, réussite, instruction SQL (avec Status Monitor)Type(SQL, HTTP, ...), connection string or URI, sync/async, duration, success, SQL statement (with Status Monitor)
ExceptionsExceptions Type, message, piles d’appels, fichier source et numéro ligne, ID du threadType, message, call stacks, source file and line number, thread id
CrashesCrashes ID de processus, ID de processus parent, ID de thread d’incident ; correctif de l’application, ID, version ; type d’exception, adresse, motif ; symboles et enregistrements masqués, adresses binaires de début et de fin, nom et chemin du fichier binaire, type de processeurProcess id, parent process id, crash thread id; application patch, id, build; exception type, address, reason; obfuscated symbols and registers, binary start and end addresses, binary name and path, cpu type
TraceTrace Message et niveau de gravitéMessage and severity level
Perf countersPerf 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 demandeProcessor time, available memory, request rate, exception rate, process private bytes, IO rate, request duration, request queue length
DisponibilitéAvailability 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 testWeb test response code, duration of each test step, test name, timestamp, success, response time, test location
SDK diagnosticsSDK diagnostics Message de suivi ou exceptionTrace message or Exception

Vous pouvez désactiver certaines données en modifiant ApplicationInsights.configYou can switch off some of the data by editing 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é.Client IP is used to infer geographic location, but by default IP data is no longer stored and all zeroes are written to the associated field. Pour en savoir plus sur la gestion des données personnelles, nous vous invitons à lire cet article.To understand more about personal data handling we recommend this article. Si vous avez besoin de stocker des données d’adresse IP, notre article sur la collecte des adresses IP vous présentera vos options.If you need to store IP address data our IP address collection article will walk you through your options.

CréditsCredits

Ce produit contient des données GeoLite2 créées par MaxMind, disponibles sur https://www.maxmind.com.This product includes GeoLite2 data created by MaxMind, available from https://www.maxmind.com.