diff --git a/x-pack/plugins/translations/translations/fr-FR.json b/x-pack/plugins/translations/translations/fr-FR.json index c4ed963a6265c..d0c5582a594d8 100644 --- a/x-pack/plugins/translations/translations/fr-FR.json +++ b/x-pack/plugins/translations/translations/fr-FR.json @@ -76,7 +76,103 @@ } }, "messages": { - "autocomplete.conflictIndicesWarning.index.description": "{name} ({count} index)", + "aiAssistantManagementObservability.kb.addManualEntry.errorNotification": "Un problème est survenu lors de la création de {name}", + "aiAssistantManagementObservability.kb.addManualEntry.successNotification": "{name} a bien été créé", + "aiAssistantManagementObservability.kb.deleteManualEntry.errorNotification": "Un problème est survenu lors de la suppression de {name}", + "aiAssistantManagementObservability.kb.deleteManualEntry.successNotification": "{id} a bien été supprimé", + "aiAssistantManagementObservability.kb.importEntries.successNotification": "Importation réussie de {number} éléments", + "aiAssistantManagementObservability.knowledgeBaseBulkImportFlyout.uploadAJSONFileTextLabel": "Chargez un fichier ({ext}) JSON délimité par une nouvelle ligne contenant une liste d'entrées à ajouter à votre base de connaissances.", + "aiAssistantManagementObservability.knowledgeBaseNewEntryFlyout.h2.editEntryLabel": "Modifier {id}", + "aiAssistantManagementObservability.searchConnectorTab.searchConnectorsManagementLink": "Vous pouvez gérer les connecteurs sous {searchConnectorLink}.", + "aiAssistantManagementObservability.app.description": "Gérer l'Assistant d'IA pour Observability.", + "aiAssistantManagementObservability.app.title": "Assistant d'IA pour Observability", + "aiAssistantManagementObservability.app.titleBar": "Paramètres de l'Assistant d'IA pour Observability", + "aiAssistantManagementObservability.breadcrumb.index": "Assistants d'IA", + "aiAssistantManagementObservability.breadcrumb.observability": "Observabilité", + "aiAssistantManagementObservability.breadcrumb.serverless.observability": "Paramètres de l'Assistant d'IA pour Observability", + "aiAssistantManagementObservability.columns.systemBadgeLabel": "Système", + "aiAssistantManagementObservability.kb.importEntries.errorNotification": "Un problème est survenu lors de l'importation des éléments", + "aiAssistantManagementObservability.kbTab.columns.assistantSummarization": "Assistant", + "aiAssistantManagementObservability.kbTab.columns.dateCreated": "Date de création", + "aiAssistantManagementObservability.kbTab.columns.manualBadgeLabel": "Manuel", + "aiAssistantManagementObservability.kbTab.columns.name": "Nom", + "aiAssistantManagementObservability.kbTab.columns.numberOfEntries": "Nombre d'entrées", + "aiAssistantManagementObservability.kbTab.columns.type": "Type", + "aiAssistantManagementObservability.knowledgeBaseBulkImportFlyout.addFilesToEnrichTitleLabel": "Ajouter des fichiers pour enrichir votre base de connaissances", + "aiAssistantManagementObservability.knowledgeBaseBulkImportFlyout.cancelButtonEmptyLabel": "Annuler", + "aiAssistantManagementObservability.knowledgeBaseBulkImportFlyout.errorParsingEntries.description": "Erreur lors de l'analyse des entrées JSON", + "aiAssistantManagementObservability.knowledgeBaseBulkImportFlyout.errorParsingEntries.title": "Un problème est survenu", + "aiAssistantManagementObservability.knowledgeBaseBulkImportFlyout.euiFilePicker.selectOrDragAndLabel": "Sélectionner ou glisser-déposer un fichier .ndjson", + "aiAssistantManagementObservability.knowledgeBaseBulkImportFlyout.euiFilePicker.uploadJSONLabel": "Charger le JSON", + "aiAssistantManagementObservability.knowledgeBaseBulkImportFlyout.h2.bulkImportLabel": "Importer des fichiers", + "aiAssistantManagementObservability.knowledgeBaseBulkImportFlyout.saveButtonLabel": "Enregistrer", + "aiAssistantManagementObservability.knowledgeBaseBulkImportFlyout.theObjectsShouldBeTextLabel": "Les objets doivent être au format suivant :", + "aiAssistantManagementObservability.knowledgeBaseCategoryFlyout.actions.dateCreated": "Date de création", + "aiAssistantManagementObservability.knowledgeBaseCategoryFlyout.actions.delete": "Supprimer", + "aiAssistantManagementObservability.knowledgeBaseCategoryFlyout.actions.deleteDescription": "Supprimer cette entrée", + "aiAssistantManagementObservability.knowledgeBaseCategoryFlyout.actions.name": "Nom", + "aiAssistantManagementObservability.knowledgeBaseCategoryFlyout.categoryMap.lensCategoryDescriptionLabel": "Lens est une fonctionnalité de Kibana qui permet à l'Assistant de visualiser des données en réponse aux requêtes des utilisateurs. Ces éléments de base de connaissances sont chargés dans la base de connaissances par défaut.", + "aiAssistantManagementObservability.knowledgeBaseEditManualEntryFlyout.createdOnTextLabel": "Créé le", + "aiAssistantManagementObservability.knowledgeBaseEditManualEntryFlyout.deleteEntryButtonLabel": "Supprimer l’entrée", + "aiAssistantManagementObservability.knowledgeBaseEditManualEntryFlyout.euiFormRow.contentsLabel": "Contenu", + "aiAssistantManagementObservability.knowledgeBaseEditManualEntryFlyout.euiFormRow.idLabel": "Nom", + "aiAssistantManagementObservability.knowledgeBaseEditManualEntryFlyout.euiMarkdownEditor.enterContentsLabel": "Entrer du contenu", + "aiAssistantManagementObservability.knowledgeBaseNewEntryFlyout.h2.newEntryLabel": "Nouvelle entrée", + "aiAssistantManagementObservability.knowledgeBaseNewManualEntryFlyout.cancelButtonEmptyLabel": "Annuler", + "aiAssistantManagementObservability.knowledgeBaseNewManualEntryFlyout.euiMarkdownEditor.observabilityAiAssistantKnowledgeBaseViewMarkdownEditorLabel": "observabilityAiAssistantKnowledgeBaseViewMarkdownEditor", + "aiAssistantManagementObservability.knowledgeBaseNewManualEntryFlyout.saveButtonLabel": "Enregistrer", + "aiAssistantManagementObservability.knowledgeBaseTab.bulkImportContextMenuItemLabel": "Importation groupée", + "aiAssistantManagementObservability.knowledgeBaseTab.euiFieldSearch.searchEntriesLabel": "Effectuer une recherche dans les entrées", + "aiAssistantManagementObservability.knowledgeBaseTab.euiFieldSearch.searchThisLabel": "Rechercher une entrée", + "aiAssistantManagementObservability.knowledgeBaseTab.newEntryButtonLabel": "Nouvelle entrée", + "aiAssistantManagementObservability.knowledgeBaseTab.reloadButtonLabel": "Recharger", + "aiAssistantManagementObservability.knowledgeBaseTab.singleEntryContextMenuItemLabel": "Entrée unique", + "aiAssistantManagementObservability.searchConnectorTab.searchConnectorsEnablesYouTextLabel": "Les connecteurs vous permettent d'indexer du contenu provenant de sources externes, ce qui le rend disponible pour l'Assistant IA. Cela peut considérablement améliorer la pertinence des réponses de l'Assistant IA.", + "aiAssistantManagementObservability.searchConnectorTab.searchConnectorsManagementPageLinkLabel": "Connecteurs", + "aiAssistantManagementObservability.settingsPage.connectorSettingsLabel": "Paramètres du connecteur", + "aiAssistantManagementObservability.settingsPage.connectYourElasticAITextLabel": "Sélectionnez le connecteur d'IA générative que vous souhaitez utiliser par défaut pour l'Assistant d'IA d'Observability.", + "aiAssistantManagementObservability.settingsPage.euiDescribedFormGroup.inOrderToUseLabel": "Pour utiliser l'Assistant d'IA d'Observability, vous devez installer le connecteur d'IA générative.", + "aiAssistantManagementObservability.settingsPage.euiSelect.generativeAIProviderLabel": "Fournisseur d'IA générative", + "aiAssistantManagementObservability.settingsPage.goToConnectorsButtonLabel": "Gérer les connecteurs", + "aiAssistantManagementObservability.settingsPage.goToFeatureControlsButtonLabel": "Aller dans les espaces", + "aiAssistantManagementObservability.settingsPage.h2.settingsLabel": "Paramètres", + "aiAssistantManagementObservability.settingsPage.h4.selectDefaultConnectorLabel": "Connecteur par défaut", + "aiAssistantManagementObservability.settingsPage.knowledgeBaseLabel": "Base de connaissances", + "aiAssistantManagementObservability.settingsPage.searchConnector": "Connecteurs Search", + "aiAssistantManagementObservability.settingsPage.selectConnectorLabel": "Sélectionner un connecteur", + "aiAssistantManagementObservability.settingsPage.settingsLabel": "Paramètres", + "aiAssistantManagementObservability.settingsPage.showAIAssistantButtonLabel": "Afficher le bouton de l'Assistant d'IA et les informations contextuelles dans les applications d'Observability", + "aiAssistantManagementObservability.settingsPage.showAIAssistantDescriptionLabel": "Affichez/masquez le bouton de l'Assistant d'IA et les informations contextuelles dans les applications d'Observability en cochant ou en décochant la fonctionnalité Assistant d'IA dans Espaces > > Fonctionnalités.", + "aiAssistantManagementObservability.span.expandRowLabel": "Développer la ligne", + "alertsUIShared.maintenanceWindowCallout.maintenanceWindowActive": "{activeWindowCount, plural, one {Une fenêtre de maintenance est} other {Des fenêtres de maintenance sont}} en cours d'exécution pour des règles de {categories}", + "alertsUIShared.maintenanceWindowCallout.maintenanceWindowMultipleCategoryNames": "{commaSeparatedList} et {last}", + "alertsUIShared.maintenanceWindowCallout.maintenanceWindowTwoCategoryNames": "{first} et {second}", + "alertsUIShared.alertFieldsTable.field": "Champ", + "alertsUIShared.alertFieldsTable.filter.placeholder": "Filtre par Champ, Valeur ou Description...", + "alertsUIShared.alertFieldsTable.value": "Valeur", + "alertsUIShared.component.alertsSearchBar.placeholder": "Alertes de recherche (par exemple, kibana.alert.evaluation.threshold > 75)", + "alertsUIShared.components.addMessageVariables.addRuleVariableTitle": "Ajouter une variable", + "alertsUIShared.components.addMessageVariables.addVariablePopoverButton": "Ajouter une variable", + "alertsUIShared.components.addMessageVariables.deprecatedVariablesAreHidden": "Les variables déclassées sont masquées", + "alertsUIShared.components.addMessageVariables.deprecatedVariablesAreShown": "Les variables déclassées sont affichées", + "alertsUIShared.components.addMessageVariables.hideDeprecatedVariables": "Masquer", + "alertsUIShared.components.addMessageVariables.loadingMessage": "Chargement des variables", + "alertsUIShared.components.addMessageVariables.noVariablesAvailable": "Aucune variable disponible", + "alertsUIShared.components.addMessageVariables.noVariablesFound": "Aucune variable trouvée", + "alertsUIShared.components.addMessageVariables.showAllDeprecatedVariables": "Afficher tout", + "alertsUIShared.components.alertLifecycleStatusBadge.activeLabel": "Actif", + "alertsUIShared.components.alertLifecycleStatusBadge.flappingLabel": "Bagotement", + "alertsUIShared.components.alertLifecycleStatusBadge.recoveredLabel": "Récupéré", + "alertsUIShared.components.alertLifecycleStatusBadge.untrackedLabel": "Non suivi", + "alertsUIShared.hooks.useAlertDataView.useAlertDataMessage": "Impossible de charger la vue des données de l'alerte", + "alertsUIShared.hooks.useLoadRuleTypesQuery.unableToLoadRuleTypesMessage": "Impossible de charger les types de règles", + "alertsUIShared.hooks.useRuleAADFields.errorMessage": "Impossible de charger les champs d'alerte par type de règle", + "alertsUIShared.maintenanceWindowCallout.fetchError": "La vérification visant à déterminer si les fenêtres de maintenance sont actives a échoué", + "alertsUIShared.maintenanceWindowCallout.fetchErrorDescription": "Les notifications de règle sont arrêtées lorsque les fenêtres de maintenance sont en cours d'exécution.", + "alertsUIShared.maintenanceWindowCallout.maintenanceWindowActiveDescription": "Les notifications de règle sont arrêtées lorsque les fenêtres de maintenance sont en cours d'exécution.", + "alertsUIShared.maintenanceWindowCallout.maintenanceWindowActiveNoCategories": "Une ou plusieurs fenêtres de maintenance sont en cours d'exécution", + "alertsUIShared.maintenanceWindowCallout.managementCategoryLabel": "Suite", + "autocomplete.conflictIndicesWarning.index.description": "{name} ({count} index)", "autocomplete.customOptionText": "Ajouter {searchValuePlaceholder} comme champ personnalisé", "autocomplete.conflictIndicesWarning.description": "Ce champ est défini avec différents types dans les index suivants ou il n'est pas mappé, ce qui peut entraîner des résultats inattendus lors des requêtes.", "autocomplete.conflictIndicesWarning.title": "Conflit de mapping", @@ -89,6 +185,8 @@ "autocomplete.loadingDescription": "Chargement...", "autocomplete.seeDocumentation": "Consultez la documentation", "autocomplete.selectField": "Veuillez d'abord sélectionner un champ...", + "bfetchError.networkErrorWithStatus": "Vérifiez votre connexion réseau et réessayez. Code {code}", + "bfetchError.networkError": "Vérifiez votre connexion réseau et réessayez.", "cellActions.youAreInADialogContainingOptionsScreenReaderOnly": "Vous êtes dans une boîte de dialogue contenant des options pour le champ {fieldName}. Appuyez sur Tab pour naviguer entre les options. Appuyez sur Échap pour quitter.", "cellActions.actions.copyToClipboard.displayName": "Copier dans le Presse-papiers", "cellActions.actions.copyToClipboard.successMessage": "Copié dans le presse-papiers", @@ -100,8 +198,8 @@ "cellActions.showMoreActionsLabel": "Plus d'actions", "charts.advancedSettings.visualization.colorMappingText": "Mappe des valeurs à des couleurs spécifiques dans les graphiques avec la palette Compatibilité.", "charts.colorPicker.setColor.screenReaderDescription": "Définir la couleur pour la valeur {legendDataLabel}", - "charts.functions.palette.args.colorHelpText": "Les couleurs de la palette. Accepte un nom de couleur {html}, {hex}, {hsl}, {hsla}, {rgb} ou {rgba}.", - "charts.warning.warningLabel": "{numberWarnings, number} {numberWarnings, plural, one {avertissement} many {avertissements} other {avertissements}}", + "charts.functions.palette.args.colorHelpText": "Les couleurs de la palette. Accepte un nom de couleur {html}, {hex}, {hsl}, {hsla}, {rgb} ou {rgba}.", + "charts.warning.warningLabel": "{numberWarnings, number} {numberWarnings, plural, one {avertissement} other {avertissements}}", "charts.advancedSettings.visualization.colorMappingTextDeprecation": "Ce paramètre est déclassé et ne sera plus compatible avec les futures versions.", "charts.advancedSettings.visualization.colorMappingTitle": "Mapping des couleurs", "charts.advancedSettings.visualization.useLegacyTimeAxis.deprecation": "Ce paramètre est déclassé et ne sera plus compatible avec les futures versions.", @@ -124,7 +222,7 @@ "charts.legend.toggleLegendButtonAriaLabel": "Afficher/Masquer la légende", "charts.legend.toggleLegendButtonTitle": "Afficher/Masquer la légende", "charts.noDataLabel": "Résultat introuvable", - "charts.palettes.complementaryLabel": "Gratuite", + "charts.palettes.complementaryLabel": "Complémentaire", "charts.palettes.coolLabel": "Froide", "charts.palettes.customLabel": "Personnalisée", "charts.palettes.defaultPaletteLabel": "Par défaut", @@ -136,32 +234,60 @@ "charts.palettes.temperatureLabel": "Température", "charts.palettes.warmLabel": "Chaude", "charts.partialData.bucketTooltipText": "La plage temporelle sélectionnée n'inclut pas ce compartiment en entier. Il se peut qu'elle contienne des données partielles.", - "coloring.dynamicColoring.customPalette.rangeAriaLabel": "Plage {index}", + "cloud.deploymentDetails.cloudIDLabelToolip": "Lancez-vous avec Elastic Agent ou Logstash. Le Cloud ID simplifie l'envoi de données à Elastic. {link}", + "cloud.deploymentDetails.cloudIDLabel": "Identifiant du cloud", + "cloud.deploymentDetails.cloudIDLabelToolip.learnMoreLink": "En savoir plus", + "cloud.deploymentDetails.createManageApiKeysButtonLabel": "Créer et gérer des clés d'API", + "cloud.deploymentDetails.elasticEndpointLabel": "Point de terminaison Elasticsearch", + "cloud.deploymentDetails.helpMenuLinks.connectionDetails": "Informations de connexion", + "cloud.deploymentDetails.learnMoreButtonLabel": "En savoir plus", + "cloud.deploymentDetails.modal.closeButtonLabel": "Fermer", + "cloud.deploymentDetails.modal.learnMoreButtonLabel": "En savoir plus", + "coloring.colorMapping.colorPicker.lowContrastColor": "La couleur est peu contrastée dans {themes} {errorModes, plural, one {mode} other {# modes}}", + "coloring.dynamicColoring.customPalette.rangeAriaLabel": "Gamme {index}", "coloring.colorMapping.assignments.autoAssignedTermAriaLabel": "Cette couleur sera automatiquement affectée au premier terme qui ne correspond pas à toutes les autres affectations", "coloring.colorMapping.assignments.autoAssignedTermPlaceholder": "Affecté automatiquement", "coloring.colorMapping.assignments.deleteAssignmentButtonLabel": "Supprimer cette affectation", + "coloring.colorMapping.assignments.duplicateCategoryWarning": "Une autre couleur a déjà été affectée à cette catégorie. Seule la première affectation correspondante sera utilisée.", "coloring.colorMapping.colorChangesModal.categoricalModeDescription": "Basculer en mode de catégorie conduira à l'abandon de toutes vos modifications de couleurs personnalisées", "coloring.colorMapping.colorChangesModal.discardButton": "Abandonner les modifications", "coloring.colorMapping.colorChangesModal.discardButtonLabel": "Abandonner les modifications", "coloring.colorMapping.colorChangesModal.goBackButtonLabel": "Retour", "coloring.colorMapping.colorChangesModal.modalTitle": "Modifications de couleurs détectées", "coloring.colorMapping.colorChangesModal.preserveButton": "Conserver les modifications", - "coloring.colorMapping.colorChangesModal.sequentialModeDescription": "Passer en mode séquentiel conduira à l'abandon de toutes vos modifications de couleurs personnalisées", + "coloring.colorMapping.colorChangesModal.sequentialModeDescription": "Le fait de passer à un mode dégradé conduira à l'abandon de toutes vos modifications de couleurs personnalisées", "coloring.colorMapping.colorChangesModal.switchPaletteDescription": "Changer de palette conduira à l'abandon de toutes vos modifications de couleurs personnalisées", "coloring.colorMapping.colorChangesModal.title": "Modifications de couleurs détectées", "coloring.colorMapping.colorPicker.customTabLabel": "Personnalisé", + "coloring.colorMapping.colorPicker.hexColorinputAriaLabel": "Entrée de couleur hex", + "coloring.colorMapping.colorPicker.invalidColorHex": "Veuillez utiliser un code de couleur hex valide", "coloring.colorMapping.colorPicker.newColorAriaLabel": "Sélectionner une nouvelle couleur", "coloring.colorMapping.colorPicker.paletteColorsLabel": "Couleurs de la palette", "coloring.colorMapping.colorPicker.paletteTabLabel": "Couleurs", "coloring.colorMapping.colorPicker.pickAColorAriaLabel": "Sélectionner une couleur", - "coloring.colorMapping.colorPicker.removeGradientColorButtonLabel": "Supprimer l'étape couleur", + "coloring.colorMapping.colorPicker.removeGradientColorButtonLabel": "Supprimer l'arrêt de couleur", "coloring.colorMapping.colorPicker.themeAwareColorsLabel": "Couleurs neutres", - "coloring.colorMapping.colorPicker.themeAwareColorsTooltip": "Les couleurs neutres fournies se conforment au thème et s'adapteront en fonction du basculement entre les thèmes clair et sombre", + "coloring.colorMapping.colorPicker.themeAwareColorsTooltip": "Les couleurs neutres fournies dépendent du thème et s'adapteront en cas de basculement entre les thèmes clair et sombre.", + "coloring.colorMapping.container.AddAssignmentButtonLabel": "Ajouter une affectation", + "coloring.colorMapping.container.addGradientStopButtonLabel": "Ajouter un arrêt de dégradé", + "coloring.colorMapping.container.clearAllAssignmentsButtonLabel": "Effacer toutes les affectations", + "coloring.colorMapping.container.gradientHeader": "Gradient", "coloring.colorMapping.container.invertGradientButtonLabel": "Inverser le gradient", - "coloring.colorMapping.container.mappingAssignmentHeader": "Mapping des affectations", + "coloring.colorMapping.container.mapCurrentValuesButtonLabel": "Ajouter tous les termes non affectés", + "coloring.colorMapping.container.mappingAssignmentHeader": "Affectations de couleurs", + "coloring.colorMapping.container.mapValueButtonLabel": "Ajouter tous les termes non affectés", + "coloring.colorMapping.container.mapValuesPromptDescription.mapValuesPromptDetail": "Ajoutez de nouvelles affectations pour commencer à associer des termes de vos données à des couleurs spécifiques.", + "coloring.colorMapping.container.OpenAdditionalActionsButtonLabel": "Ouvrir les actions d'affectation supplémentaires", + "coloring.colorMapping.container.unassignedTermsMode.ReuseColorsLabel": "Palette de couleurs", + "coloring.colorMapping.container.unassignedTermsMode.ReuseGradientLabel": "Gradient", + "coloring.colorMapping.container.unassignedTermsMode.SingleColorLabel": "Une seule couleur", + "coloring.colorMapping.container.unassignedTermsModeHeader": "Couleur des termes non affectés", "coloring.colorMapping.paletteSelector.categoricalLabel": "De catégorie", + "coloring.colorMapping.paletteSelector.gradientLabel": "Gradient", "coloring.colorMapping.paletteSelector.paletteLabel": "Palette de couleurs", - "coloring.colorMapping.paletteSelector.scaleLabel": "Scaling", + "coloring.colorMapping.paletteSelector.scaleLabel": "Mode", + "coloring.colorMapping.terms.emptyLabel": "(vide)", + "coloring.colorMapping.terms.otherBucketLabel": "Autre", "coloring.dynamicColoring.customPalette.addColor": "Ajouter une couleur", "coloring.dynamicColoring.customPalette.addColorAriaLabel": "Ajouter une couleur", "coloring.dynamicColoring.customPalette.colorStopsHelpPercentage": "Les types de valeurs en pourcentage sont relatifs à la plage complète des valeurs de données disponibles.", @@ -192,14 +318,15 @@ "coloring.dynamicColoring.rangeType.label": "Type de valeur", "coloring.dynamicColoring.rangeType.number": "Numéro", "coloring.dynamicColoring.rangeType.percent": "Pourcent", - "console.helpPage.learnAboutConsoleAndQueryDslText": "En savoir plus sur {console} et {queryDsl}", + "console.embeddableConsole.customScreenReaderAnnouncement": "Il y a un nouveau repère de région nommé {landmarkHeading} avec des commandes de niveau de page à la fin du document.", + "console.helpPage.learnAboutConsoleAndQueryDslText": "Découvrez plus d'informations sur {console} et {queryDsl}", "console.historyPage.itemOfRequestListAriaLabel": "Requête : {historyItem}", - "console.settingsPage.refreshInterval.everyNMinutesTimeInterval": "Toutes les {value} {value, plural, one {minute} many {minutes} other {minutes}}", - "console.variablesPage.descriptionText": "Définissez les variables et utilisez-les dans vos requêtes sous la forme {variable}.", + "console.settingsPage.refreshInterval.everyNMinutesTimeInterval": "Toutes les {value} {value, plural, one {minute} other {minutes}}", + "console.variablesPage.descriptionText": "Définir les variables et les utiliser dans vos requêtes sous la forme {variable}.", "console.variablesPage.descriptionText.variableNameText": "{variableName}", - "console.welcomePage.addCommentsDescription": "Pour utiliser un commentaire d'une seule ligne, utilisez {hash} ou {doubleSlash}. Pour un commentaire de plusieurs lignes, marquez le début avec {slashAsterisk} et la fin avec {asteriskSlash}.", - "console.welcomePage.kibanaAPIsDescription": "Pour envoyer une requête à l'API Kibana, faites précéder le chemin de {kibanaApiPrefix}.", - "console.welcomePage.useVariables.step1": "Cliquez sur {variableText}, puis saisissez le nom de la variable et la valeur.", + "console.welcomePage.addCommentsDescription": "Pour ajouter un commentaire d'une seule ligne, utilisez {hash} ou {doubleSlash}. Pour un commentaire de plusieurs lignes, marquez le début avec {slashAsterisk} et la fin avec {asteriskSlash}.", + "console.welcomePage.kibanaAPIsDescription": "Pour envoyer une requête à l'API Kibana, faites précéder le chemin de {kibanaApiPrefix}.", + "console.welcomePage.useVariables.step1": "Cliquez sur {variableText}, puis saisissez le nom et la valeur de la variable.", "console.welcomePage.useVariablesDescription": "Définissez les variables dans la Console, puis utilisez-les dans vos requêtes sous la forme {variableName}.", "console.autocomplete.addMethodMetaText": "méthode", "console.autocomplete.fieldsFetchingAnnotation": "La récupération des champs est en cours", @@ -222,6 +349,8 @@ "console.deprecations.proxyFilterTitle": "Le paramètre \"console.proxyFilter\" est déclassé", "console.devToolsDescription": "Plutôt que l’interface cURL, utilisez une interface JSON pour exploiter vos données dans la console.", "console.devToolsTitle": "Interagir avec l'API Elasticsearch", + "console.embeddableConsole.landmarkHeading": "Console développeur", + "console.embeddableConsole.title": "Console", "console.exampleOutputTextarea": "Outils de développement de la console - Exemple d’éditeur", "console.helpPage.keyboardCommands.autoIndentDescription": "Appliquer un retrait automatique à la requête en cours", "console.helpPage.keyboardCommands.closeAutoCompleteMenuDescription": "Fermer le menu de saisie semi-automatique", @@ -317,17 +446,15 @@ "contentManagement.contentEditor.saveButtonLabel": "Mettre à jour {entityName}", "contentManagement.inspector.metadataForm.unableToSaveDangerMessage": "Impossible d'enregistrer {entityName}", "contentManagement.tableList.listing.createNewItemButtonLabel": "Créer {entityName}", - "contentManagement.tableList.listing.deleteButtonMessage": "Supprimer {itemCount} {entityName}", - "contentManagement.tableList.listing.deleteConfirmModalDescription": "Vous ne pouvez pas récupérer des {entityNamePlural} supprimés.", - "contentManagement.tableList.listing.deleteSelectedConfirmModal.title": "Supprimer {itemCount} {entityName} ?", - "contentManagement.tableList.listing.fetchErrorDescription": "Impossible de récupérer la liste {entityName} : {message}.", - "contentManagement.tableList.listing.listingLimitExceededDescription": "Vous avez {totalItems} {entityNamePlural}, mais votre paramètre {listingLimitText} empêche le tableau ci-dessous d'afficher plus de {listingLimitValue}.", + "contentManagement.tableList.listing.deleteButtonMessage": "Supprimer {itemCount} {entityName}", + "contentManagement.tableList.listing.deleteConfirmModalDescription": "Vous ne pourrez pas récupérer les {entityNamePlural} supprimés.", + "contentManagement.tableList.listing.deleteSelectedConfirmModal.title": "Supprimer {itemCount} {entityName} ?", + "contentManagement.tableList.listing.fetchErrorDescription": "Le listing {entityName} n'a pas pu être récupéré : {message}.", + "contentManagement.tableList.listing.listingLimitExceededDescription": "Vous avez {totalItems} {entityNamePlural}, mais votre paramètre {listingLimitText} empêche le tableau ci-dessous d'en afficher plus de {listingLimitValue}.", "contentManagement.tableList.listing.listingLimitExceededDescriptionPermissions": "Vous pouvez modifier ce paramètre sous {advancedSettingsLink}.", - "contentManagement.tableList.listing.noAvailableItemsMessage": "Pas de {entityNamePlural} à disposition.", - "contentManagement.tableList.listing.noMatchedItemsMessage": "Pas de {entityNamePlural} correspondant à votre recherche.", "contentManagement.tableList.listing.table.editActionName": "Modifier {itemDescription}", - "contentManagement.tableList.listing.table.viewDetailsActionName": "Afficher les détails de {itemTitle}", - "contentManagement.tableList.listing.unableToDeleteDangerMessage": "Impossible de supprimer {entityName}(s)", + "contentManagement.tableList.listing.table.viewDetailsActionName": "Voir les détails de {itemTitle}", + "contentManagement.tableList.listing.unableToDeleteDangerMessage": "Impossible de supprimer la/le/les {entityName}(s)", "contentManagement.tableList.tagBadge.buttonLabel": "Bouton de balise {tagName}.", "contentManagement.tableList.tagFilterPanel.modifierKeyHelpText": "{modifierKeyPrefix} + cliquer sur Exclure", "contentManagement.contentEditor.cancelButtonLabel": "Annuler", @@ -355,29 +482,34 @@ "contentManagement.tableList.listing.tableSortSelect.updatedAtAscLabel": "Mise à jour la moins récente", "contentManagement.tableList.listing.tableSortSelect.updatedAtDescLabel": "Mise à jour récente", "contentManagement.tableList.mainColumnName": "Nom, description, balises", + "contentManagement.tableList.managedItemNoDelete": "Cet élément est géré par Elastic. Il ne peut pas être supprimé.", + "contentManagement.tableList.managedItemNoEdit": "Cet élément est géré par Elastic. Clonez-le avant d'effectuer des modifications.", "contentManagement.tableList.tagFilterPanel.clearSelectionButtonLabelLabel": "Effacer la sélection", "contentManagement.tableList.tagFilterPanel.doneButtonLabel": "Terminé", "contentManagement.tableList.tagFilterPanel.manageAllTagsLinkLabel": "Gérer les balises", "contentManagement.tableList.updatedDateUnknownLabel": "Dernière mise à jour inconnue", "controls.controlGroup.ariaActions.moveControlButtonAction": "Déplacer le contrôle {controlTitle}", "controls.controlGroup.manageControl.controlTypeSettings.formGroupDescription": "Paramètres personnalisés pour votre contrôle {controlType}.", - "controls.controlGroup.manageControl.controlTypeSettings.formGroupTitle": "Paramètres de {controlType}", - "controls.optionsList.controlAndPopover.exists": "{negate, plural, one {Existe} many {Existent} other {Existent}}", + "controls.controlGroup.manageControl.controlTypeSettings.formGroupTitle": "Paramètres {controlType}", + "controls.optionsList.controlAndPopover.exists": "{negate, plural, one {Existe} other {Existent}}", "controls.optionsList.errors.fieldNotFound": "Impossible de localiser le champ : {fieldName}", "controls.optionsList.popover.ariaLabel": "Fenêtre contextuelle pour le contrôle {fieldName}", - "controls.optionsList.popover.cardinalityLabel": "{totalOptions, number} {totalOptions, plural, one {option} many {options disponibles} other {options}}", - "controls.optionsList.popover.documentCountScreenReaderText": "Apparaît dans {documentCount, number} {documentCount, plural, one {document} many {documents} other {documents}}", - "controls.optionsList.popover.documentCountTooltip": "Cette valeur apparaît dans {documentCount, number} {documentCount, plural, one {document} many {documents} other {documents}}", - "controls.optionsList.popover.invalidSelectionsAriaLabel": "{invalidSelectionCount, plural, one {Sélection ignorée} many {Sélections ignorées} other {Sélections ignorées}} pour {fieldName}", - "controls.optionsList.popover.invalidSelectionsLabel": "{selectedOptions} {selectedOptions, plural, one {sélection ignorée} many {Sélections ignorées} other {sélections ignorées}}", - "controls.optionsList.popover.invalidSelectionsSectionTitle": "{invalidSelectionCount, plural, one {Sélection ignorée} many {Sélections ignorées} other {Sélections ignorées}}", - "controls.optionsList.popover.suggestionsAriaLabel": "{optionCount, plural, one {option disponible} many {options disponibles} other {options disponibles}} pour {fieldName}", + "controls.optionsList.popover.cardinalityLabel": "{totalOptions, number} {totalOptions, plural, one {option} other {options}}", + "controls.optionsList.popover.documentCountScreenReaderText": "Apparaît dans {documentCount, number} {documentCount, plural, one {document} other {documents}}", + "controls.optionsList.popover.documentCountTooltip": "Cette valeur apparaît dans {documentCount, number} {documentCount, plural, one {document} other {documents}}", + "controls.optionsList.popover.invalidSelectionsAriaLabel": "{invalidSelectionCount, plural, one {Sélection ignorée} other {Sélections ignorées}} pour {fieldName}", + "controls.optionsList.popover.invalidSelectionsLabel": "{selectedOptions} {selectedOptions, plural, one {sélection ignorée} other {sélections ignorées}}", + "controls.optionsList.popover.invalidSelectionsSectionTitle": "{invalidSelectionCount, plural, one {Sélection ignorée} other {Sélections ignorées}}", + "controls.optionsList.popover.suggestionsAriaLabel": "{optionCount, plural, one {option disponible} other {options disponibles}} pour {fieldName}", "controls.rangeSlider.errors.fieldNotFound": "Impossible de localiser le champ : {fieldName}", "controls.controlGroup.floatingActions.clearTitle": "Effacer", "controls.controlGroup.floatingActions.editTitle": "Modifier", "controls.controlGroup.floatingActions.removeTitle": "Supprimer", "controls.controlGroup.manageControl.cancelTitle": "Annuler", "controls.controlGroup.manageControl.createFlyoutTitle": "Créer un contrôle", + "controls.controlGroup.manageControl.dataSource.controlTypeErrorMessage.default": "Sélectionnez un type de contrôle compatible.", + "controls.controlGroup.manageControl.dataSource.controlTypeErrorMessage.rangeSlider": "Les curseurs ne sont compatibles qu'avec les champs de numéros.", + "controls.controlGroup.manageControl.dataSource.controlTypErrorMessage.noField": "Sélectionnez d'abord un champ.", "controls.controlGroup.manageControl.dataSource.controlTypesTitle": "Type de contrôle", "controls.controlGroup.manageControl.dataSource.dataViewTitle": "Vue de données", "controls.controlGroup.manageControl.dataSource.fieldTitle": "Champ", @@ -407,6 +539,9 @@ "controls.controlGroup.management.discard.confirm": "Abandonner les modifications", "controls.controlGroup.management.discard.sub": "Les modifications apportées à ce contrôle seront ignorées. Voulez-vous vraiment continuer ?", "controls.controlGroup.management.discard.title": "Abandonner les modifications ?", + "controls.controlGroup.management.filtering.useGlobalFilters": "Appliquer les filtres globaux aux contrôles", + "controls.controlGroup.management.filtering.useGlobalTimeRange": "Appliquer la plage temporelle globale aux contrôles", + "controls.controlGroup.management.filteringSettings": "Filtrage", "controls.controlGroup.management.flyoutTitle": "Paramètres du contrôle", "controls.controlGroup.management.hierarchy.subtitle": "Les sélections dans un contrôle diminuent les options disponibles dans le suivant. Les contrôles se suivent de gauche à droite.", "controls.controlGroup.management.hierarchy.title": "Contrôles à la suite", @@ -419,6 +554,7 @@ "controls.controlGroup.management.layout.large": "Large", "controls.controlGroup.management.layout.medium": "Moyenne", "controls.controlGroup.management.layout.small": "Petite", + "controls.controlGroup.management.selectionSettings": "Sélections", "controls.controlGroup.management.validate.subtitle": "Ignorez automatiquement toutes les sélections de contrôle qui ne donneraient aucune donnée.", "controls.controlGroup.management.validate.title": "Valider les sélections utilisateur", "controls.controlGroup.timeSlider.title": "Curseur temporel", @@ -432,6 +568,8 @@ "controls.optionsList.description": "Ajoutez un menu pour la sélection de valeurs de champ.", "controls.optionsList.displayName": "Liste des options", "controls.optionsList.editor.additionalSettingsTitle": "Paramètres supplémentaires", + "controls.optionsList.editor.exactSearchLabel": "Exact", + "controls.optionsList.editor.exactSearchTooltip": "Correspond aux valeurs qui sont égales à la chaîne de recherche donnée. Renvoie les résultats rapidement.", "controls.optionsList.editor.multiSelectLabel": "Permettre des sélections multiples", "controls.optionsList.editor.prefixSearchLabel": "Préfixe", "controls.optionsList.editor.prefixSearchTooltip": "Correspond aux valeurs qui commencent avec la chaîne de recherche donnée.", @@ -446,9 +584,13 @@ "controls.optionsList.popover.allowExpensiveQueriesWarning": "Le paramètre de cluster permettant d'autoriser les requêtes lourdes est désactivé, impliquant la désactivation d'autres fonctionnalités.", "controls.optionsList.popover.empty": "Aucune option trouvée", "controls.optionsList.popover.endOfOptions": "Les 1 000 premières options disponibles sont affichées. Affichez davantage d'options en recherchant le nom.", + "controls.optionsList.popover.exactSearchPlaceholder": "Égal à…", "controls.optionsList.popover.excludeLabel": "Exclure", "controls.optionsList.popover.excludeOptionsLegend": "Inclure ou exclure les sélections", "controls.optionsList.popover.includeLabel": "Inclure", + "controls.optionsList.popover.invalidSearch.invalidCharacters": "Votre recherche contient des caractères non valides.", + "controls.optionsList.popover.invalidSearch.ip": "Votre recherche n'est pas une adresse IP valide.", + "controls.optionsList.popover.invalidSearch.number": "Votre recherche n'est pas un numéro valide.", "controls.optionsList.popover.invalidSelectionScreenReaderText": "Sélection non valide.", "controls.optionsList.popover.loadingMore": "Chargement d'options supplémentaires...", "controls.optionsList.popover.prefixSearchPlaceholder": "Commence par...", @@ -457,6 +599,7 @@ "controls.optionsList.popover.sortBy.alphabetical": "Par ordre alphabétique", "controls.optionsList.popover.sortBy.date": "Par date", "controls.optionsList.popover.sortBy.docCount": "Par compte du document", + "controls.optionsList.popover.sortBy.numeric": "Numériquement", "controls.optionsList.popover.sortDescription": "Définir l'ordre de tri", "controls.optionsList.popover.sortDirections": "Sens de tri", "controls.optionsList.popover.sortDisabledTooltip": "Le tri est ignoré lorsque \"Afficher uniquement les options sélectionnées\" est vrai", @@ -466,6 +609,7 @@ "controls.optionsList.popover.wildcardSearchPlaceholder": "Contient...", "controls.rangeSlider.description": "Ajoutez un contrôle pour la sélection d'une plage de valeurs de champ.", "controls.rangeSlider.displayName": "Curseur de plage", + "controls.rangeSlider.editor.stepSizeTitle": "Taille de l'étape", "controls.rangeSlider.popover.noAvailableDataHelpText": "Il n'y a aucune donnée à afficher. Ajustez la plage temporelle et les filtres.", "controls.timeSlider.description": "Ajouter un curseur pour la sélection d'une plage temporelle", "controls.timeSlider.displayName": "Curseur temporel", @@ -475,53 +619,54 @@ "controls.timeSlider.previousLabel": "Fenêtre temporelle précédente", "controls.timeSlider.settings.pinStart": "Épingler le début", "controls.timeSlider.settings.unpinStart": "Désépingler le début", - "core.chrome.browserDeprecationWarning": "La prise en charge d'Internet Explorer sera abandonnée dans les futures versions de ce logiciel. Veuillez consulter {link}.", + "core.chrome.browserDeprecationWarning": "La prise en charge d'Internet Explorer sera abandonnée dans les futures versions de ce logiciel. Veuillez consulter le site {link}.", "core.deprecations.deprecations.fetchFailedMessage": "Impossible d'extraire les informations de déclassement pour le plug-in {domainId}.", "core.deprecations.deprecations.fetchFailedTitle": "Impossible d'extraire les déclassements pour {domainId}", - "core.deprecations.elasticsearchSSL.manualSteps1": "Ajoutez le paramètre \"{missingSetting}\" au fichier kibana.yml.", - "core.deprecations.elasticsearchSSL.manualSteps2": "Si vous ne souhaitez pas utiliser l'authentification TLS mutuelle, vous pouvez aussi supprimer \"{existingSetting}\" du fichier kibana.yml.", - "core.deprecations.elasticsearchSSL.message": "Utilisez à la fois \"{existingSetting}\" et \"{missingSetting}\"afin d'activer Kibana pour utiliser l'authentification TLS mutuelle avec Elasticsearch.", + "core.deprecations.elasticsearchSSL.manualSteps1": "Ajoutez le paramètre \"{missingSetting}\" à kibana.yml.", + "core.deprecations.elasticsearchSSL.manualSteps2": "Si vous ne souhaitez pas utiliser l'authentification TLS mutuelle, vous pouvez aussi supprimer \"{existingSetting}\" dans kibana.yml.", + "core.deprecations.elasticsearchSSL.message": "Utilisez à la fois \"{existingSetting}\" et \"{missingSetting}\" afin d'activer Kibana pour utiliser l'authentification TLS mutuelle avec Elasticsearch.", "core.deprecations.elasticsearchSSL.title": "L'utilisation de \"{existingSetting}\" sans \"{missingSetting}\" n'a pas d'effet", "core.deprecations.elasticsearchUsername.message": "Kibana est configuré pour l'authentification sur Elasticsearch avec l'utilisateur \"{username}\". Utilisez plutôt un jeton de compte de service.", "core.deprecations.elasticsearchUsername.title": "L'utilisation de \"elasticsearch.username: {username}\" est déclassée", - "core.euiAbsoluteTab.dateFormatError": "Format attendu : {dateFormat}", + "core.euiAbsoluteTab.dateFormatError": "Formats autorisés : {dateFormat}, ISO 8601, RFC 2822 ou horodatage Unix.", "core.euiAutoRefresh.buttonLabelOn": "L'actualisation automatique est activée et définie sur {prettyInterval}", - "core.euiBasicTable.tableAutoCaptionWithoutPagination": "Ce tableau contient {itemCount} lignes.", - "core.euiBasicTable.tableAutoCaptionWithPagination": "Ce tableau contient {itemCount} lignes sur {totalItemCount} ; page {page} sur {pageCount}.", - "core.euiBasicTable.tableCaptionWithPagination": "{tableCaption} ; page {page} sur {pageCount}.", + "core.euiBasicTable.tableAutoCaptionWithoutPagination": "Ce tableau contient {itemCount} lignes.", + "core.euiBasicTable.tableAutoCaptionWithPagination": "Ce tableau contient {itemCount} lignes sur {totalItemCount} lignes au total ; page {page} sur {pageCount}.", + "core.euiBasicTable.tableCaptionWithPagination": "{tableCaption} ; page {page} sur {pageCount}.", "core.euiBasicTable.tablePagination": "Pagination pour le tableau : {tableCaption}", - "core.euiBasicTable.tableSimpleAutoCaptionWithPagination": "Ce tableau contient {itemCount} lignes ; page {page} sur {pageCount}.", - "core.euiBottomBar.customScreenReaderAnnouncement": "Il y a un nouveau repère de région appelé {landmarkHeading} avec des commandes de niveau de page à la fin du document.", + "core.euiBasicTable.tableSimpleAutoCaptionWithPagination": "Ce tableau contient {itemCount} lignes ; page {page} sur {pageCount}.", + "core.euiBottomBar.customScreenReaderAnnouncement": "Il y a un nouveau repère de région nommé {landmarkHeading} avec des commandes de niveau de page à la fin du document.", "core.euiCodeBlockAnnotations.ariaLabel": "Cliquez pour afficher une annotation de code pour la ligne {lineNumber}", - "core.euiColorPickerSwatch.ariaLabel": "Sélectionner {color} comme couleur", + "core.euiColorPickerSwatch.ariaLabel": "Sélection de la couleur {color}", "core.euiColumnActions.sort": "Trier {schemaLabel}", "core.euiColumnSortingDraggable.activeSortLabel": "{display} trie cette grille de données", "core.euiColumnSortingDraggable.removeSortLabel": "Retirer {display} du tri de la grille de données", "core.euiColumnSortingDraggable.toggleLegend": "Sélectionner la méthode de tri pour {display}", - "core.euiComboBoxOptionsList.alreadyAdded": "{label} a déjà été ajouté", - "core.euiComboBoxOptionsList.createCustomOption": "Ajouter {searchValue} comme option personnalisée", - "core.euiComboBoxOptionsList.delimiterMessage": "Ajouter les éléments en les séparant par {delimiter}", - "core.euiComboBoxOptionsList.noMatchingOptions": "{searchValue} ne correspond à aucune option", - "core.euiComboBoxPill.removeSelection": "Retirer {children} de la sélection de ce groupe", - "core.euiDataGrid.ariaLabel": "{label} ; page {page} sur {pageCount}.", - "core.euiDataGrid.ariaLabelledBy": "Page {page} sur {pageCount}.", + "core.euiComboBoxOptionsList.alreadyAdded": "{label} a déjà été ajouté.", + "core.euiComboBoxOptionsList.createCustomOption": "Ajouter {searchValue} en tant qu'option personnalisée", + "core.euiComboBoxOptionsList.delimiterMessage": "Ajouter chaque élément en séparant par {delimiter}", + "core.euiComboBoxOptionsList.noMatchingOptions": "{searchValue} ne correspond à aucune option.", + "core.euiComboBoxPill.removeSelection": "Supprimer {children} de la sélection de ce groupe", + "core.euiDataGrid.ariaLabel": "{label} ; page {page} sur {pageCount}.", + "core.euiDataGrid.ariaLabelledBy": "Page {page} sur {pageCount}.", "core.euiDataGridCell.position": "{columnId}, colonne {col}, ligne {row}", "core.euiDataGridHeaderCell.sortedByAscendingFirst": "Trié par {columnId}, ordre croissant", - "core.euiDataGridHeaderCell.sortedByAscendingMultiple": ", puis trié par {columnId}, ordre croissant", + "core.euiDataGridHeaderCell.sortedByAscendingMultiple": ", puis par {columnId}, ordre croissant", "core.euiDataGridHeaderCell.sortedByDescendingFirst": "Trié par {columnId}, ordre décroissant", - "core.euiDataGridHeaderCell.sortedByDescendingMultiple": ", puis trié par {columnId}, ordre décroissant", + "core.euiDataGridHeaderCell.sortedByDescendingMultiple": ", puis par {columnId}, ordre décroissant", "core.euiDataGridPagination.detailedPaginationLabel": "Pagination pour la grille précédente : {label}", + "core.euiDataGridToolbarControl.badgeAriaLabel": "Actif : {count}", "core.euiDatePopoverButton.invalidTitle": "Date non valide : {title}", "core.euiDatePopoverButton.outdatedTitle": "Mise à jour requise : {title}", - "core.euiFilePicker.filesSelected": "{fileCount} fichiers sélectionnés", - "core.euiFilterButton.filterBadgeActiveAriaLabel": "{count} filtres actifs", - "core.euiFilterButton.filterBadgeAvailableAriaLabel": "{count} filtres disponibles", + "core.euiFilePicker.filesSelected": "{fileCount} fichiers sélectionnés", + "core.euiFilterButton.filterBadgeActiveAriaLabel": "{count} filtres actifs", + "core.euiFilterButton.filterBadgeAvailableAriaLabel": "{count} filtres disponibles", "core.euiMarkdownEditorFooter.supportedFileTypes": "Fichiers pris en charge : {supportedFileTypes}", - "core.euiPagination.firstRangeAriaLabel": "Ignorer les pages 2 à {lastPage}", - "core.euiPagination.lastRangeAriaLabel": "Ignorer les pages {firstPage} à {lastPage}", - "core.euiPagination.pageOfTotalCompressed": "{page} de {total}", - "core.euiPaginationButton.longPageString": "Page {page} sur {totalPages}", - "core.euiPaginationButton.shortPageString": "Page {page}", + "core.euiPagination.firstRangeAriaLabel": "Ignorer les pages 2 à {lastPage}", + "core.euiPagination.lastRangeAriaLabel": "Ignorer les pages {firstPage} à {lastPage}", + "core.euiPagination.pageOfTotalCompressed": "{page} sur {total}", + "core.euiPaginationButton.longPageString": "Page {page} sur {totalPages}", + "core.euiPaginationButton.shortPageString": "Page {page}", "core.euiPrettyDuration.durationRoundedToDay": "{prettyDuration} arrondie au jour", "core.euiPrettyDuration.durationRoundedToHour": "{prettyDuration} arrondie à l'heure", "core.euiPrettyDuration.durationRoundedToMinute": "{prettyDuration} arrondie à la minute", @@ -530,61 +675,75 @@ "core.euiPrettyDuration.durationRoundedToWeek": "{prettyDuration} arrondie à la semaine", "core.euiPrettyDuration.durationRoundedToYear": "{prettyDuration} arrondie à l'année", "core.euiPrettyDuration.fallbackDuration": "{displayFrom} à {displayTo}", - "core.euiPrettyInterval.days": "{interval, plural, one {# jour} many {# jours} other {# jours}}", - "core.euiPrettyInterval.daysShorthand": "{interval} j", - "core.euiPrettyInterval.hours": "{interval, plural, one {# heure} many {# heures} other {# heures}}", + "core.euiPrettyDuration.lastDurationDays": "{duration, plural, one {Dernier jour} other {# derniers jours}}", + "core.euiPrettyDuration.lastDurationHours": "{duration, plural, one {Dernière heure} other {# dernières heures}}", + "core.euiPrettyDuration.lastDurationMinutes": "{duration, plural, one {Dernière minute} other {# dernières minutes}}", + "core.euiPrettyDuration.lastDurationMonths": "{duration, plural, one {Dernier mois} other {# derniers mois}}", + "core.euiPrettyDuration.lastDurationSeconds": "{duration, plural, one {Dernière seconde} other {# dernières secondes}}", + "core.euiPrettyDuration.lastDurationWeeks": "{duration, plural, one {Dernière semaine} other {# dernières semaines}}", + "core.euiPrettyDuration.lastDurationYears": "{duration, plural, one {Dernière année} other {# dernières années}}", + "core.euiPrettyDuration.nextDurationHours": "{duration, plural, one {Prochaine heure} other {# prochaines heures}}", + "core.euiPrettyDuration.nextDurationMinutes": "{duration, plural, one {Prochaine minute} other {# prochaines minutes}}", + "core.euiPrettyDuration.nextDurationMonths": "{duration, plural, one {Prochain mois} other {# prochains mois}}", + "core.euiPrettyDuration.nextDurationSeconds": "{duration, plural, one {Prochaine seconde} other {# prochaines secondes}}", + "core.euiPrettyDuration.nextDurationWeeks": "{duration, plural, one {Prochaine semaine} other {# prochaines semaines}}", + "core.euiPrettyDuration.nextDurationYears": "{duration, plural, one {Prochaine année} other {# prochaines années}}", + "core.euiPrettyDuration.nexttDurationDays": "{duration, plural, one {Prochain jour} other {# prochains jours}}", + "core.euiPrettyInterval.days": "{interval, plural, one {# jour} other {# jours}}", + "core.euiPrettyInterval.daysShorthand": "{interval} d", + "core.euiPrettyInterval.hours": "{interval, plural, one {# heure} other {# heures}}", "core.euiPrettyInterval.hoursShorthand": "{interval} h", - "core.euiPrettyInterval.minutes": "{interval, plural, one {# minute} many {# minutes} other {# minutes}}", + "core.euiPrettyInterval.minutes": "{interval, plural, one {# minute} other {# minutes}}", "core.euiPrettyInterval.minutesShorthand": "{interval} m", - "core.euiPrettyInterval.seconds": "{interval, plural, one {# seconde} many {# secondes} other {# secondes}}", + "core.euiPrettyInterval.seconds": "{interval, plural, one {# seconde} other {# secondes}}", "core.euiPrettyInterval.secondsShorthand": "{interval} s", "core.euiProgress.valueText": "{value} %", - "core.euiQuickSelect.fullDescription": "Elle est actuellement définie sur {timeTense} {timeValue} {timeUnit}.", + "core.euiQuickSelect.fullDescription": "Actuellement défini sur {timeTense} {timeValue} {timeUnit}.", "core.euiRefreshInterval.fullDescriptionOff": "L'actualisation est désactivée, intervalle défini sur {optionValue} {optionText}.", "core.euiRefreshInterval.fullDescriptionOn": "L'actualisation est activée, intervalle défini sur {optionValue} {optionText}.", "core.euiRelativeTab.fullDescription": "L'unité peut être modifiée. Elle est actuellement définie sur {unit}.", - "core.euiSelectable.noMatchingOptions": "{searchValue} ne correspond à aucune option", - "core.euiSelectable.searchResults": "{resultsLength, plural, one {# résultat disponible} many {# résultats disponibles} other {# résultats disponibles}}", - "core.euiSkeletonLoading.loadedAriaText": "{contentAriaLabel} a été chargé", - "core.euiSkeletonLoading.loadingAriaText": "{contentAriaLabel} est en cours de chargement", - "core.euiStepStrings.complete": "L'étape {number} : {title} est terminée", - "core.euiStepStrings.current": "Étape actuelle {number} : {title}", - "core.euiStepStrings.disabled": "L'étape {number} : {title} est désactivée", - "core.euiStepStrings.errors": "L'étape {number} : {title} comporte des erreurs", - "core.euiStepStrings.incomplete": "L'étape {number} : {title} est incomplète", - "core.euiStepStrings.loading": "L'étape {number} : {title} est en cours de chargement", - "core.euiStepStrings.simpleComplete": "L'étape {number} est terminée", - "core.euiStepStrings.simpleCurrent": "L'étape actuelle est {number}", - "core.euiStepStrings.simpleDisabled": "L'étape {number} est désactivée", - "core.euiStepStrings.simpleErrors": "L'étape {number} comporte des erreurs", - "core.euiStepStrings.simpleIncomplete": "L'étape {number} est incomplète", - "core.euiStepStrings.simpleLoading": "L'étape {number} est en cours de chargement", - "core.euiStepStrings.simpleStep": "Étape {number}", - "core.euiStepStrings.simpleWarning": "L'étape {number} comporte des avertissements", - "core.euiStepStrings.step": "Étape {number} : {title}", - "core.euiStepStrings.warning": "L'étape {number} : {title} comporte des avertissements", - "core.euiTableHeaderCell.titleTextWithDesc": "{innerText}; {description}", - "core.euiTablePagination.rowsPerPageOption": "{rowsPerPage} lignes", - "core.euiTourStepIndicator.ariaLabel": "Étape {number} {status}", - "core.euiTreeView.ariaLabel": "{nodeLabel} enfant de {ariaLabel}", - "core.savedObjects.deprecations.unknownTypes.message": "{objectCount, plural, one {# objet} many {# objets} other {# objets}} avec des types inconnus {objectCount, plural, one {a été trouvé} many {sont introuvables} other {ont été trouvés}} dans les index système Kibana. La mise à niveau avec des types savedObject inconnus n'est plus compatible. Pour assurer la réussite des mises à niveau à l'avenir, réactivez les plug-ins ou supprimez ces documents dans les indices de Kibana", - "core.statusPage.loadStatus.serverStatusCodeErrorMessage": "Échec de requête du statut du serveur avec le code de statut {responseStatus}", + "core.euiSelectable.noMatchingOptions": "{searchValue} ne correspond à aucune option.", + "core.euiSelectable.searchResults": "{resultsLength, plural, one {# résultat disponible} other {#résultats disponibles}}", + "core.euiSkeletonLoading.loadedAriaText": "{contentAriaLabel} chargé", + "core.euiSkeletonLoading.loadingAriaText": "{contentAriaLabel} en cours de chargement", + "core.euiStepStrings.complete": "L'étape {number} : {title} est terminée.", + "core.euiStepStrings.current": "L’étape {number} : {title} est en cours.", + "core.euiStepStrings.disabled": "L'étape {number} : {title} est désactivée.", + "core.euiStepStrings.errors": "L'étape {number} : {title} contient des erreurs.", + "core.euiStepStrings.incomplete": "L'étape {number} : {title} est incomplète.", + "core.euiStepStrings.loading": "L'étape {number} : {title} est en cours de chargement.", + "core.euiStepStrings.simpleComplete": "L'étape {number} est terminée.", + "core.euiStepStrings.simpleCurrent": "L’étape {number} est en cours.", + "core.euiStepStrings.simpleDisabled": "L'étape {number} est désactivée.", + "core.euiStepStrings.simpleErrors": "L'étape {number} contient des erreurs.", + "core.euiStepStrings.simpleIncomplete": "L'étape {number} est incomplète.", + "core.euiStepStrings.simpleLoading": "L'étape {number} est en cours de chargement.", + "core.euiStepStrings.simpleStep": "Étape {number}", + "core.euiStepStrings.simpleWarning": "L'étape {number} contient des avertissements.", + "core.euiStepStrings.step": "Étape {number} : {title}", + "core.euiStepStrings.warning": "L'étape {number} : {title} contient des avertissements.", + "core.euiTableHeaderCell.titleTextWithDesc": "{innerText} ; {description}", + "core.euiTablePagination.rowsPerPageOption": "{rowsPerPage} lignes", + "core.euiTourStepIndicator.ariaLabel": "Étape {number} {status}", + "core.euiTreeView.ariaLabel": "{nodeLabel} enfant de {ariaLabel}", + "core.savedObjects.deprecations.unknownTypes.message": "{objectCount, plural, one {# objet} other {# objets}} de type inconnu {objectCount, plural, one {a été trouvé} other {ont été trouvés}} dans les indices du système Kibana. La mise à niveau avec des types savedObject inconnus n'est plus compatible. Pour assurer la réussite des mises à niveau à l'avenir, réactivez les plug-ins ou supprimez ces documents dans les indices de Kibana", + "core.statusPage.loadStatus.serverStatusCodeErrorMessage": "Échec de requête du statut du serveur avec le code de statut {responseStatus}.", "core.statusPage.metricsTiles.columns.heapUsedHeader": "Tas utilisé sur {heapTotal}", "core.statusPage.metricsTiles.columns.utilizationHeader": "Utilisation (actif : {active} / inactif : {idle})", - "core.statusPage.serverStatus.statusTitle": "Le statut Kibana est {kibanaStatus}", + "core.statusPage.serverStatus.statusTitle": "Statut Kibana : {kibanaStatus}", "core.statusPage.statusApp.statusActions.buildText": "BUILD : {buildNum}", - "core.statusPage.statusApp.statusActions.commitText": "VALIDATION : {buildSha}", + "core.statusPage.statusApp.statusActions.commitText": "COMMIT : {buildSha}", "core.statusPage.statusApp.statusActions.versionText": "VERSION : {versionNum}", "core.ui_settings.params.dateFormat.scaledText": "Les valeurs qui définissent le format utilisé lorsque les données temporelles sont rendues dans l'ordre, et lorsque les horodatages formatés doivent s'adapter à l'intervalle entre les mesures. Les clés sont {intervalsLink}.", "core.ui_settings.params.dateFormat.timezone.invalidValidationMessage": "Fuseau horaire non valide : {timezone}", - "core.ui_settings.params.dateFormatText": "{formatLink} pour des dates joliment formatées.", - "core.ui_settings.params.dateNanosFormatText": "Format pour les données {dateNanosLink}.", + "core.ui_settings.params.dateFormatText": "Le {formatLink} pour des dates joliment formatées.", + "core.ui_settings.params.dateNanosFormatText": "Le format pour les données {dateNanosLink}.", "core.ui_settings.params.dayOfWeekText.invalidValidationMessage": "Jour de la semaine non valide : {dayOfWeek}", - "core.ui_settings.params.notifications.bannerText": "Une bannière personnalisée à des fins de notification temporaire pour l'ensemble des utilisateurs. {markdownLink}.", - "core.ui.chrome.headerGlobalNav.helpMenuGiveFeedbackOnApp": "Fournir des commentaires sur {appName}", - "core.ui.chrome.headerGlobalNav.helpMenuVersion": "v {version}", - "core.ui.errorUrlOverflow.bigUrlWarningNotificationMessage": "Activez l'option {storeInSessionStorageParam} dans {advancedSettingsLink} ou simplifiez les visuels à l'écran.", - "core.ui.errorUrlOverflow.optionsToFixError.enableOptionText": "Activez l'option {storeInSessionStorageConfig} dans {kibanaSettingsLink}.", + "core.ui_settings.params.notifications.bannerText": "Une bannière personnalisée à des fins de notification temporaire de l’ensemble des utilisateurs. {markdownLink}.", + "core.ui.chrome.headerGlobalNav.helpMenuGiveFeedbackOnApp": "Donner un retour sur {appName}", + "core.ui.chrome.headerGlobalNav.helpMenuVersion": "v {version}", + "core.ui.errorUrlOverflow.bigUrlWarningNotificationMessage": "Activez l'option {storeInSessionStorageParam} dans les {advancedSettingsLink} ou simplifiez les visuels à l'écran.", + "core.ui.errorUrlOverflow.optionsToFixError.enableOptionText": "Activez l'option {storeInSessionStorageConfig} sous {kibanaSettingsLink}.", "core.ui.primaryNavSection.screenReaderLabel": "Liens de navigation principale, {category}", "core.ui.publicBaseUrlWarning.configRecommendedDescription": "Dans un environnement de production, il est recommandé de configurer {configKey}.", "core.ui.recentLinks.linkItem.screenReaderLabel": "{recentlyAccessedItemLinklabel}, type : {pageType}", @@ -599,6 +758,7 @@ "core.deprecations.elasticsearchUsername.manualSteps2": "Ajoutez le paramètre \"elasticsearch.serviceAccountToken\" à kibana.yml.", "core.deprecations.elasticsearchUsername.manualSteps3": "Supprimez \"elasticsearch.username\" et \"elasticsearch.password\" de kibana.yml.", "core.deprecations.noCorrectiveAction": "Ce déclassement ne peut pas être résolu automatiquement.", + "core.euiAbsoluteTab.dateFormatHint": "Appuyez sur la touche Entrée pour analyser l'élément en tant que date.", "core.euiAccordionChildrenLoading.message": "Chargement", "core.euiAutoRefresh.autoRefreshLabel": "Actualisation automatique", "core.euiAutoRefresh.buttonLabelOff": "L'actualisation automatique est désactivée", @@ -618,9 +778,12 @@ "core.euiCodeBlockFullScreen.fullscreenCollapse": "Réduire", "core.euiCodeBlockFullScreen.fullscreenExpand": "Développer", "core.euiCollapsedItemActions.allActions": "Toutes les actions", + "core.euiCollapsedItemActions.allActionsDisabled": "Les actions individuelles sont désactivées lorsque plusieurs lignes sont sélectionnées.", "core.euiCollapsibleNavBeta.ariaLabel": "Menu du site", - "core.euiCollapsibleNavButton.ariaLabelClose": "Activer/Désactiver la fermeture de la navigation", - "core.euiCollapsibleNavButton.ariaLabelOpen": "Activer/Désactiver l'ouverture de la navigation", + "core.euiCollapsibleNavButton.ariaLabelClose": "Fermer la navigation", + "core.euiCollapsibleNavButton.ariaLabelCollapse": "Réduire la navigation", + "core.euiCollapsibleNavButton.ariaLabelExpand": "Développer la navigation", + "core.euiCollapsibleNavButton.ariaLabelOpen": "Ouvrir la navigation", "core.euiColorPicker.alphaLabel": "Valeur (opacité) du canal Alpha", "core.euiColorPicker.closeLabel": "Appuyez sur la flèche du bas pour ouvrir la fenêtre contextuelle des options de couleur.", "core.euiColorPicker.colorErrorMessage": "Valeur de couleur non valide", @@ -651,6 +814,8 @@ "core.euiComboBoxOptionsList.noAvailableOptions": "Aucune option n’est disponible.", "core.euiCommonlyUsedTimeRanges.legend": "Couramment utilisées", "core.euiDataGrid.screenReaderNotice": "Cette cellule contient du contenu interactif.", + "core.euiDataGridCell.expansionEnterPrompt": "Appuyez sur Entrée pour développer cette cellule.", + "core.euiDataGridCell.focusTrapEnterPrompt": "Appuyez sur Entrée pour interagir avec le contenu de cette cellule.", "core.euiDataGridCellActions.expandButtonTitle": "Cliquez ou appuyez sur Entrée pour interagir avec le contenu de la cellule.", "core.euiDataGridHeaderCell.actionsPopoverScreenReaderText": "Pour naviguer dans la liste des actions de la colonne, appuyez sur la touche Tab ou sur les flèches vers le haut et vers le bas.", "core.euiDataGridHeaderCell.headerActions": "Cliquez pour afficher les actions d'en-tête de colonne", @@ -688,6 +853,8 @@ "core.euiDisplaySelector.rowHeightLabel": "Hauteur de la ligne", "core.euiDualRange.sliderScreenReaderInstructions": "Vous êtes dans un curseur de plage personnalisé. Utilisez les flèches vers le haut et vers le bas pour modifier la valeur minimale. Appuyez sur Tabulation pour interagir avec la valeur maximale.", "core.euiErrorBoundary.error": "Erreur", + "core.euiExternalLinkIcon.ariaLabel": "Lien externe", + "core.euiExternalLinkIcon.newTarget.screenReaderOnlyText": "(s’ouvre dans un nouvel onglet ou une nouvelle fenêtre)", "core.euiFieldPassword.maskPassword": "Masquer le mot de passe", "core.euiFieldPassword.showPassword": "Afficher le mot de passe en texte brut. Remarque : votre mot de passe sera visible à l'écran.", "core.euiFilePicker.clearSelectedFiles": "Effacer les fichiers sélectionnés", @@ -945,6 +1112,10 @@ "core.ui.chrome.headerGlobalNav.helpMenuOpenGitHubIssueTitle": "Ouvrir un ticket dans GitHub", "core.ui.chrome.headerGlobalNav.helpMenuTitle": "Aide", "core.ui.chrome.headerGlobalNav.logoAriaLabel": "Logo Elastic", + "core.ui.chrome.sideNavigation.cloudLinks.billingLinkText": "Facturation et abonnement", + "core.ui.chrome.sideNavigation.cloudLinks.deploymentLinkText": "Projet", + "core.ui.chrome.sideNavigation.cloudLinks.performanceLinkText": "Performances", + "core.ui.chrome.sideNavigation.cloudLinks.usersAndRolesLinkText": "Utilisateurs et rôles", "core.ui.errorUrlOverflow.bigUrlWarningNotificationMessage.advancedSettingsLinkText": "paramètres avancés", "core.ui.errorUrlOverflow.bigUrlWarningNotificationTitle": "L'URL est longue et Kibana pourrait cesser de fonctionner.", "core.ui.errorUrlOverflow.errorTitle": "L'URL pour cet objet est trop longue, et nous ne pouvons pas l'afficher.", @@ -961,6 +1132,9 @@ "core.ui.overlays.banner.attentionTitle": "Attention", "core.ui.overlays.banner.closeButtonLabel": "Fermer", "core.ui.primaryNav.addData": "Ajouter des intégrations", + "core.ui.primaryNav.cloud.linkToAllProjects": "Afficher tous les projets", + "core.ui.primaryNav.cloud.linkToProject": "Gérer le projet", + "core.ui.primaryNav.cloud.projectLabel": "Projet", "core.ui.primaryNav.goToHome.ariaLabel": "Accéder à la page d’accueil", "core.ui.primaryNav.pinnedLinksAriaLabel": "Liens épinglés", "core.ui.primaryNav.screenReaderLabel": "Principale", @@ -980,11 +1154,11 @@ "customIntegrations.languageClients.GoElasticsearch.readme.addPackage": "Ajoutez le pack à votre fichier {go_file} :", "customIntegrations.languageClients.GoElasticsearch.readme.connectingText": "Vous pouvez vous connecter à Elastic Cloud à l'aide d'une {api_key} et d'un {cloud_id} :", "customIntegrations.languageClients.JavaElasticsearch.readme.installMavenMsg": "Dans le {pom} de votre projet, ajoutez la définition de référentiel et les dépendances suivantes :", - "customIntegrations.languageClients.JavascriptElasticsearch.readme.configureText": "Créez un fichier {filename} à la racine de votre projet et ajoutez les options suivantes.", + "customIntegrations.languageClients.JavascriptElasticsearch.readme.configureText": "Créez un fichier {filename} à la racine de votre projet, et ajoutez les options suivantes.", "customIntegrations.languageClients.PhpElasticsearch.readme.connectingText": "Vous pouvez vous connecter à Elastic Cloud à l'aide d'une {api_key} et d'un {cloud_id}. Où {api_key} et {cloud_id} peuvent être récupérés à l'aide de l'interface utilisateur web d'Elastic Cloud.", "customIntegrations.languageClients.PythonElasticsearch.readme.connectingText": "Vous pouvez vous connecter à Elastic Cloud à l'aide d'une {api_key} et d'un {cloud_id} :", "customIntegrations.languageClients.RubyElasticsearch.readme.connectingText": "Vous pouvez vous connecter à Elastic Cloud à l'aide d'une {api_key} et d'un {cloud_id}. Où {api_key} et {cloud_id} peuvent être récupérés à l'aide de l'interface utilisateur web d'Elastic Cloud. L'Elastic Cloud ID se trouve sur la page \"Gérer ce déploiement\", et la clé d'API peut être générée à partir de la page \"Gestion\" sous la section \"Sécurité\".", - "customIntegrations.languageClients.sample.readme.configureText": "Créez un fichier {filename} à la racine de votre projet et ajoutez les options suivantes.", + "customIntegrations.languageClients.sample.readme.configureText": "Créez un fichier {filename} à la racine de votre projet, et ajoutez les options suivantes.", "customIntegrations.components.replacementAccordion.comparisonPageLinkLabel": "page de comparaison", "customIntegrations.components.replacementAccordionLabel": "Également disponible dans Beats", "customIntegrations.languageclients.DotNetDescription": "Indexez les données dans Elasticsearch avec le client .NET.", @@ -1048,7 +1222,7 @@ "customIntegrations.placeholders.EscTitle": "Confluent Cloud", "customIntegrations.placeholders.EsfDescription": "Collectez les logs à l'aide de l'application AWS Lambda disponible dans AWS Serverless Application Repository.", "customIntegrations.placeholders.EsfTitle": "AWS Serverless Application Repository", - "customIntegrationsPackage.create.dataset.name.tooltipPrefixMessage": "Ce nom sera précédé du préfixe {prefixValue}, p. ex. {prefixedDatasetName}", + "customIntegrationsPackage.create.dataset.name.tooltipPrefixMessage": "Ce nom aura pour préfixe {prefixValue}, par ex. {prefixedDatasetName}", "customIntegrationsPackage.create.button.continue": "Continuer", "customIntegrationsPackage.create.button.submitting": "Création de l'intégration...", "customIntegrationsPackage.create.configureIntegrationDescription": "Configurer l'intégration", @@ -1072,21 +1246,25 @@ "customIntegrationsPackage.validations.integrationName.characterLimitError": "Le nom d'une intégration ne doit pas excéder 100 caractères.", "customIntegrationsPackage.validations.integrationName.lowerCaseError": "Le nom d'une intégration doit être en minuscules.", "customIntegrationsPackage.validations.integrationName.requiredError": "Une intégration doit obligatoirement porter un nom.", - "dashboard.addPanel.newEmbeddableAddedSuccessMessageTitle": "{savedObjectName} a été ajouté", - "dashboard.addPanel.savedObjectAddedToContainerSuccessMessageTitle": "{savedObjectName} a été ajouté", - "dashboard.dashboardListingEditErrorTitle.duplicateWarning": "L'enregistrement de \"{value}\" crée un doublon de titre.", + "dashboard.addPanel.newEmbeddableAddedSuccessMessageTitle": "{savedObjectName} a été ajouté.", + "dashboard.addPanel.savedObjectAddedToContainerSuccessMessageTitle": "{savedObjectName} a été ajouté.", + "dashboard.dashboardListingEditErrorTitle.duplicateWarning": "L'enregistrement de \"{value}\" crée un doublon de titre", + "dashboard.dashboardWasNotSavedDangerMessage": "Le tableau de bord \"{dashTitle}\" n'a pas été enregistré. Erreur : {errorMessage}.", "dashboard.listing.createNewDashboard.newToKibanaDescription": "Vous êtes nouveau sur Kibana ? {sampleDataInstallLink} pour découvrir l'application.", - "dashboard.listing.unsaved.editAria": "Continuer à modifier {title}", + "dashboard.listing.unsaved.editAria": "Poursuivre les modifications apportées à {title}", "dashboard.listing.unsaved.resetAria": "Réinitialiser les modifications apportées à {title}", "dashboard.listing.unsaved.unsavedChangesTitle": "Vous avez des modifications non enregistrées dans le {dash} suivant :", "dashboard.loadingError.dashboardGridErrorMessage": "Impossible de charger le tableau de bord : {message}", - "dashboard.noMatchRoute.bannerText": "L'application de tableau de bord ne reconnaît pas cet itinéraire : {route}.", + "dashboard.noMatchRoute.bannerText": "L'application de tableau de bord ne reconnaît pas ce chemin : {route}.", + "dashboard.panel.addToLibrary.errorMessage": "Une erreur s'est produite lors de l'ajout du panneau {panelTitle} à la bibliothèque", "dashboard.panel.addToLibrary.successMessage": "Le panneau {panelTitle} a été ajouté à la bibliothèque", - "dashboard.panel.unableToMigratePanelDataForSixThreeZeroErrorMessage": "Impossible de migrer les données du panneau pour une rétrocompatibilité avec \"6.3.0\". Le panneau ne contient pas le champ attendu : {key}", - "dashboard.panel.unlinkFromLibrary.successMessage": "Le panneau {panelTitle} n'est plus connecté à la bibliothèque", - "dashboard.panelStorageError.clearError": "Une erreur s'est produite lors de la suppression des modifications non enregistrées : {message}", - "dashboard.panelStorageError.getError": "Une erreur s'est produite lors de la récupération des modifications non enregistrées : {message}", - "dashboard.panelStorageError.setError": "Une erreur s'est produite lors de la définition des modifications non enregistrées : {message}", + "dashboard.panel.replacePanel.flyoutHeader": "Remplacer le panneau {panelName} par :", + "dashboard.panel.unableToMigratePanelDataForSixThreeZeroErrorMessage": "Impossible de migrer les données du panneau pour une rétro-compatibilité \"6.3.0\". Le panneau ne contient pas le champ attendu : {key}.", + "dashboard.panel.unlinkFromLibrary.failureMessage": "Une erreur s'est produite lors de la dissociation du panneau {panelTitle} de la bibliothèque.", + "dashboard.panel.unlinkFromLibrary.successMessage": "Le panneau {panelTitle} n'est plus connecté à la bibliothèque.", + "dashboard.panelStorageError.clearError": "Une erreur s'est produite lors de la suppression des modifications non enregistrées : {message}.", + "dashboard.panelStorageError.getError": "Une erreur s'est produite lors de la récupération des modifications non enregistrées : {message}.", + "dashboard.panelStorageError.setError": "Une erreur s'est produite lors de la définition des modifications non enregistrées : {message}.", "dashboard.share.defaultDashboardTitle": "Tableau de bord [{date}]", "dashboard.strings.dashboardEditTitle": "Modification de {title}", "dashboard.viewmodeBackup.error": "Une erreur s'est produite lors de la sauvegarde du mode d'affichage : {message}", @@ -1096,8 +1274,10 @@ "dashboard.actions.toggleExpandPanelMenuItem.notExpandedDisplayName": "Maximiser le panneau", "dashboard.addPanel.noMatchingObjectsMessage": "Aucun objet correspondant trouvé.", "dashboard.addPanel.panelAddedToContainerSuccessMessageTitle": "Un panneau a été ajouté", + "dashboard.addPanelMenuTrigger.description": "Une nouvelle action apparaîtra dans le menu Ajouter un panneau du tableau de bord", + "dashboard.addPanelMenuTrigger.title": "Menu Ajouter un panneau", "dashboard.appLeaveConfirmModal.cancelButtonLabel": "Annuler", - "dashboard.appLeaveConfirmModal.unsavedChangesSubtitle": "Quitter le tableau de bord sans enregistrer ?", + "dashboard.appLeaveConfirmModal.unsavedChangesSubtitle": "Quitter Dashboard sans enregistrer ?", "dashboard.appLeaveConfirmModal.unsavedChangesTitle": "Modifications non enregistrées", "dashboard.badge.managed.tooltip": "Ce tableau de bord est géré par le système. Cloner ce tableau de bord pour effectuer des modifications.", "dashboard.badge.readOnly.text": "Lecture seule", @@ -1107,7 +1287,7 @@ "dashboard.createConfirmModal.continueButtonLabel": "Poursuivre les modifications", "dashboard.createConfirmModal.unsavedChangesSubtitle": "Poursuivez les modifications ou utilisez un tableau de bord vierge.", "dashboard.createConfirmModal.unsavedChangesTitle": "Nouveau tableau de bord déjà en cours", - "dashboard.dashboardAppBreadcrumbsTitle": "Tableau de bord", + "dashboard.dashboardAppBreadcrumbsTitle": "Tableaux de bord", "dashboard.dashboardPageTitle": "Tableaux de bord", "dashboard.dashboardWasSavedSuccessMessage": "Le tableau de bord \"{dashTitle}\" a été enregistré.", "dashboard.deleteError.toastDescription": "Erreur rencontrée lors de la suppression du tableau de bord", @@ -1151,10 +1331,11 @@ "dashboard.emptyScreen.noPermissionsTitle": "Ce tableau de bord est vide.", "dashboard.emptyScreen.viewModeSubtitle": "Accédez au mode de modification, puis commencez à ajouter vos visualisations.", "dashboard.emptyScreen.viewModeTitle": "Ajouter des visualisations à votre tableau de bord", - "dashboard.factory.displayName": "Tableau de bord", + "dashboard.factory.displayName": "Dashboard", + "dashboard.factory.displayNameLowercase": "tableau de bord", "dashboard.featureCatalogue.dashboardDescription": "Affichez et partagez une collection de visualisations et de recherches enregistrées.", "dashboard.featureCatalogue.dashboardSubtitle": "Analysez des données à l’aide de tableaux de bord.", - "dashboard.featureCatalogue.dashboardTitle": "Tableau de bord", + "dashboard.featureCatalogue.dashboardTitle": "Dashboard", "dashboard.hasRunMigrationsBadge": "Enregistrement recommandé", "dashboard.hasRunMigrationsBadgeToolTipContent": "Un ou plusieurs panneaux de ce tableau de bord ont été mis à jour vers une nouvelle version. Enregistrez le tableau de bord pour qu'il charge plus rapidement la prochaine fois.", "dashboard.labs.enableLabsDescription": "Cet indicateur détermine si l'utilisateur a accès au bouton Ateliers, moyen rapide d'activer et de désactiver les fonctionnalités de la version d'évaluation technique dans le tableau de bord.", @@ -1231,21 +1412,22 @@ "dashboard.topNave.viewConfigDescription": "Basculer en mode Affichage uniquement", "dashboard.unsavedChangesBadge": "Modifications non enregistrées", "dashboard.unsavedChangesBadgeToolTipContent": " Vous avez des modifications non enregistrées dans ce tableau de bord. Pour supprimer cette étiquette, enregistrez le tableau de bord.", - "data.advancedSettings.autocompleteIgnoreTimerangeText": "Désactivez cette propriété pour obtenir des suggestions de saisie semi-automatique depuis l'intégralité de l'ensemble de données plutôt que depuis la plage temporelle définie. {learnMoreLink}", + "data.advancedSettings.autocompleteIgnoreTimerangeText": "Désactivez cette propriété pour obtenir des suggestions de saisie semi-automatique depuis l’intégralité de l’ensemble de données plutôt que depuis la plage temporelle définie. {learnMoreLink}", "data.advancedSettings.autocompleteValueSuggestionMethodText": "La méthode utilisée pour générer des suggestions de valeur pour la saisie semi-automatique KQL. Sélectionnez terms_enum pour utiliser l'API d'énumération de termes d'Elasticsearch afin d’améliorer les performances de suggestion de saisie semi-automatique. (Notez que terms_enum est incompatible avec la sécurité au niveau du document.) Sélectionnez terms_agg pour utiliser l'agrégation de termes d'Elasticsearch. (Notez que terms_agg est incompatible avec les champs de type IP.) {learnMoreLink}", - "data.advancedSettings.courier.customRequestPreferenceText": "{requestPreferenceLink} utilisé quand {setRequestReferenceSetting} est défini sur {customSettingValue}.", + "data.advancedSettings.courier.customRequestPreferenceText": "{requestPreferenceLink} utilisé lorsque {setRequestReferenceSetting} est défini sur {customSettingValue}.", "data.advancedSettings.courier.maxRequestsText": "Contrôle le paramètre {maxRequestsLink} utilisé pour les requêtes _msearch envoyées par Kibana. Définir ce paramètre sur 0 permet d’utiliser la valeur Elasticsearch par défaut.", - "data.advancedSettings.query.allowWildcardsText": "Lorsque ce paramètre est activé, le caractère \"*\" est autorisé en tant que premier caractère dans une clause de requête. Pour interdire l'utilisation de caractères génériques au début des requêtes Lucene de base, utilisez {queryStringOptionsPattern}.", - "data.advancedSettings.query.queryStringOptionsText": "{optionsLink} pour l'analyseur de chaînes de requête Lucene. Uniquement utilisé lorsque\"{queryLanguage}\" est défini sur {luceneLanguage}.", + "data.advancedSettings.query.allowWildcardsText": "Lorsque ce paramètre est activé, le caractère \"*\" est autorisé en tant que premier caractère dans une clause de requête. Pour ne plus autoriser l’utilisation de caractères génériques au début des requêtes Lucene de base, utilisez {queryStringOptionsPattern}.", + "data.advancedSettings.query.queryStringOptionsText": "{optionsLink} pour l'analyseur de chaînes de requête Lucene. Uniquement utilisé lorsque \"{queryLanguage}\" est défini sur {luceneLanguage}.", "data.advancedSettings.sortOptionsText": "{optionsLink} pour le paramètre de tri Elasticsearch", - "data.advancedSettings.timepicker.quickRangesText": "La liste des plages à afficher dans la section rapide du filtre temporel. Il s'agit d’un tableau d'objets, avec chaque objet contenant \"from\", \"to\" (voir {acceptedFormatsLink}) et \"display\" (le titre à afficher).", + "data.advancedSettings.timepicker.quickRangesText": "La liste des plages à afficher dans la section rapide du filtre temporel. Il s’agit d’un tableau d'objets, avec chaque objet contenant \"de\", \"à\" (voir {acceptedFormatsLink}) et \"afficher\" (le titre à afficher).", "data.advancedSettings.timepicker.timeDefaultsDescription": "L'option de filtre temporel à utiliser lorsque Kibana est démarré sans filtre. Doit être un objet contenant \"from\" et \"to\" (voir {acceptedFormatsLink}).", "data.aggTypes.buckets.ranges.rangesFormatMessage": "{gte} {from} et {lt} {to}", "data.aggTypes.buckets.ranges.rangesFormatMessageArrowRight": "{from} → {to}", - "data.filter.filterBar.fieldNotFound": "Champ {key} introuvable dans la vue de données {dataView}", + "data.filter.filterBar.fieldNotFound": "Champ {key} non trouvé dans la vue de données {dataView}", "data.inspector.table.tableLabel": "Tableau {index}", - "data.inspector.table.tablesDescription": "Il y a {tablesCount, plural, one {# tableau} many {# tableaux} other {# tableaux}} au total", - "data.mgmt.searchSessions.api.fetchTimeout": "La récupération des informations de la session de recherche a expiré après {timeout} secondes", + "data.inspector.table.tablesDescription": "Il y a {tablesCount, plural, one {# tableau} other {# tableaux} } au total.", + "data.mgmt.searchSessions.api.fetchTimeout": "La récupération des informations de la session de recherche a expiré après {timeout} secondes", + "data.mgmt.searchSessions.extendModal.extendMessage": "L'expiration de la session de recherche \"{name}\" sera étendue jusqu'à {newExpires}.", "data.mgmt.searchSessions.status.expiresOn": "Expire le {expireDate}", "data.mgmt.searchSessions.status.expiresSoonInDays": "Expire dans {numDays} jours", "data.mgmt.searchSessions.status.expiresSoonInDaysTooltip": "{numDays} jours", @@ -1253,57 +1435,58 @@ "data.mgmt.searchSessions.status.expiresSoonInHoursTooltip": "{numHours} heures", "data.mgmt.searchSessions.status.message.createdOn": "Expire le {expireDate}", "data.mgmt.searchSessions.status.message.expiredOn": "Expiré le {expireDate}", - "data.parseEsInterval.invalidEsCalendarIntervalErrorMessage": "Intervalle de calendrier non valide : {interval}, la valeur doit être 1", + "data.parseEsInterval.invalidEsCalendarIntervalErrorMessage": "Intervalle de calendrier non valide : {interval} ; la valeur doit être 1.", "data.parseEsInterval.invalidEsIntervalFormatErrorMessage": "Format d'intervalle non valide : {interval}", - "data.search.aggs.aggTypesLabel": "Plages {fieldName}", + "data.search.aggs.aggTypesLabel": "plages {fieldName}", "data.search.aggs.buckets.dateHistogramLabel": "{fieldName} par {intervalDescription}", - "data.search.aggs.buckets.intervalOptions.milliseconds": "{n} millisecondes", - "data.search.aggs.buckets.intervalOptions.seconds": "{n} secondes", - "data.search.aggs.buckets.ipRangeLabel": "Plages d'IP {fieldName}", - "data.search.aggs.buckets.significantTermsLabel": "Top {size} des termes inhabituels dans {fieldName}", - "data.search.aggs.buckets.significantTextLabel": "Top {size} des termes inhabituels pour le texte \"{fieldName}\"", + "data.search.aggs.buckets.intervalOptions.milliseconds": "{n} millisecondes", + "data.search.aggs.buckets.intervalOptions.seconds": "{n} secondes", + "data.search.aggs.buckets.ipPrefixLabel": "Préfixes IP de {fieldName}", + "data.search.aggs.buckets.ipRangeLabel": "Plages d'IP de {fieldName}", + "data.search.aggs.buckets.significantTermsLabel": "Top {size} des termes les plus inhabituels pour {fieldName}", + "data.search.aggs.buckets.significantTextLabel": "Top {size} des termes les plus inhabituels pour \"{fieldName}\"", "data.search.aggs.error.aggNotFound": "Aucun type d'agrégation enregistré pour \"{type}\".", "data.search.aggs.metrics.averageLabel": "Moyenne {field}", - "data.search.aggs.metrics.maxLabel": "Max {field}", + "data.search.aggs.metrics.maxLabel": "Max. {field}", "data.search.aggs.metrics.medianLabel": "Médiane {field}", - "data.search.aggs.metrics.minLabel": "Min {field}", + "data.search.aggs.metrics.minLabel": "Min. {field}", "data.search.aggs.metrics.percentileRanks.valuePropsLabel": "Rang centile {format} de \"{label}\"", "data.search.aggs.metrics.percentileRanksLabel": "Rangs centiles de {field}", - "data.search.aggs.metrics.percentiles.valuePropsLabel": "{percentile} centile de {label}", + "data.search.aggs.metrics.percentiles.valuePropsLabel": "{percentile} centile de {label}", "data.search.aggs.metrics.percentilesLabel": "Centiles de {field}", "data.search.aggs.metrics.rateLabel": "Taux de {field} par {unit}", "data.search.aggs.metrics.singlePercentileLabel": "Centile {field}", "data.search.aggs.metrics.singlePercentileRankLabel": "Rang centile de {field}", "data.search.aggs.metrics.standardDeviation.keyDetailsLabel": "Écart-type de {fieldDisplayName}", - "data.search.aggs.metrics.standardDeviation.lowerKeyDetailsTitle": "{label} supérieur", - "data.search.aggs.metrics.standardDeviation.upperKeyDetailsTitle": "{label} inférieur", + "data.search.aggs.metrics.standardDeviation.lowerKeyDetailsTitle": "{label} inférieur", + "data.search.aggs.metrics.standardDeviation.upperKeyDetailsTitle": "{label} supérieur", "data.search.aggs.metrics.standardDeviationLabel": "Écart-type de {field}", "data.search.aggs.metrics.sumLabel": "Somme de {field}", "data.search.aggs.metrics.topMetrics.ascNoSizeLabel": "Première valeur \"{fieldName}\" par \"{sortField}\"", - "data.search.aggs.metrics.topMetrics.ascWithSizeLabel": "{size} premières valeurs \"{fieldName}\" par \"{sortField}\"", + "data.search.aggs.metrics.topMetrics.ascWithSizeLabel": "{size} premières valeurs \"{fieldName}\" par \"{sortField}\"", "data.search.aggs.metrics.topMetrics.descNoSizeLabel": "Dernière valeur \"{fieldName}\" par \"{sortField}\"", - "data.search.aggs.metrics.topMetrics.descWithSizeLabel": "{size} dernières valeurs \"{fieldName}\" par \"{sortField}\"", - "data.search.aggs.metrics.uniqueCountLabel": "Compte unique de {field}", - "data.search.aggs.metrics.valueCountLabel": "Nombre de valeurs de {field}", - "data.search.aggs.paramTypes.field.invalidSavedFieldParameterErrorMessage": "Le champ enregistré \"{fieldParameter}\" de la vue de données \"{indexPatternTitle}\" n'est pas valide pour être utilisé avec l'agrégation \"{aggType}\". Veuillez sélectionner un nouveau champ.", - "data.search.aggs.paramTypes.field.requiredFieldParameterErrorMessage": "{fieldParameter} est un paramètre requis", + "data.search.aggs.metrics.topMetrics.descWithSizeLabel": "{size} dernières valeurs \"{fieldName}\" par \"{sortField}\"", + "data.search.aggs.metrics.uniqueCountLabel": "Décompte unique de {field}", + "data.search.aggs.metrics.valueCountLabel": "Décompte de la valeur de {field}", + "data.search.aggs.paramTypes.field.invalidSavedFieldParameterErrorMessage": "Le champ enregistré \"{fieldParameter}\" de la vue de données \"{indexPatternTitle}\" n'est pas valide pour une utilisation avec l'agrégation \"{aggType}\". Veuillez sélectionner un nouveau champ.", + "data.search.aggs.paramTypes.field.requiredFieldParameterErrorMessage": "{fieldParameter} est un paramètre requis.", "data.search.aggs.percentageOfLabel": "Pourcentage de {label}", "data.search.aggs.rareTerms.aggTypesLabel": "Termes rares de {fieldName}", "data.search.es_search.queryTimeValue": "{queryTime} ms", "data.search.functions.geoBoundingBox.arguments.error": "Au moins un des groupes de paramètres suivants doit être fourni : {parameters}.", - "data.search.searchSource.indexPatternIdDescription": "ID dans l'index {kibanaIndexPattern}.", + "data.search.searchSource.indexPatternIdDescription": "L'ID dans l'index {kibanaIndexPattern}.", "data.search.searchSource.queryTimeValue": "{queryTime} ms", "data.search.searchSource.requestTimeValue": "{requestTime} ms", "data.search.statusError": "Recherche {searchId} terminée avec un statut {errorCode}", - "data.search.statusThrow": "Le statut de la recherche avec l'ID {searchId} a généré une erreur {message} (statusCode : {errorCode})", - "data.search.timeBuckets.dayLabel": "{amount, plural, one {un jour} many {# jours} other {# jours}}", - "data.search.timeBuckets.hourLabel": "{amount, plural, one {une heure} many {# heures} other {# heures}}", - "data.search.timeBuckets.millisecondLabel": "{amount, plural, one {une milliseconde} many {# millisecondes} other {# millisecondes}}", - "data.search.timeBuckets.minuteLabel": "{amount, plural, one {une minute} many {# minutes} other {# minutes}}", - "data.search.timeBuckets.secondLabel": "{amount, plural, one {une seconde} many {# secondes} other {# secondes}}", - "data.searchSessionIndicator.canceledWhenText": "Arrêté {when}", - "data.searchSessionIndicator.loadingInTheBackgroundWhenText": "Démarré {when}", - "data.searchSessionIndicator.loadingResultsWhenText": "Démarré {when}", + "data.search.statusThrow": "Le statut de la recherche avec l'ID {searchId} a généré un {message} d'erreur (statusCode : {errorCode})", + "data.search.timeBuckets.dayLabel": "{amount, plural, one {un jour} other {# jours}}", + "data.search.timeBuckets.hourLabel": "{amount, plural, one {une heure} other {# heures}}", + "data.search.timeBuckets.millisecondLabel": "{amount, plural, one {une milliseconde} other {# millisecondes}}", + "data.search.timeBuckets.minuteLabel": "{amount, plural, one {une minute} other {# minutes}}", + "data.search.timeBuckets.secondLabel": "{amount, plural, one {une seconde} other {# secondes}}", + "data.searchSessionIndicator.canceledWhenText": "Arrêtée {when}", + "data.searchSessionIndicator.loadingInTheBackgroundWhenText": "Débuté {when}", + "data.searchSessionIndicator.loadingResultsWhenText": "Débuté {when}", "data.searchSessionIndicator.restoredWhenText": "Terminé {when}", "data.searchSessionIndicator.resultLoadedInTheBackgroundWhenText": "Terminé {when}", "data.searchSessionIndicator.resultsLoadedWhenText": "Terminé {when}", @@ -1351,6 +1534,7 @@ "data.advancedSettings.suggestFilterValuesTitle": "Suggestions de l'éditeur de filtres", "data.advancedSettings.timepicker.last15Minutes": "Dernières 15 minutes", "data.advancedSettings.timepicker.last1Hour": "Dernière heure", + "data.advancedSettings.timepicker.last1Minute": "Dernière minute", "data.advancedSettings.timepicker.last1Year": "Dernière année", "data.advancedSettings.timepicker.last24Hours": "Dernières 24 heures", "data.advancedSettings.timepicker.last30Days": "30 derniers jours", @@ -1522,6 +1706,14 @@ "data.search.aggs.buckets.intervalOptions.weeklyDisplayName": "Semaine", "data.search.aggs.buckets.intervalOptions.yearly": "an", "data.search.aggs.buckets.intervalOptions.yearlyDisplayName": "An", + "data.search.aggs.buckets.ipPrefix.customLabel.help": "Représente une étiquette personnalisée pour cette agrégation", + "data.search.aggs.buckets.ipPrefix.enabled.help": "Spécifie si cette agrégation doit être activée.", + "data.search.aggs.buckets.ipPrefix.field.help": "Champ à utiliser pour cette agrégation", + "data.search.aggs.buckets.ipPrefix.help": "La longueur du préfixe réseau, et s'il correspond à une adresse IPv4 ou IPv6", + "data.search.aggs.buckets.ipPrefix.id.help": "ID pour cette agrégation", + "data.search.aggs.buckets.ipPrefix.json.help": "Json avancé à inclure lorsque l'agrégation est envoyée vers Elasticsearch", + "data.search.aggs.buckets.ipPrefix.schema.help": "Schéma à utiliser pour cette agrégation", + "data.search.aggs.buckets.ipPrefixTitle": "Préfixe IP", "data.search.aggs.buckets.ipRange.customLabel.help": "Représente une étiquette personnalisée pour cette agrégation", "data.search.aggs.buckets.ipRange.enabled.help": "Spécifie si cette agrégation doit être activée.", "data.search.aggs.buckets.ipRange.field.help": "Champ à utiliser pour cette agrégation", @@ -1637,6 +1829,7 @@ "data.search.aggs.function.buckets.filters.help": "Génère une configuration d'agrégation en série pour une agrégation Filtre.", "data.search.aggs.function.buckets.geoTile.help": "Génère une configuration d'agrégation en série pour une agrégation Geotile.", "data.search.aggs.function.buckets.histogram.help": "Génère une configuration d'agrégation en série pour une agrégation Histogramme.", + "data.search.aggs.function.buckets.ipPrefix.help": "Génère une configuration d'agrégation en série pour une agrégation Préfixe IP", "data.search.aggs.function.buckets.ipRange.help": "Génère une configuration d'agrégation en série pour une agrégation Plage d'IP.", "data.search.aggs.function.buckets.multiTerms.help": "Génère une configuration d'agrégation en série pour une agrégation Termes multiples.", "data.search.aggs.function.buckets.range.help": "Génère une configuration d'agrégation en série pour une agrégation Plage.", @@ -1970,7 +2163,7 @@ "data.search.functions.esaggs.probability.help": "Probabilité qu'un document soit inclus dans les données agrégées. Utilise l'échantillonnage aléatoire.", "data.search.functions.esaggs.samplerSeed.help": "Valeur initiale permettant de générer l'échantillonnage aléatoire de documents. Utilise l'échantillonnage aléatoire.", "data.search.functions.esaggs.timeFields.help": "Spécifiez des champs temporels afin d’obtenir les plages temporelles résolues pour la requête.", - "data.search.functions.existsFilter.field.help": "Spécifiez le champ que vous souhaitez filtrer. Utilisez la fonction ''field''.", + "data.search.functions.existsFilter.field.help": "Spécifiez le champ que vous souhaitez filtrer. Utilisez la fonction `field`.", "data.search.functions.existsFilter.help": "Créer un filtre Kibana existant", "data.search.functions.existsFilter.negate.help": "Si le filtre doit être inversé.", "data.search.functions.extendedBounds.help": "Créer des limites étendues", @@ -1996,6 +2189,9 @@ "data.search.functions.geoPoint.lon.help": "Spécifier la longitude", "data.search.functions.geoPoint.point.error": "Le paramètre du point doit être une chaîne ou deux valeurs numériques.", "data.search.functions.geoPoint.point.help": "Spécifiez le point sous la forme d’une chaîne de coordonnées séparées par des virgules ou sous la forme de deux valeurs numériques.", + "data.search.functions.ipPrefix.help": "Créer un préfixe IP", + "data.search.functions.ipPrefix.isIpv6.help": "Préciser si le préfixe s'applique à des adresses IPv6", + "data.search.functions.ipPrefix.prefixLength.help": "Préciser la longueur du préfixe réseau", "data.search.functions.ipRange.from.help": "Spécifier l'adresse de début", "data.search.functions.ipRange.help": "Créer une plage d'IP", "data.search.functions.ipRange.to.help": "Spécifier l'adresse de fin", @@ -2012,7 +2208,7 @@ "data.search.functions.numericalRange.help": "Créer une plage numérique", "data.search.functions.numericalRange.label.help": "Spécifier l'étiquette de la plage", "data.search.functions.numericalRange.to.help": "Spécifier la valeur de fin", - "data.search.functions.phraseFilter.field.help": "Spécifiez le champ que vous souhaitez filtrer. Utilisez la fonction ''field''.", + "data.search.functions.phraseFilter.field.help": "Spécifiez le champ que vous souhaitez filtrer. Utilisez la fonction `field`.", "data.search.functions.phraseFilter.help": "Créer un filtre d’expression Kibana", "data.search.functions.phraseFilter.negate.help": "Si le filtre doit être inversé", "data.search.functions.phraseFilter.phrase.help": "Spécifier l'expression", @@ -2024,10 +2220,10 @@ "data.search.functions.range.help": "Créer un filtre de plage Kibana", "data.search.functions.range.lt.help": "Inférieur à", "data.search.functions.range.lte.help": "Inférieur ou égal à", - "data.search.functions.rangeFilter.field.help": "Spécifiez le champ que vous souhaitez filtrer. Utilisez la fonction ''field''.", + "data.search.functions.rangeFilter.field.help": "Spécifiez le champ que vous souhaitez filtrer. Utilisez la fonction `field`.", "data.search.functions.rangeFilter.help": "Créer un filtre de plage Kibana", "data.search.functions.rangeFilter.negate.help": "Si le filtre doit être inversé", - "data.search.functions.rangeFilter.range.help": "Spécifiez la plage à l’aide de la fonction ''range''.", + "data.search.functions.rangeFilter.range.help": "Spécifiez la plage à l’aide de la fonction `range`.", "data.search.functions.removeFilter.from.help": "Supprime uniquement les filtres appartenant à l'ID fourni", "data.search.functions.removeFilter.group.help": "Supprime uniquement les filtres appartenant au groupe fourni", "data.search.functions.removeFilter.help": "Supprime les filtres du contexte", @@ -2059,6 +2255,7 @@ "data.search.timeoutContactAdmin": "Votre requête a expiré. Contactez l'administrateur système pour accroître le temps d'exécution.", "data.search.timeoutIncreaseSetting": "Votre requête a expiré. Augmentez le temps d'exécution en utilisant le paramètre avancé de délai d'expiration de la recherche.", "data.search.timeoutIncreaseSettingActionText": "Modifier le paramètre", + "data.searchService.anonymousRequestTitle": "Requête", "data.searchSession.warning.readDocs": "En savoir plus", "data.searchSessionIndicator.cancelButtonText": "Arrêter la session", "data.searchSessionIndicator.canceledDescriptionText": "Vous visualisez des données incomplètes", @@ -2101,8 +2298,12 @@ "data.sessions.management.flyoutTitle": "Inspecter la session de recherche", "data.triggers.applyFilterDescription": "Lorsque le filtre Kibana est appliqué. Peut être un filtre simple ou un filtre de plage.", "data.triggers.applyFilterTitle": "Appliquer le filtre", - "dataViews.deprecations.scriptedFieldsMessage": "Vous avez {numberOfIndexPatternsWithScriptedFields} vues de données ({titlesPreview}…) qui utilisent des champs scriptés. Les champs scriptés sont déclassés et seront supprimés à l'avenir. Utilisez plutôt des champs d'exécution.", + "dataViews.deprecations.scriptedFieldsMessage": "Vous avez {numberOfIndexPatternsWithScriptedFields} vues de données ({titlesPreview}...) qui utilisent des champs scriptés. Les champs scriptés sont déclassés et seront supprimés à l'avenir. Utilisez plutôt des champs d'exécution.", "dataViews.fetchFieldErrorTitle": "Erreur lors de l'extraction des champs pour la vue de données {title} (ID : {id})", + "dataViews.advancedSettings.cacheMaxAgeText": "Définit la durée de mise en cache, en secondes, des requêtes API de champs de vues de données. La valeur 0 désactive la mise en cache. Les modifications de cette valeur peuvent ne pas prendre effet immédiatement. Les utilisateurs doivent vider le cache de leur navigateur ou attendre l'expiration du cache actuel. Pour que les modifications soient visibles immédiatement, effectuez une actualisation matérielle de Kibana.", + "dataViews.advancedSettings.cacheMaxAgeTitle": "Âge maximal du cache de champ (en secondes)", + "dataViews.advancedSettings.dataTiersName": "Niveaux de données exclus des requêtes de champs", + "dataViews.advancedSettings.dataTiersText": "Pour des performances plus rapides, excluez des champs de niveaux spécifiques (p. ex. data_frozen). Séparez les différents niveaux par une virgule, comme ceci : data_warm,data_cold", "dataViews.aliasLabel": "Alias", "dataViews.contentManagementType": "Vue de données", "dataViews.dataStreamLabel": "Flux de données", @@ -2118,43 +2319,47 @@ "dataViews.unableWriteLabel": "Impossible d'écrire la vue de données ! Actualisez la page pour obtenir la dernière version de cette vue de données.", "discover.advancedSettings.disableDocumentExplorerDescription": "Désactivez cette option pour utiliser le nouveau {documentExplorerDocs} au lieu de la vue classique. l'explorateur de documents offre un meilleur tri des données, des colonnes redimensionnables et une vue en plein écran.", "discover.advancedSettings.discover.showFieldStatisticsDescription": "Activez le {fieldStatisticsDocs} pour afficher des détails tels que les valeurs minimale et maximale d'un champ numérique ou une carte d'un champ géographique. Cette fonctionnalité est en version bêta et susceptible d'être modifiée.", - "discover.advancedSettings.discover.showMultifieldsDescription": "Détermine si les {multiFields} doivent s'afficher dans la fenêtre de document étendue. Dans la plupart des cas, les champs multiples sont les mêmes que les champs d'origine. Cette option est uniquement disponible lorsque le paramètre ''searchFieldsFromSource'' est désactivé.", + "discover.advancedSettings.discover.showMultifieldsDescription": "Détermine si les {multiFields} doivent s'afficher dans la fenêtre de document étendue. Dans la plupart des cas, les champs multiples sont les mêmes que les champs d'origine. Cette option est uniquement disponible lorsque le paramètre `searchFieldsFromSource` est désactivé.", "discover.advancedSettings.enableESQLDescription": "{technicalPreviewLabel} Cette fonctionnalité en préversion technique est à un stade hautement expérimental ; ne pas s'y fier pour les recherches enregistrées, ni pour les visualisations ou les tableaux de bord en production. Ce paramètre active ES|QL dans Discover. Si vous avez des commentaires sur cette expérience, contactez-nous via {link}", - "discover.context.contextOfTitle": "Documents relatifs à #{anchorId}", - "discover.context.newerDocumentsWarning": "Seuls {docCount} documents plus récents que le document ancré ont été trouvés.", - "discover.context.olderDocumentsWarning": "Seuls {docCount} documents plus anciens que le document ancré ont été trouvés.", - "discover.context.pageTitle": "Documents relatifs à #{anchorId}", - "discover.contextViewRoute.errorMessage": "Aucune vue de données correspondante pour l'ID {dataViewId}", + "discover.context.contextOfTitle": "Les documents relatifs à #{anchorId}", + "discover.context.newerDocumentsWarning": "Seuls {docCount} documents plus récents que le document ancré ont été trouvés.", + "discover.context.olderDocumentsWarning": "Seuls {docCount} documents plus anciens que le document ancré ont été trouvés.", + "discover.context.pageTitle": "Les documents relatifs à #{anchorId}", + "discover.contextViewRoute.errorMessage": "Aucune donnée correspondante pour l'ID {dataViewId}", "discover.doc.failedToLocateDataView": "Aucune vue de données ne correspond à l'ID {dataViewId}.", - "discover.doc.pageTitle": "Document unique – #{id}", - "discover.doc.somethingWentWrongDescription": "{indexName} manquant.", - "discover.docExplorerCallout.bodyMessage": "Triez, sélectionnez et comparez rapidement les données, redimensionnez les colonnes et affichez les documents en plein écran grâce à {documentExplorer}.", - "discover.docTable.limitedSearchResultLabel": "Limité à {resultCount} résultats. Veuillez affiner votre recherche.", + "discover.doc.pageTitle": "Document unique - #{id}", + "discover.doc.somethingWentWrongDescription": "Index {indexName} manquant.", + "discover.docExplorerCallout.bodyMessage": "Triez, sélectionnez et comparez rapidement les données, redimensionnez les colonnes et affichez les documents en plein écran grâce à l'{documentExplorer}.", + "discover.docTable.limitedSearchResultLabel": "Limité à {resultCount} résultats. Veuillez affiner votre recherche.", "discover.docTable.rowsPerPage": "Lignes par page : {pageSize}", - "discover.docTable.tableHeader.moveColumnLeftButtonAriaLabel": "Déplacer la colonne {columnName} vers la gauche", - "discover.docTable.tableHeader.moveColumnRightButtonAriaLabel": "Déplacer la colonne {columnName} vers la droite", - "discover.docTable.tableHeader.removeColumnButtonAriaLabel": "Supprimer la colonne {columnName}", - "discover.docTable.tableHeader.sortByColumnAscendingAriaLabel": "Trier {columnName} dans l'ordre croissant", - "discover.docTable.tableHeader.sortByColumnDescendingAriaLabel": "Trier {columnName} dans l'ordre décroissant", - "discover.docTable.tableHeader.sortByColumnUnsortedAriaLabel": "Arrêter le tri sur {columnName}", - "discover.docTable.tableHeader.timeFieldIconTooltipAriaLabel": "{timeFieldName} – Ce champ représente l'heure à laquelle les événements se sont produits.", - "discover.docTable.totalDocuments": "{totalDocuments} documents", + "discover.docTable.tableHeader.moveColumnLeftButtonAriaLabel": "Déplacer la colonne {columnName} vers la gauche", + "discover.docTable.tableHeader.moveColumnRightButtonAriaLabel": "Déplacer la colonne {columnName} vers la droite", + "discover.docTable.tableHeader.removeColumnButtonAriaLabel": "Supprimer la colonne {columnName}", + "discover.docTable.tableHeader.sortByColumnAscendingAriaLabel": "Trier la colonne {columnName} par ordre croissant", + "discover.docTable.tableHeader.sortByColumnDescendingAriaLabel": "Trier la colonne {columnName} par ordre décroissant", + "discover.docTable.tableHeader.sortByColumnUnsortedAriaLabel": "Arrêter de trier la colonne {columnName}", + "discover.docTable.tableHeader.timeFieldIconTooltipAriaLabel": "{timeFieldName} : ce champ représente l'heure à laquelle les événements se sont produits.", + "discover.docTable.totalDocuments": "{totalDocuments} documents", "discover.dscTour.stepAddFields.description": "Cliquez sur {plusIcon} pour ajouter les champs qui vous intéressent.", - "discover.dscTour.stepExpand.description": "Cliquez sur {expandIcon} pour afficher, comparer et filtrer les documents.", - "discover.formatHit.moreFields": "et {count} autre(s) {count, plural, one {champ} many {champs} other {champs}}", - "discover.howToSeeOtherMatchingDocumentsDescription": "Voici les {sampleSize} premiers documents correspondant à votre recherche. Veuillez affiner cette dernière pour en voir davantage.", + "discover.dscTour.stepExpand.description": "Cliquez sur l'{expandIcon} pour afficher, comparer et filtrer les documents.", + "discover.formatHit.moreFields": "et {count} {count, plural, one {autre champ} other {autres champs}}", + "discover.hitsCounter.hitsPluralTitle": "{formattedHits} {hits, plural, one {résultat} other {résultats}}", + "discover.hitsCounter.partialHits": "≥{formattedHits}", + "discover.hitsCounter.partialHitsPluralTitle": "≥{formattedHits} {hits, plural, one {résultat} other {résultats}}", + "discover.howToSeeOtherMatchingDocumentsDescription": "Voici les {sampleSize} premiers documents correspondant à votre recherche. Veuillez affiner celle-ci pour en voir plus.", "discover.noMatchRoute.bannerText": "L'application Discover ne reconnaît pas cet itinéraire : {route}", "discover.noResults.kqlExamples.kqlDescription": "En savoir plus sur {kqlLink}", "discover.noResults.luceneExamples.footerDescription": "En savoir plus sur {luceneLink}", - "discover.noResults.noDocumentsOrCheckIndicesAndPermissionsDescription": "Vérifiez que la vue de données {dataViewName} avec le modèle d'indexation {dataViewPattern} a des index et documents correspondants et que vous avez l'autorisation requise pour les afficher.", - "discover.noResults.suggestion.removeOrDisableFiltersText": "Retirer ou {disableFiltersLink}", - "discover.pageTitleWithSavedSearch": "Discover –{savedSearchTitle}", + "discover.noResults.noDocumentsOrCheckIndicesAndPermissionsDescription": "Vérifiez que la vue de données {dataViewName} avec le modèle d'indexation {dataViewPattern} a des index et documents correspondants, et que vous avez l'autorisation de les afficher.", + "discover.noResults.suggestion.removeOrDisableFiltersText": "Supprimer ou {disableFiltersLink}", + "discover.pageTitleWithSavedSearch": "Discover - {savedSearchTitle}", "discover.savedSearchAliasMatchRedirect.objectNoun": "Recherche {savedSearch}", "discover.savedSearchURLConflictCallout.objectNoun": "Recherche {savedSearch}", "discover.showingDefaultDataViewWarningDescription": "Affichage de la vue de données par défaut : \"{loadedDataViewTitle}\" ({loadedDataViewId})", "discover.showingSavedDataViewWarningDescription": "Affichage de la vue de données enregistrée : \"{ownDataViewTitle}\" ({ownDataViewId})", - "discover.singleDocRoute.errorMessage": "Aucune vue de données correspondante pour l'ID {dataViewId}", - "discover.textBasedMode.selectedColumnsCallout": "Affichage de {selectedColumnsNumber} champ(s) sur {textBasedQueryColumnsNumber}. Ajoutez-en d’autres depuis la liste des champs disponibles.", + "discover.singleDocRoute.errorMessage": "Aucune donnée correspondante pour l'ID {dataViewId}", + "discover.textBasedMode.selectedColumnsCallout": "Affichage de {selectedColumnsNumber} champs sur {textBasedQueryColumnsNumber}. Ajoutez-en d’autres depuis la liste des champs disponibles.", + "discover.textBasedMode.techPreviewCalloutMessage": "ES|QL est actuellement en version d'évaluation technique. Pour en savoir plus, consultez {link}.", "discover.valueIsNotConfiguredDataViewIDWarningTitle": "{stateVal} n'est pas un ID de vue de données configuré", "discover.viewAlert.dataViewErrorText": "Échec de la vue des données de la règle d'alerte avec l'ID {alertId}.", "discover.advancedSettings.context.defaultSizeText": "Le nombre d'entrées connexes à afficher dans la vue contextuelle", @@ -2171,7 +2376,7 @@ "discover.advancedSettings.discover.modifyColumnsOnSwitchTitle": "Modifier les colonnes en cas de changement des vues de données", "discover.advancedSettings.discover.multiFieldsLinkText": "champs multiples", "discover.advancedSettings.discover.readFieldsFromSource": "Lire les champs depuis _source", - "discover.advancedSettings.discover.readFieldsFromSourceDescription": "Lorsque cette option est activée, les documents sont chargés directement depuis ''_source''. Elle sera bientôt déclassée. Lorsqu'elle est désactivée, les champs sont extraits via la nouvelle API de champ du service de recherche de haut niveau.", + "discover.advancedSettings.discover.readFieldsFromSourceDescription": "Lorsque cette option est activée, les documents sont chargés directement depuis `_source`. Elle sera bientôt déclassée. Lorsqu'elle est désactivée, les champs sont extraits via la nouvelle API de champ du service de recherche de haut niveau.", "discover.advancedSettings.discover.showFieldStatistics": "Afficher les statistiques de champ", "discover.advancedSettings.discover.showMultifields": "Afficher les champs multiples", "discover.advancedSettings.docTableHideTimeColumnText": "Permet de masquer la colonne ''Time'' dans Discover et dans toutes les recherches enregistrées des tableaux de bord.", @@ -2224,7 +2429,7 @@ "discover.context.unableToLoadAnchorDocumentDescription": "Impossible de charger le document ancré", "discover.context.unableToLoadDocumentDescription": "Impossible de charger les documents", "discover.contextViewRoute.errorTitle": "Une erreur s'est produite", - "discover.discoverBreadcrumbTitle": "Découverte", + "discover.discoverBreadcrumbTitle": "Discover", "discover.discoverDefaultSearchSessionName": "Discover", "discover.discoverDescription": "Explorez vos données de manière interactive en interrogeant et en filtrant des documents bruts.", "discover.discoverError.missingIdParamError": "Aucun ID de document fourni. Revenez à Discover pour sélectionner un autre document.", @@ -2291,9 +2496,17 @@ "discover.grid.flyout.documentNavigation": "Navigation dans le document", "discover.grid.flyout.toastColumnAdded": "La colonne \"{columnName}\" a été ajoutée.", "discover.grid.flyout.toastColumnRemoved": "La colonne \"{columnName}\" a été supprimée.", + "discover.grid.tableRow.actionsLabel": "Actions", + "discover.grid.tableRow.docViewerDetailHeading": "Document", + "discover.grid.tableRow.docViewerTextBasedDetailHeading": "Ligne", + "discover.grid.tableRow.mobileFlyoutActionsButton": "Actions", + "discover.grid.tableRow.moreFlyoutActionsButton": "Plus d'actions", "discover.grid.tableRow.textBasedDetailHeading": "Ligne développée", + "discover.grid.tableRow.viewSingleDocumentLinkLabel": "Afficher un seul document", "discover.grid.tableRow.viewSurroundingDocumentsHover": "Inspectez des documents qui ont été créés avant et après ce document. Seuls les filtres épinglés restent actifs dans la vue Documents relatifs.", - "discover.helpMenu.appName": "Découverte", + "discover.grid.tableRow.viewSurroundingDocumentsLinkLabel": "Afficher les documents alentour", + "discover.helpMenu.appName": "Discover", + "discover.hitsCounter.hitCountSpinnerAriaLabel": "Nombre final de résultats toujours en chargement", "discover.inspectorRequestDataTitleDocuments": "Documents", "discover.inspectorRequestDataTitleMoreDocuments": "Plus de documents", "discover.inspectorRequestDescriptionDocument": "Cette requête interroge Elasticsearch afin de récupérer les documents.", @@ -2306,6 +2519,7 @@ "discover.localMenu.inspectTitle": "Inspecter", "discover.localMenu.localMenu.alertsTitle": "Alertes", "discover.localMenu.localMenu.newSearchTitle": "Nouveauté", + "discover.localMenu.mustCopyOnSave": "Cette recherche enregistrée est gérée par Elastic. Les modifications effectuées ici doivent être enregistrées dans une nouvelle recherche sauvegardée.", "discover.localMenu.newSearchDescription": "Nouvelle recherche", "discover.localMenu.openInspectorForSearchDescription": "Ouvrir l'inspecteur de recherche", "discover.localMenu.openSavedSearchDescription": "Ouvrir une recherche enregistrée", @@ -2315,6 +2529,8 @@ "discover.localMenu.saveTitle": "Enregistrer", "discover.localMenu.shareSearchDescription": "Partager la recherche", "discover.localMenu.shareTitle": "Partager", + "discover.logsExplorerTabs.discover": "Discover", + "discover.logsExplorerTabs.logsExplorer": "Explorateur de logs", "discover.noMatchRoute.bannerTitleText": "Page introuvable", "discover.noResults.kqlExamples.combineMultipleText": "Combinaison de plusieurs requêtes avec AND/OR", "discover.noResults.kqlExamples.filterForDocsThatMatchValueText": "Filtrer sur les documents qui correspondent à une valeur", @@ -2348,14 +2564,20 @@ "discover.notifications.notSavedSearchTitle": "La recherche \"{savedSearchTitle}\" n'a pas été enregistrée.", "discover.notifications.savedSearchTitle": "La recherche \"{savedSearchTitle}\" a été enregistrée.", "discover.pageTitleWithoutSavedSearch": "Discover - Recherche non encore enregistrée", - "discover.rootBreadcrumb": "Découverte", - "discover.sampleData.viewLinkLabel": "Découverte", + "discover.panelsToggle.hideChartButton": "Masquer le graphique", + "discover.panelsToggle.panelsVisibilityLegend": "Visibilité des panneaux", + "discover.panelsToggle.showChartButton": "Afficher le graphique", + "discover.panelsToggle.showSidebarButton": "Afficher la barre latérale", + "discover.rootBreadcrumb": "Discover", + "discover.sampleData.viewLinkLabel": "Discover", "discover.savedSearch.savedObjectName": "Recherche enregistrée", "discover.savedSearchEmbeddable.action.viewSavedSearch.displayName": "Ouvrir dans Discover", "discover.searchingTitle": "Recherche", "discover.serverLocatorExtension.titleFromLocatorUnknown": "Recherche inconnue", "discover.singleDocRoute.errorTitle": "Une erreur s'est produite", "discover.skipToBottomButtonLabel": "Atteindre la fin du tableau", + "discover.textBasedMode.techPreviewCalloutLink": "documentation", + "discover.topNav.managedContentLabel": "Cette recherche sauvegardée est gérée par Elastic. Les modifications effectuées ici doivent être enregistrées dans une nouvelle recherche sauvegardée.", "discover.topNav.openSearchPanel.manageSearchesButtonLabel": "Gérer les recherches", "discover.topNav.openSearchPanel.noSearchesFoundDescription": "Aucune recherche correspondante trouvée.", "discover.topNav.openSearchPanel.openSearchTitle": "Ouvrir une recherche", @@ -2373,46 +2595,46 @@ "discover.viewModes.fieldStatistics.label": "Statistiques de champ", "domDragDrop.announce.cancelled": "Mouvement annulé. {label} revenu à sa position initiale", "domDragDrop.announce.cancelledItem": "Mouvement annulé. {label} revenu au groupe {groupLabel} à la position {position}", - "domDragDrop.announce.dropped.combineCompatible": "{label} combiné dans le groupe {groupLabel} en {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}", - "domDragDrop.announce.dropped.combineIncompatible": "{label} converti en {nextLabel} dans le groupe {groupLabel} à la position {position} et combiné à {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}", + "domDragDrop.announce.dropped.combineCompatible": "Combinaisons de {label} dans le {groupLabel} vers {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}", + "domDragDrop.announce.dropped.combineIncompatible": "Conversion de {label} en {nextLabel} dans le groupe {groupLabel} à la position {position} et combinaison avec {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}", "domDragDrop.announce.dropped.duplicated": "{label} dupliqué dans le groupe {groupLabel} à la position {position} dans le calque {layerNumber}", "domDragDrop.announce.dropped.duplicateIncompatible": "Copie de {label} convertie en {nextLabel} et ajoutée au groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}", - "domDragDrop.announce.dropped.moveCompatible": "{label} déplacé dans le groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}", - "domDragDrop.announce.dropped.moveIncompatible": "{label} converti en {nextLabel} et déplacé dans le groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}", + "domDragDrop.announce.dropped.moveCompatible": "Déplacement de {label} dans le groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}", + "domDragDrop.announce.dropped.moveIncompatible": "Conversion de {label} en {nextLabel} et déplacé dans le groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}", "domDragDrop.announce.dropped.reordered": "{label} réorganisé dans le groupe {groupLabel} de la position {prevPosition} à la position {position}", - "domDragDrop.announce.dropped.replaceDuplicateIncompatible": "Copie de {label} convertie en {nextLabel} et {dropLabel} remplacé dans le groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}", - "domDragDrop.announce.dropped.replaceIncompatible": "{label} converti en {nextLabel} et {dropLabel} remplacé dans le groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}", - "domDragDrop.announce.dropped.swapCompatible": "{label} déplacé vers {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber} et {dropLabel} dans le groupe {groupLabel} à la position {position} dans le calque {layerNumber}", - "domDragDrop.announce.dropped.swapIncompatible": "{label} converti en {nextLabel} dans le groupe {groupLabel} à la position {position} dans le calque {layerNumber} et permuté avec {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}", - "domDragDrop.announce.droppedDefault": "{label} ajouté dans le groupe {dropGroupLabel} à la position {position} dans le calque {dropLayerNumber}", + "domDragDrop.announce.dropped.replaceDuplicateIncompatible": "Conversion de la copie de {label} en {nextLabel} et remplacement de {dropLabel} dans le groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}", + "domDragDrop.announce.dropped.replaceIncompatible": "Conversion de {label} en {nextLabel} et remplacement de {dropLabel} dans le groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}", + "domDragDrop.announce.dropped.swapCompatible": "Déplacement de {label} vers {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber} et de {dropLabel} vers {groupLabel} à la position {position} dans le calque {layerNumber}", + "domDragDrop.announce.dropped.swapIncompatible": "Conversion de {label} en {nextLabel} dans le groupe {groupLabel} à la position {position} dans le calque {layerNumber} et permuté avec {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}", + "domDragDrop.announce.droppedDefault": "Ajout de {label} dans le groupe {dropGroupLabel} à la position {position} dans le calque {dropLayerNumber}", "domDragDrop.announce.droppedNoPosition": "{label} ajouté à {dropLabel}", - "domDragDrop.announce.duplicated.combine": "Combiner {dropLabel} avec {label} dans {groupLabel} à la position {position} dans le calque {dropLayerNumber}", - "domDragDrop.announce.duplicated.replace": "{dropLabel} remplacé par {label} dans {groupLabel} à la position {position} dans le calque {dropLayerNumber}", - "domDragDrop.announce.duplicated.replaceDuplicateCompatible": "{dropLabel} remplacé par une copie de {label} dans {groupLabel} à la position {position} dans le calque {dropLayerNumber}", + "domDragDrop.announce.duplicated.combine": "Combinaison de {dropLabel} avec {label} dans {groupLabel} à la position {position} dans le calque {dropLayerNumber}", + "domDragDrop.announce.duplicated.replace": "Remplacement de {dropLabel} par {label} dans {groupLabel} à la position {position} dans le calque {dropLayerNumber}", + "domDragDrop.announce.duplicated.replaceDuplicateCompatible": "Remplacement de {dropLabel} par une copie de {label} dans {groupLabel} à la position {position} dans le calque {dropLayerNumber}", "domDragDrop.announce.lifted": "{label} levé", - "domDragDrop.announce.selectedTarget.combine": "Combinez {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber} avec {label}. Appuyez sur la barre d’espace ou sur Entrée pour combiner.", - "domDragDrop.announce.selectedTarget.combineCompatible": "Combinez {label} dans le groupe {groupLabel} à la position {position} dans le calque {layerNumber} avec {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Maintenez la touche Contrôle enfoncée et appuyez sur la barre d’espace ou sur Entrée pour combiner.", - "domDragDrop.announce.selectedTarget.combineIncompatible": "Convertissez {label} en {nextLabel} dans le groupe {groupLabel} à la position {position} dans le calque {layerNumber} combinez-le à {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Maintenez la touche Contrôle enfoncée et appuyez sur la barre d’espace ou sur Entrée pour combiner.", - "domDragDrop.announce.selectedTarget.combineMain": "Vous faites glisser {label} de {groupLabel} à la position {position} dans le calque {layerNumber} sur {dropLabel} à partir du groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Appuyez sur la barre d'espace ou sur Entrée pour combiner {dropLabel} à {label}.{duplicateCopy}{swapCopy}{combineCopy}.", - "domDragDrop.announce.selectedTarget.default": "Ajoutez {label} au groupe {dropGroupLabel} à la position {position} dans le calque {dropLayerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour ajouter", + "domDragDrop.announce.selectedTarget.combine": "Combinaison de {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber} avec {label}. Appuyez sur la barre d’espace ou sur Entrée pour combiner.", + "domDragDrop.announce.selectedTarget.combineCompatible": "Combinaison de {label} en dans le groupe {groupLabel} à la position {position} dans le calque {layerNumber} avec {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Maintenez la touche Contrôle enfoncée et appuyez sur la barre d’espace ou sur Entrée pour combiner.", + "domDragDrop.announce.selectedTarget.combineIncompatible": "Conversion de {label} en {nextLabel} dans le groupe {groupLabel} à la position {position} dans le calque {layerNumber} et combinaison avec {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Maintenez la touche Contrôle enfoncée et appuyez sur la barre d’espace ou sur Entrée pour combiner.", + "domDragDrop.announce.selectedTarget.combineMain": "Vous faites glisser {label} à partir de {groupLabel} à la position {position} dans le calque {layerNumber} sur {dropLabel} à partir du groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Appuyer sur la barre d’espace ou sur Entrée pour combiner {dropLabel} avec {label}.{duplicateCopy}{swapCopy}{combineCopy}", + "domDragDrop.announce.selectedTarget.default": "Ajout de {label} dans le groupe {dropGroupLabel} à la position {position} dans le calque {dropLayerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour ajouter", "domDragDrop.announce.selectedTarget.defaultNoPosition": "Ajoutez {label} à {dropLabel}. Appuyer sur la barre d'espace ou sur Entrée pour ajouter", - "domDragDrop.announce.selectedTarget.duplicated": "Dupliquez {label} dans le groupe {dropGroupLabel} à la position {position} dans le calque {layerNumber}. Maintenir la touche Alt ou Option enfoncée et appuyer sur la barre d'espace ou sur Entrée pour dupliquer", - "domDragDrop.announce.selectedTarget.duplicatedInGroup": "Dupliquez {label} dans le groupe {dropGroupLabel} à la position {position} dans le calque {layerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour dupliquer", - "domDragDrop.announce.selectedTarget.duplicateIncompatible": "Convertissez la copie de {label} en {nextLabel} et ajoutez-la au groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}. Maintenir la touche Alt ou Option enfoncée et appuyer sur la barre d'espace ou sur Entrée pour dupliquer", - "domDragDrop.announce.selectedTarget.moveCompatible": "Déplacez {label} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour déplacer", - "domDragDrop.announce.selectedTarget.moveCompatibleMain": "Vous faites glisser {label} de {groupLabel} à la position {position} sur la position {dropPosition} dans le groupe {dropGroupLabel} dans le calque {dropLayerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour déplacer.{duplicateCopy}", - "domDragDrop.announce.selectedTarget.moveIncompatible": "Convertissez {label} en {nextLabel} et déplacez-le dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour déplacer", - "domDragDrop.announce.selectedTarget.moveIncompatibleMain": "Vous faites glisser {label} de {groupLabel} à la position {position} dans le calque {layerNumber} sur la position {dropPosition} dans le groupe {dropGroupLabel} dans le calque {dropLayerNumber}. Appuyez sur la barre d'espace ou sur Entrée pour convertir {label} en {nextLabel} et le déplacer.{duplicateCopy}", + "domDragDrop.announce.selectedTarget.duplicated": "Duplication de {label} dans le groupe {dropGroupLabel} à la position {position} dans le calque {layerNumber}. Maintenir la touche Alt ou Option enfoncée et appuyer sur la barre d'espace ou sur Entrée pour dupliquer", + "domDragDrop.announce.selectedTarget.duplicatedInGroup": "Duplication de {label} dans le groupe {dropGroupLabel} à la position {position} dans le calque {layerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour dupliquer", + "domDragDrop.announce.selectedTarget.duplicateIncompatible": "Conversion de la copie de {label} en {nextLabel} et ajout au groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}. Maintenir la touche Alt ou Option enfoncée et appuyer sur la barre d'espace ou sur Entrée pour dupliquer", + "domDragDrop.announce.selectedTarget.moveCompatible": "Déplacement de {label} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour déplacer", + "domDragDrop.announce.selectedTarget.moveCompatibleMain": "Vous faites glisser {label} de {groupLabel} à la position {position} vers la position {dropPosition} dans le groupe {dropGroupLabel} dans le calque {dropLayerNumber}. Appuyez sur la barre d'espace ou sur Entrée pour déplacer.{duplicateCopy}", + "domDragDrop.announce.selectedTarget.moveIncompatible": "Conversion de {label} en {nextLabel} et déplacement dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour déplacer", + "domDragDrop.announce.selectedTarget.moveIncompatibleMain": "Vous faites glisser {label} de {groupLabel} à la position {position} dans le calque {layerNumber} vers la position {dropPosition} dans le groupe {dropGroupLabel} dans le calque {dropLayerNumber}. Appuyez sur la barre d'espace ou sur Entrée pour convertir {label} en {nextLabel} et déplacer.{duplicateCopy}", "domDragDrop.announce.selectedTarget.reordered": "Réorganisez {label} dans le groupe {groupLabel} de la position {prevPosition} à la position {position}. Appuyer sur la barre d'espace ou sur Entrée pour réorganiser", "domDragDrop.announce.selectedTarget.reorderedBack": "{label} revenu à sa position initiale {prevPosition}", - "domDragDrop.announce.selectedTarget.replace": "Remplacez {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber} par {label}. Appuyez sur la barre d'espace ou sur Entrée pour remplacer.", - "domDragDrop.announce.selectedTarget.replaceDuplicateCompatible": "Dupliquez {label} et remplacez {dropLabel} dans {groupLabel} à la position {position} dans le calque {dropLayerNumber}. Maintenir la touche Alt ou Option enfoncée et appuyer sur la barre d'espace ou sur Entrée pour dupliquer et remplacer", - "domDragDrop.announce.selectedTarget.replaceDuplicateIncompatible": "Convertissez la copie de {label} en {nextLabel} et remplacez {dropLabel} dans le groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}. Maintenir la touche Alt ou Option enfoncée et appuyer sur la barre d'espace ou sur Entrée pour dupliquer et remplacer", - "domDragDrop.announce.selectedTarget.replaceIncompatible": "Convertissez {label} en {nextLabel} et remplacez {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour remplacer", - "domDragDrop.announce.selectedTarget.replaceIncompatibleMain": "Vous faites glisser {label} de {groupLabel} à la position {position} dans le calque {layerNumber} sur {dropLabel} à partir du groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Appuyez sur la barre d'espace ou sur Entrée pour convertir {label} en {nextLabel} et remplacer {dropLabel}.{duplicateCopy}{swapCopy}{combineCopy}", - "domDragDrop.announce.selectedTarget.replaceMain": "Vous faites glisser {label} de {groupLabel} à la position {position} dans le calque {layerNumber} sur {dropLabel} à partir du groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour remplacer {dropLabel} par {label}.{duplicateCopy}{swapCopy}{combineCopy}", - "domDragDrop.announce.selectedTarget.swapCompatible": "Permutez {label} dans le groupe {groupLabel} à la position {position} dans le calque {layerNumber} avec {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Maintenir la touche Maj enfoncée tout en appuyant sur la barre d'espace ou sur Entrée pour permuter", - "domDragDrop.announce.selectedTarget.swapIncompatible": "Convertissez {label} en {nextLabel} dans le groupe {groupLabel} à la position {position} dans le calque {layerNumber} permutez-le avec {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Maintenir la touche Maj enfoncée tout en appuyant sur la barre d'espace ou sur Entrée pour permuter", + "domDragDrop.announce.selectedTarget.replace": "Remplacement de {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber} par {label}. Appuyez sur la barre d'espace ou sur Entrée pour remplacer.", + "domDragDrop.announce.selectedTarget.replaceDuplicateCompatible": "Duplication de {label} et remplacement de {dropLabel} dans {groupLabel} à la position {position} dans le calque {dropLayerNumber}. Maintenir la touche Alt ou Option enfoncée et appuyer sur la barre d'espace ou sur Entrée pour dupliquer et remplacer", + "domDragDrop.announce.selectedTarget.replaceDuplicateIncompatible": "Conversion de la copie de {label} en {nextLabel} et remplacement de {dropLabel} dans le groupe {groupLabel} à la position {position} dans le calque {dropLayerNumber}. Maintenir la touche Alt ou Option enfoncée et appuyer sur la barre d'espace ou sur Entrée pour dupliquer et remplacer", + "domDragDrop.announce.selectedTarget.replaceIncompatible": "Conversion de {label} en {nextLabel} et remplacement de {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour remplacer", + "domDragDrop.announce.selectedTarget.replaceIncompatibleMain": "Vous faites glisser {label} à partir de {groupLabel} à la position {position} dans le calque {layerNumber} sur {dropLabel} à partir du groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Appuyer sur la barre d'espace ou sur Entrée pour convertir {label} en {nextLabel} et remplacer {dropLabel}.{duplicateCopy}{swapCopy}{combineCopy}", + "domDragDrop.announce.selectedTarget.replaceMain": "Vous faites glisser {label} à partir de {groupLabel} à la position {position} dans le calque {layerNumber} sur {dropLabel} à partir du groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Appuyez sur la barre d'espace ou sur Entrée pour remplacer {dropLabel} par {label}.{duplicateCopy}{swapCopy}{combineCopy}", + "domDragDrop.announce.selectedTarget.swapCompatible": "Permutation de {label} dans le groupe {groupLabel} à la position {position} dans le calque {layerNumber} et de {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Maintenir la touche Maj enfoncée tout en appuyant sur la barre d'espace ou sur Entrée pour permuter", + "domDragDrop.announce.selectedTarget.swapIncompatible": "Conversion de {label} en {nextLabel} dans le groupe {groupLabel} à la position {position} dans le calque {layerNumber} et permutation avec {dropLabel} dans le groupe {dropGroupLabel} à la position {dropPosition} dans le calque {dropLayerNumber}. Maintenir la touche Maj enfoncée tout en appuyant sur la barre d'espace ou sur Entrée pour permuter", "domDragDrop.announce.combine.short": " Maintenir la touche Contrôle enfoncée pour combiner", "domDragDrop.announce.duplicate.short": " Maintenez la touche Alt ou Option enfoncée pour dupliquer.", "domDragDrop.announce.selectedTarget.noSelected": "Aucune cible sélectionnée. Utiliser les touches fléchées pour sélectionner une cible", @@ -2425,13 +2647,17 @@ "domDragDrop.dropTargets.swap": "Permuter", "domDragDrop.keyboardInstructions": "Appuyez sur la barre d'espace ou sur Entrée pour commencer à faire glisser. Lors du glissement, utilisez les touches fléchées gauche/droite pour vous déplacer entre les cibles de dépôt. Appuyez à nouveau sur la barre d'espace ou sur Entrée pour terminer.", "domDragDrop.keyboardInstructionsReorder": "Appuyez sur la barre d'espace ou sur Entrée pour commencer à faire glisser. Lors du glissement, utilisez les touches fléchées haut/bas pour réorganiser les éléments dans le groupe et les touches gauche/droite pour choisir les cibles de dépôt à l'extérieur du groupe. Appuyez à nouveau sur la barre d'espace ou sur Entrée pour terminer.", - "embeddableApi.addPanel.savedObjectAddedToContainerSuccessMessageTitle": "{savedObjectName} a été ajouté", - "embeddableApi.attributeService.saveToLibraryError": "Une erreur s'est produite lors de l'enregistrement. Erreur : {errorMessage}", + "embeddableApi.addPanel.savedObjectAddedToContainerSuccessMessageTitle": "{savedObjectName} a été ajouté.", + "embeddableApi.attributeService.saveToLibraryError": "Une erreur s'est produite lors de l'enregistrement. Erreur : {errorMessage}.", "embeddableApi.errors.embeddableFactoryNotFound": "Impossible de charger {type}. Veuillez effectuer une mise à niveau vers la distribution par défaut d'Elasticsearch et de Kibana avec la licence appropriée.", + "embeddableApi.reactEmbeddable.factoryAlreadyExistsError": "Une usine incorporable pour le type {key} est déjà enregistrée.", + "embeddableApi.reactEmbeddable.factoryNotFoundError": "Aucune usine incorporable n'a été trouvée pour le type : {key}", + "embeddableApi.addPanel.managedPanelTooltip": "Ce panneau est géré par Elastic. Il peut être ajouté, mais il sera dissocié de la bibliothèque.", "embeddableApi.addPanel.noMatchingObjectsMessage": "Aucun objet correspondant trouvé.", "embeddableApi.addPanel.Title": "Ajouter depuis la bibliothèque", "embeddableApi.cellValueTrigger.description": "Les actions apparaissent dans les options de valeur de cellule dans la visualisation", "embeddableApi.cellValueTrigger.title": "Valeur de cellule", + "embeddableApi.compatibility.defaultTypeDisplayName": "graphique", "embeddableApi.contextMenuTrigger.description": "Une nouvelle action sera ajoutée au menu contextuel du panneau", "embeddableApi.contextMenuTrigger.title": "Menu contextuel", "embeddableApi.errors.paneldoesNotExist": "Panneau introuvable", @@ -2457,8 +2683,8 @@ "esQuery.kql.errors.literalText": "littéral", "esQuery.kql.errors.valueText": "valeur", "esQuery.kql.errors.whitespaceText": "espace", - "esUi.forms.fieldValidation.indexNameInvalidCharactersError": "Le nom de l'index contient {characterListLength, plural, one {le caractère non valide suivant} many {les caractères} other {les caractères non valides suivants}} : {characterList}.", - "esUi.forms.fieldValidation.indexPatternInvalidCharactersError": "Le modèle d'indexation contient {characterListLength, plural, one {le caractère non valide suivant} many {les caractères} other {les caractères}} {characterList}.", + "esUi.forms.fieldValidation.indexNameInvalidCharactersError": "Le nom de l'index contient {characterListLength, plural, one {le caractère non valide} other {les caractères non valides}} {characterList}.", + "esUi.forms.fieldValidation.indexPatternInvalidCharactersError": "Le modèle d'indexation contient {characterListLength, plural, one {le caractère non valide} other {les caractères non valides}} {characterList}.", "esUi.cronEditor.cronDaily.fieldHour.textAtLabel": "À", "esUi.cronEditor.cronDaily.fieldTimeLabel": "Heure", "esUi.cronEditor.cronDaily.hourSelectLabel": "Heure", @@ -2485,26 +2711,26 @@ "esUi.cronEditor.cronYearly.fieldTimeLabel": "Heure", "esUi.cronEditor.cronYearly.hourSelectLabel": "Heure", "esUi.cronEditor.cronYearly.minuteSelectLabel": "Minute", - "esUi.cronEditor.day.friday": "vendredi", - "esUi.cronEditor.day.monday": "lundi", - "esUi.cronEditor.day.saturday": "samedi", - "esUi.cronEditor.day.sunday": "dimanche", - "esUi.cronEditor.day.thursday": "jeudi", - "esUi.cronEditor.day.tuesday": "mardi", - "esUi.cronEditor.day.wednesday": "mercredi", + "esUi.cronEditor.day.friday": "Vendredi", + "esUi.cronEditor.day.monday": "Lundi", + "esUi.cronEditor.day.saturday": "Samedi", + "esUi.cronEditor.day.sunday": "Dimanche", + "esUi.cronEditor.day.thursday": "Jeudi", + "esUi.cronEditor.day.tuesday": "Mardi", + "esUi.cronEditor.day.wednesday": "Mercredi", "esUi.cronEditor.fieldFrequencyLabel": "Fréquence", - "esUi.cronEditor.month.april": "avril", - "esUi.cronEditor.month.august": "août", - "esUi.cronEditor.month.december": "décembre", - "esUi.cronEditor.month.february": "février", - "esUi.cronEditor.month.january": "janvier", - "esUi.cronEditor.month.july": "juillet", - "esUi.cronEditor.month.june": "juin", - "esUi.cronEditor.month.march": "mars", - "esUi.cronEditor.month.may": "mai", - "esUi.cronEditor.month.november": "novembre", - "esUi.cronEditor.month.october": "octobre", - "esUi.cronEditor.month.september": "septembre", + "esUi.cronEditor.month.april": "Avril", + "esUi.cronEditor.month.august": "Août", + "esUi.cronEditor.month.december": "Décembre", + "esUi.cronEditor.month.february": "Février", + "esUi.cronEditor.month.january": "Janvier", + "esUi.cronEditor.month.july": "Juillet", + "esUi.cronEditor.month.june": "Juin", + "esUi.cronEditor.month.march": "Mars", + "esUi.cronEditor.month.may": "Mai", + "esUi.cronEditor.month.november": "Novembre", + "esUi.cronEditor.month.october": "Octobre", + "esUi.cronEditor.month.september": "Septembre", "esUi.cronEditor.textEveryLabel": "Chaque", "esUi.forms.comboBoxField.placeHolderText": "Saisir, puis appuyer sur \"ENTRÉE\"", "esUi.forms.fieldValidation.indexNameSpacesError": "Le nom de l'index ne peut pas contenir d'espaces.", @@ -2518,7 +2744,7 @@ "esUi.viewApiRequest.closeButtonLabel": "Fermer", "esUi.viewApiRequest.copyToClipboardButton": "Copier dans le presse-papiers", "esUi.viewApiRequest.openInConsoleButton": "Ouvrir dans la console", - "eventAnnotationListing.tableList.dataView.missing": "{errorIcon} N'existe plus", + "eventAnnotationListing.tableList.dataView.missing": "{errorIcon} n'existe plus", "eventAnnotationListing.annotationList.add": "Ajouter une annotation", "eventAnnotationListing.edit.back": "Retour", "eventAnnotationListing.edit.cancel": "Annuler", @@ -2549,11 +2775,12 @@ "eventAnnotationListing.timeField": "Champ temporel", "exceptionList-components.empty.viewer.state.empty.viewer_button": "Créer une exception {exceptionType}", "exceptionList-components.exception_list_header_edit_modal_name": "Modifier {listName}", - "exceptionList-components.exception_list_header_linked_rules": "Associé à {noOfRules} règles", - "exceptionList-components.exceptions.card.exceptionItem.affectedRules": "Affecte {numRules} {numRules, plural, =1 {règle} one {règles} many {règles} other {règles}}", + "exceptionList-components.exception_list_header_linked_rules": "Lié à {noOfRules} règles", + "exceptionList-components.exceptions.card.exceptionItem.affectedRules": "Affecte {numRules} {numRules, plural, =1 {règle} other {règles}}", "exceptionList-components.exceptions.exceptionItem.card.deleteItemButton": "Supprimer l'exception {listType}", "exceptionList-components.exceptions.exceptionItem.card.editItemButton": "Modifier l'exception {listType}", - "exceptionList-components.exceptions.exceptionItem.card.showCommentsLabel": "Afficher {comments, plural, =1 {commentaire} one {commentaires} many {commentaires} other {les commentaires}} ({comments})", + "exceptionList-components.exceptions.exceptionItem.card.showCommentsLabel": "Afficher {comments, plural, =1 {commentaire} other {commentaires}} ({comments})", + "exceptionList-components.wildcardWithWrongOperatorCallout.body": "L'utilisation de '*' ou de '?' dans la valeur avec l'opérateur 'IS' peut rendre l'entrée inefficace. Remplacer {operator} par '{matches}' pour que les caractères génériques s'exécutent correctement.", "exceptionList-components.empty.viewer.state.empty_search.body": "Essayez de modifier votre recherche", "exceptionList-components.empty.viewer.state.empty_search.search.title": "Aucun résultat ne correspond à vos critères de recherche.", "exceptionList-components.empty.viewer.state.empty.body": "Aucune exception ne figure dans votre liste. Créez votre première exception.", @@ -2583,17 +2810,20 @@ "exceptionList-components.exceptions.exceptionItem.card.conditions.matchAnyOperator": "est l'une des options suivantes", "exceptionList-components.exceptions.exceptionItem.card.conditions.matchAnyOperator.not": "n'est pas l'une des options suivantes", "exceptionList-components.exceptions.exceptionItem.card.conditions.matchOperator": "IS", - "exceptionList-components.exceptions.exceptionItem.card.conditions.matchOperator.not": "N'EST PAS", + "exceptionList-components.exceptions.exceptionItem.card.conditions.matchOperator.not": "IS NOT", "exceptionList-components.exceptions.exceptionItem.card.conditions.nestedOperator": "a", "exceptionList-components.exceptions.exceptionItem.card.conditions.os": "Système d'exploitation", - "exceptionList-components.exceptions.exceptionItem.card.conditions.wildcardDoesNotMatchOperator": "NE CORRESPOND PAS À", - "exceptionList-components.exceptions.exceptionItem.card.conditions.wildcardMatchesOperator": "CORRESPONDANCES", + "exceptionList-components.exceptions.exceptionItem.card.conditions.wildcardDoesNotMatchOperator": "DOES NOT MATCH", + "exceptionList-components.exceptions.exceptionItem.card.conditions.wildcardMatchesOperator": "MATCHES", "exceptionList-components.exceptions.exceptionItem.card.conditions.windows": "Windows", "exceptionList-components.exceptions.exceptionItem.card.createdLabel": "Créé", "exceptionList-components.exceptions.exceptionItem.card.expiredLabel": "Expiré à", "exceptionList-components.exceptions.exceptionItem.card.expiresLabel": "Expire à", "exceptionList-components.exceptions.exceptionItem.card.metaDetailsBy": "par", "exceptionList-components.exceptions.exceptionItem.card.updatedLabel": "Mis à jour", + "exceptionList-components.wildcardWithWrongOperatorCallout.changeTheOperator": "Changer d'opérateur", + "exceptionList-components.wildcardWithWrongOperatorCallout.matches": "correspond à", + "exceptionList-components.wildcardWithWrongOperatorCallout.title": "Veuillez examiner vos entrées", "expressionError.renderer.debug.helpDescription": "Générer un rendu de sortie de débogage au format {JSON}", "expressionError.errorComponent.description": "Échec de l'expression avec le message :", "expressionError.errorComponent.title": "Oups ! Échec de l'expression", @@ -2646,9 +2876,9 @@ "expressionHeatmap.function.args.legendSize.help": "Spécifie la taille de la légende.", "expressionHeatmap.function.args.splitColumnAccessorHelpText": "L'identifiant de la colonne fractionnée ou la dimension correspondante", "expressionHeatmap.function.args.splitRowAccessorHelpText": "L'identifiant de la ligne fractionnée ou la dimension correspondante", - "expressionHeatmap.function.args.valueAccessorHelpText": "l'identifiant de la colonne de valeurs ou la dimension correspondante", - "expressionHeatmap.function.args.xAccessorHelpText": "l'identifiant de la colonne de l'axe X ou la dimension correspondante", - "expressionHeatmap.function.args.yAccessorHelpText": "l'identifiant de la colonne de l'axe Y ou la dimension correspondante", + "expressionHeatmap.function.args.valueAccessorHelpText": "L'identifiant de la colonne de valeurs ou la dimension correspondante", + "expressionHeatmap.function.args.xAccessorHelpText": "L'identifiant de la colonne de l'axe X ou la dimension correspondante", + "expressionHeatmap.function.args.yAccessorHelpText": "L'identifiant de la colonne de l'axe Y ou la dimension correspondante", "expressionHeatmap.function.dimension.metric": "Indicateur", "expressionHeatmap.function.dimension.splitColumn": "Diviser par colonne", "expressionHeatmap.function.dimension.splitRow": "Diviser par ligne", @@ -2662,15 +2892,15 @@ "expressionHeatmap.functions.args.ariaLabelHelpText": "Spécifie l'attribut aria-label de la carte thermique.", "expressionHeatmap.tooltipActions.emptyFilterSelection": "Sélectionner au moins une série à filtrer", "expressionHeatmap.visualizationName": "Carte thermique", - "expressionImage.functions.image.args.dataurlHelpText": "{URL} {https} ou {URL} de données {BASE64} d'une image.", - "expressionImage.functions.image.args.modeHelpText": "{contain} affiche l'image entière, mise à l'échelle. {cover} remplit le conteneur avec l'image, en rognant les côtés ou le bas si besoin. {stretch} redimensionne la hauteur et la largeur de l'image pour correspondre à 100 % du conteneur.", - "expressionImage.functions.image.invalidImageModeErrorMessage": "\"mode\" doit être \"{contain}\", \"{cover}\" ou \"{stretch}\"", + "expressionImage.functions.image.args.dataurlHelpText": "L'{URL} {https} ou l'{URL} de données {BASE64} d'une image.", + "expressionImage.functions.image.args.modeHelpText": "{contain} affiche l'image entière, mise à l’échelle. {cover} remplit le conteneur avec l'image, en rognant les côtés ou le bas si besoin. {stretch} redimensionne la hauteur et la largeur de l'image pour correspondre à 100 % du conteneur.", + "expressionImage.functions.image.invalidImageModeErrorMessage": "\"mode\" doit être défini sur \"{contain}\", \"{cover}\" ou \"{stretch}\".", "expressionImage.functions.imageHelpText": "Affiche une image. Spécifiez une ressource d'image sous la forme d'une {URL} de données {BASE64}, ou saisissez une sous-expression.", "expressionImage.renderer.image.displayName": "Image", "expressionImage.renderer.image.helpDescription": "Présenter une image", - "expressionMetric.functions.metric.args.labelFontHelpText": "Propriétés de la police {CSS} de l'étiquette. Par exemple, {FONT_FAMILY} ou {FONT_WEIGHT}.", - "expressionMetric.functions.metric.args.metricFontHelpText": "Propriétés de la police {CSS} de l'indicateur. Par exemple, {FONT_FAMILY} ou {FONT_WEIGHT}.", - "expressionMetric.functions.metric.args.metricFormatHelpText": "Chaîne de format {NUMERALJS}. Par exemple, {example1} ou {example2}.", + "expressionMetric.functions.metric.args.labelFontHelpText": "Les propriétés de la police {CSS} pour l'étiquette. Par exemple, {FONT_FAMILY} ou {FONT_WEIGHT}.", + "expressionMetric.functions.metric.args.metricFontHelpText": "Les propriétés de la police {CSS} pour l'indicateur. Par exemple, {FONT_FAMILY} ou {FONT_WEIGHT}.", + "expressionMetric.functions.metric.args.metricFormatHelpText": "Une chaîne de format {NUMERALJS}. Par exemple, {example1} ou {example2}.", "expressionMetric.functions.metric.args.labelHelpText": "Le texte décrivant l'indicateur.", "expressionMetric.functions.metricHelpText": "Affiche un nombre sur une étiquette.", "expressionMetric.renderer.metric.displayName": "Indicateur", @@ -2691,7 +2921,7 @@ "expressionMetricVis.function.minTiles.help": "Spécifie le nombre minimum de tuiles dans la grille d’indicateur, quelles que soient les données d'entrée.", "expressionMetricVis.function.numCols.help": "Spécifie le nombre maximum de colonnes dans la grille d’indicateur.", "expressionMetricVis.function.palette.help": "Fournit des couleurs pour les valeurs, basées sur les limites.", - "expressionMetricVis.function.progressDirection.help": "La direction dans laquelle la barre de progression doit croître.", + "expressionMetricVis.function.progressDirection.help": "La direction dans laquelle la barre de progression doit croître. Doit être fourni pour générer une barre de progression.", "expressionMetricVis.function.secondaryMetric.help": "L’indicateur secondaire (affiché au-dessus de l’indicateur principal).", "expressionMetricVis.function.secondaryPrefix.help": "Texte facultatif à afficher avant secondaryMetric.", "expressionMetricVis.function.subtitle.help": "Le sous-titre pour un indicateur unique. Remplacé si breakdownBy est spécifié.", @@ -2752,15 +2982,15 @@ "expressionPartitionVis.tooltipActions.emptyFilterSelection": "Sélectionner au moins une série à filtrer", "expressionPartitionVis.waffle.function.args.bucketHelpText": "Configuration des dimensions de compartiment", "expressionPartitionVis.waffle.function.args.showValuesInLegendHelpText": "Afficher les valeurs dans la légende", - "expressionRepeatImage.error.repeatImage.missingMaxArgument": "{maxArgument} doit être défini si un {emptyImageArgument} est fourni", - "expressionRepeatImage.functions.repeatImage.args.emptyImageHelpText": "Comble la différence entre les paramètres {CONTEXT} et {maxArg}pour l'élément avec cette image. Spécifiez une ressource d'image sous la forme d'une {URL} de données {BASE64}, ou saisissez une sous-expression.", + "expressionRepeatImage.error.repeatImage.missingMaxArgument": "{maxArgument} doit être défini si un {emptyImageArgument} est fourni.", + "expressionRepeatImage.functions.repeatImage.args.emptyImageHelpText": "Comble la différence entre les paramètres {CONTEXT} et {maxArg} pour l'élément avec cette image. Spécifiez une ressource d'image sous la forme d'une {URL} de données {BASE64}, ou saisissez une sous-expression.", "expressionRepeatImage.functions.repeatImage.args.imageHelpText": "L'image à répéter. Spécifiez une ressource d'image sous la forme d'une {URL} de données {BASE64}, ou saisissez une sous-expression.", "expressionRepeatImage.functions.repeatImage.args.maxHelpText": "Le nombre maximal de fois que l'image peut être répétée.", "expressionRepeatImage.functions.repeatImage.args.sizeHelpText": "La hauteur ou largeur maximale de l'image, en pixels. Lorsque l'image est plus haute que large, cette fonction limite la hauteur.", "expressionRepeatImage.functions.repeatImageHelpText": "Configure un élément de répétition d’image.", "expressionRepeatImage.renderer.repeatImage.displayName": "Répétition d’image", "expressionRepeatImage.renderer.repeatImage.helpDescription": "Présenter une répétition d’image basique", - "expressionRevealImage.functions.revealImage.args.emptyImageHelpText": "Une image d'arrière-plan facultative à révéler. Spécifiez une ressource d'image sous la forme d'une {URL} de données \"{BASE64}\", ou saisissez une sous-expression.", + "expressionRevealImage.functions.revealImage.args.emptyImageHelpText": "Une image d'arrière-plan facultative à révéler. Spécifiez une ressource d'image sous la forme d’une {URL} de données `{BASE64}`, ou saisissez une sous-expression.", "expressionRevealImage.functions.revealImage.args.imageHelpText": "L'image à révéler. Spécifiez une ressource d'image sous la forme d'une {URL} de données {BASE64}, ou saisissez une sous-expression.", "expressionRevealImage.functions.revealImage.args.originHelpText": "La position à laquelle démarrer le remplissage de l'image. Par exemple, {list} ou {end}.", "expressionRevealImage.functions.revealImage.invalidImageUrl": "URL d'image non valide : \"{imageUrl}\".", @@ -2768,20 +2998,20 @@ "expressionRevealImage.functions.revealImageHelpText": "Configure un élément de révélation d'image.", "expressionRevealImage.renderer.revealImage.displayName": "Révélation d'image", "expressionRevealImage.renderer.revealImage.helpDescription": "Révèle un pourcentage d'une image pour concevoir un graphique à jauge personnalisé.", - "expressions.execution.functionDisabled": "La fonction {fnName} est désactivée.", - "expressions.execution.functionNotFound": "La fonction {fnName} est introuvable.", - "expressions.functions.createTableHelpText": "Crée une table de données avec une liste de colonnes, et une ou plusieurs lignes vides. Pour renseigner les lignes, utilisez {mapColumnFn} ou {mathColumnFn}.", - "expressions.functions.font.args.familyHelpText": "Une chaîne de police Web {css} acceptable", + "expressions.execution.functionDisabled": "Fonction {fnName} désactivée.", + "expressions.execution.functionNotFound": "Fonction {fnName} introuvable.", + "expressions.functions.createTableHelpText": "Crée une table de données avec une liste de colonnes, et une ou plusieurs lignes vides. Pour générer les lignes, utilisez {mapColumnFn} ou {mathColumnFn}.", + "expressions.functions.font.args.familyHelpText": "Une chaîne de police Internet {css} acceptable", "expressions.functions.font.args.weightHelpText": "L’épaisseur de la police. Par exemple, {list} ou {end}.", - "expressions.functions.mapColumn.args.expressionHelpText": "Une expression qui est exécutée sur chaque ligne, fournie avec un contexte {DATATABLE} de ligne unique et renvoyant la valeur de la cellule.", - "expressions.functions.mapColumnHelpText": "Ajoute une colonne calculée comme le résultat d'autres colonnes. Des modifications ne sont apportées que si des arguments sont fournis. Voir aussi {alterColumnFn} et {staticColumnFn}.", - "expressions.functions.math.args.expressionHelpText": "Expression {TINYMATH} évaluée. Voir {TINYMATH_URL}.", - "expressions.functions.math.args.onErrorHelpText": "Si l'évaluation {TINYMATH} échoue ou renvoie NaN, la valeur de retour est spécifiée par onError. Lors de la ''génération'', une exception est levée, terminant l'exécution de l'expression (par défaut).", - "expressions.functions.math.tooManyResultsErrorMessage": "Les expressions doivent retourner un nombre unique. Essayez d'englober votre expression dans {mean} ou {sum}", + "expressions.functions.mapColumn.args.expressionHelpText": "Une expression qui est exécutée sur chaque ligne, fournie avec un contexte {DATATABLE} de ligne unique et retournant la valeur de la cellule.", + "expressions.functions.mapColumnHelpText": "Ajoute une colonne calculée comme le résultat d'autres colonnes. Des modifications ne sont apportées que si des arguments sont fournis. Voir également {alterColumnFn} et {staticColumnFn}.", + "expressions.functions.math.args.expressionHelpText": "Une expression {TINYMATH} évaluée. Voir {TINYMATH_URL}.", + "expressions.functions.math.args.onErrorHelpText": "Si l’évaluation {TINYMATH} échoue ou renvoie NaN, la valeur de retour est spécifiée par onError. Avec `'throw'`, une exception est levée, terminant l'exécution de l'expression (par défaut).", + "expressions.functions.math.tooManyResultsErrorMessage": "Les expressions doivent renvoyer un nombre unique. Essayez d'englober votre expression dans {mean} ou {sum}.", "expressions.functions.mathColumn.arrayValueError": "Impossible de réaliser le calcul sur les valeurs du tableau à {name}", - "expressions.functions.mathColumnHelpText": "Ajoute une colonne en évaluant {tinymath} sur chaque ligne. Cette fonction est optimisée pour les mathématiques et offre de meilleures performances par rapport à l'utilisation d'une expression mathématique dans {mapColumnFn}.", - "expressions.functions.mathHelpText": "Interprète une expression mathématique {TINYMATH} à l'aide d'un {TYPE_NUMBER} ou d'une {DATATABLE} en tant que {CONTEXT}. Les colonnes {DATATABLE} peuvent être recherchées d'après leur nom. Si {CONTEXT} est un nombre, il est disponible en tant que {value}.", - "expressions.functions.seriesCalculations.columnConflictMessage": "L'ID de colonne de sortie (outputColumnId) {columnId} existe déjà. Veuillez choisir un autre ID de colonne.", + "expressions.functions.mathColumnHelpText": "Ajoute une colonne en évaluant {tinymath} sur chaque ligne. Cette fonction est optimisée pour les mathématiques et livre de meilleures performances par rapport à l'utilisation d'une expression mathématique dans {mapColumnFn}.", + "expressions.functions.mathHelpText": "Interprète une expression mathématique {TINYMATH} à l'aide d'un {TYPE_NUMBER} ou d'une {DATATABLE} en tant que {CONTEXT}. Les colonnes {DATATABLE} peuvent être recherchées d’après leur nom. Si {CONTEXT} est un nombre, il est disponible en tant que {value}.", + "expressions.functions.seriesCalculations.columnConflictMessage": "L'ID de colonne de sortie {columnId} existe déjà. Veuillez choisir un autre ID de colonne.", "expressions.functions.uiSetting.error.parameter": "Paramètre \"{parameter}\" non valide.", "expressions.types.number.fromStringConversionErrorMessage": "Impossible de cataloguer la chaîne \"{string}\" en nombre", "expressions.defaultErrorRenderer.errorTitle": "Erreur dans la visualisation", @@ -2844,11 +3074,13 @@ "expressions.functions.varset.help": "Met à jour le contexte général de Kibana.", "expressions.functions.varset.name.help": "Spécifiez le nom de la variable.", "expressions.functions.varset.val.help": "Spécifiez la valeur de la variable. Sinon, le contexte d'entrée est utilisé.", - "expressionShape.functions.progress.args.fontHelpText": "Propriétés de la police {CSS} de l'étiquette. Par exemple, {FONT_FAMILY} ou {FONT_WEIGHT}.", + "expressionShape.functions.progress.args.fontHelpText": "Les propriétés de la police {CSS} pour l'étiquette. Par exemple, {FONT_FAMILY} ou {FONT_WEIGHT}.", "expressionShape.functions.progress.args.labelHelpText": "Pour afficher ou masquer l'étiquette, utilisez {BOOLEAN_TRUE} ou {BOOLEAN_FALSE}. Vous pouvez également spécifier une chaîne à afficher en tant qu'étiquette.", "expressionShape.functions.progress.args.shapeHelpText": "Sélectionnez {list} ou {end}.", + "expressionShape.functions.progress.invalidMaxValueErrorMessage": "Valeur {arg} non valide : \"{max, number}\" ; \"{arg}\" doit être supérieur à 0.", + "expressionShape.functions.progress.invalidValueErrorMessage": "Valeur non valide : \"{value, number}\". La valeur doit être comprise entre 0 et {max, number}.", "expressionShape.functions.shape.args.borderHelpText": "Une couleur {SVG} pour la bordure de la forme.", - "expressionShape.functions.shape.args.fillHelpText": "Une couleur {SVG} pour le remplissage de la forme.", + "expressionShape.functions.shape.args.fillHelpText": "Une couleur {SVG} de remplissage de la forme.", "expressionShape.functions.progress.args.barColorHelpText": "La couleur de la barre d'arrière-plan.", "expressionShape.functions.progress.args.barWeightHelpText": "L'épaisseur de la barre d'arrière-plan.", "expressionShape.functions.progress.args.maxHelpText": "La valeur maximale de l'élément de progression.", @@ -2867,7 +3099,7 @@ "expressionXY.annotations.skippedCount": "+{value} de plus…", "expressionXY.legend.filterOptionsLegend": "{legendDataLabel}, options de filtre", "expressionXY.tooltipActions.filterForXSeries": "Filtrer sur {value}", - "expressionXY.tooltipActions.filterValues": "Filtrer {seriesNumber} séries sélectionnées", + "expressionXY.tooltipActions.filterValues": "Filtrer l{seriesNumber} séries sélectionnées", "expressionXY.annotation.label": "Étiquette", "expressionXY.annotation.time": "Heure", "expressionXY.annotationLayer.annotations.help": "Annotations", @@ -2952,27 +3184,28 @@ "expressionXY.referenceLineLayer.decorationConfig.help": "Décoration supplémentaire de la ligne de référence", "expressionXY.referenceLineLayer.help": "Configurer une ligne de référence dans le graphique xy", "expressionXY.reusable.function.axisExtentConfig.errors.emptyUpperBound": "La limite supérieure doit être supérieure à la limite inférieure, si le mode personnalisé est activé.", - "expressionXY.reusable.function.dataLayer.errors.markSizeAccessorForNonLineOrAreaChartsError": "Impossible d'utiliser \"markSizeAccessor\". Les points sont appliqués uniquement pour les graphiques linéaires ou les graphiques en aires", - "expressionXY.reusable.function.legendConfig.errors.alignmentUsageWithFalsyIsInsideError": "Les arguments \"horizontalAlignment\" et \"verticalAlignment\" ne sont pas appliqués si \"isInside = false\". Veuillez utiliser l'argument \"position\" à la place.", - "expressionXY.reusable.function.legendConfig.errors.floatingColumnsWithFalsyIsInsideError": "Les arguments \"floatingColumns\" ne sont pas appliqués si \"isInside = false\".", - "expressionXY.reusable.function.legendConfig.errors.legendSizeWithFalsyIsInsideError": "L'argument \"legendSize\" n'est pas appliqué si \"isInside = false\".", - "expressionXY.reusable.function.legendConfig.errors.positionUsageWithIsInsideError": "L'argument \"position\" n'est pas appliqué si \"isInside = true\". Veuillez utiliser les arguments \"horizontalAlignment\" et \"verticalAlignment\" à la place.", + "expressionXY.reusable.function.dataLayer.errors.markSizeAccessorForNonLineOrAreaChartsError": "Impossible d'utiliser `markSizeAccessor`. Les points sont appliqués uniquement pour les graphiques linéaires ou les graphiques en aires", + "expressionXY.reusable.function.legendConfig.errors.alignmentUsageWithFalsyIsInsideError": "Les arguments `horizontalAlignment` et `verticalAlignment` ne sont pas appliqués si `isInside = false`. Veuillez utiliser l'argument `position` à la place.", + "expressionXY.reusable.function.legendConfig.errors.floatingColumnsWithFalsyIsInsideError": "Les arguments `floatingColumns` ne sont pas appliqués si `isInside = false`.", + "expressionXY.reusable.function.legendConfig.errors.legendSizeWithFalsyIsInsideError": "L'argument `legendSize` n'est pas appliqué si `isInside = false`.", + "expressionXY.reusable.function.legendConfig.errors.positionUsageWithIsInsideError": "L'argument `position` n'est pas appliqué si `isInside = true`. Veuillez utiliser les arguments `horizontalAlignment` et `verticalAlignment` à la place.", "expressionXY.reusable.function.xyVis.errors.axisIsNotAssignedError": "L'axe avec l'ID : \"{axisId}\" n'est assigné à aucun accesseur. Veuillez attribuer un axe en utilisant la construction suivante : `decorations=\\{dataDecorationConfig forAccessor=\"your-accessor\" axisId=\"{axisId}\"\\}`", "expressionXY.reusable.function.xyVis.errors.dataBoundsForNotLineChartError": "Seuls les graphiques linéaires peuvent être adaptés aux limites de données", "expressionXY.reusable.function.xyVis.errors.extendBoundsAreInvalidError": "Pour les modes de graphiques en aires et à barres, et le mode d'extension personnalisée, la limite inférieure doit être inférieure ou supérieure à 0, et la limite supérieure doit être supérieure ou égale à 0", "expressionXY.reusable.function.xyVis.errors.extentFullModeIsInvalid": "Pour la portée de l'axe x, le mode complet n'est pas pris en charge.", "expressionXY.reusable.function.xyVis.errors.extentModeNotSupportedError": "La portée de l'axe x n'est prise en charge que pour les histogrammes numériques.", + "expressionXY.reusable.function.xyVis.errors.invalidMinBarHeightError": "La hauteur minimale de la barre de progression doit être un chiffre entier positif, représentant la hauteur en pixel de la barre.", "expressionXY.reusable.function.xyVis.errors.isInvalidIntervalError": "L'intervalle de l'axe X fourni n'est pas valide. L'intervalle doit inclure une quantité et des noms d'unité. Exemples : 1d, 24h, 1w.", "expressionXY.reusable.function.xyVis.errors.linesVisibilityForNonLineChartError": "La visibilité des lignes ne peut être contrôlée que sur les graphiques linéaires.", - "expressionXY.reusable.function.xyVis.errors.lineWidthForNonLineOrAreaChartError": "\"lineWidth\" peut être appliqué uniquement aux graphiques linéaires ou aux graphiques en aires", + "expressionXY.reusable.function.xyVis.errors.lineWidthForNonLineOrAreaChartError": "`lineWidth` peut être appliqué uniquement aux graphiques linéaires ou aux graphiques en aires", "expressionXY.reusable.function.xyVis.errors.markSizeLimitsError": "Le rapport de taille de marque doit être supérieur ou égal à 1 et inférieur ou égal à 100", - "expressionXY.reusable.function.xyVis.errors.markSizeRatioWithoutAccessor": "Le rapport de taille de marque peut être appliqué uniquement avec \"markSizeAccessor\"", - "expressionXY.reusable.function.xyVis.errors.minTimeBarIntervalNotForTimeBarChartError": "L'argument \"minTimeBarInterval\" s'applique uniquement aux graphiques temporels à barres.", - "expressionXY.reusable.function.xyVis.errors.notUsedFillOpacityError": "L'argument \"fillOpacity\" s'applique uniquement aux graphiques en aires.", - "expressionXY.reusable.function.xyVis.errors.pointsRadiusForNonLineOrAreaChartError": "\"pointsRadius\" peut être appliqué uniquement aux graphiques linéaires ou aux graphiques en aires", - "expressionXY.reusable.function.xyVis.errors.showPointsForNonLineOrAreaChartError": "\"showPoints\" peut être appliqué uniquement aux graphiques linéaires ou aux graphiques en aires", + "expressionXY.reusable.function.xyVis.errors.markSizeRatioWithoutAccessor": "Le rapport de taille de marque peut être appliqué uniquement avec `markSizeAccessor`", + "expressionXY.reusable.function.xyVis.errors.minTimeBarIntervalNotForTimeBarChartError": "L'argument `minTimeBarInterval` s'applique uniquement aux graphiques temporels à barres.", + "expressionXY.reusable.function.xyVis.errors.notUsedFillOpacityError": "L'argument `fillOpacity` s'applique uniquement aux graphiques en aires.", + "expressionXY.reusable.function.xyVis.errors.pointsRadiusForNonLineOrAreaChartError": "`pointsRadius` peut être appliqué uniquement aux graphiques linéaires ou aux graphiques en aires", + "expressionXY.reusable.function.xyVis.errors.showPointsForNonLineOrAreaChartError": "`showPoints` peut être appliqué uniquement aux graphiques linéaires ou aux graphiques en aires", "expressionXY.reusable.function.xyVis.errors.timeMarkerForNotTimeChartsError": "Seuls les graphiques temporels peuvent avoir un repère de temps actuel", - "expressionXY.reusable.function.xyVis.errors.valueLabelsForNotBarChartsError": "L'argument \"valueLabels\" s'applique uniquement aux graphiques à barres.", + "expressionXY.reusable.function.xyVis.errors.valueLabelsForNotBarChartsError": "L'argument `valueLabels` s'applique uniquement aux graphiques à barres.", "expressionXY.tooltipActions.emptyFilterSelection": "Sélectionner au moins une série à filtrer", "expressionXY.tooltipActions.filterByTime": "Filtrer temporellement", "expressionXY.xAxisConfigFn.help": "Configurer la config de l'axe x du graphique xy", @@ -3011,6 +3244,7 @@ "expressionXY.xyVis.logDatatable.splitRow": "Diviser les lignes par", "expressionXY.xyVis.logDatatable.x": "Axe horizontal", "expressionXY.xyVis.markSizeRatio.help": "Spécifie le rapport des points pour les graphiques linéaires et les graphiques en aires", + "expressionXY.xyVis.minBarHeight.help": "Spécifie la hauteur minimale des barres en pixels pour le graphique à barres", "expressionXY.xyVis.orderBucketsBySum.help": "Classer les groupes par somme", "expressionXY.xyVis.referenceLines.help": "Ligne de référence", "expressionXY.xyVis.renderer.help": "Outil de rendu de graphique X/Y", @@ -3025,11 +3259,11 @@ "expressionXY.yAxisConfigFn.help": "Configurer la config de l'axe y du graphique xy", "fieldFormats.advancedSettings.format.bytesFormatText": "{numeralFormatLink} par défaut pour le format \"octets\"", "fieldFormats.advancedSettings.format.currencyFormatText": "{numeralFormatLink} par défaut pour le format \"devise\"", - "fieldFormats.advancedSettings.format.defaultTypeMapText": "Mapping du nom du format à utiliser par défaut pour chaque type de champ. {defaultFormat} est utilisé lorsque le type de champ n'est pas mentionné explicitement.", + "fieldFormats.advancedSettings.format.defaultTypeMapText": "Mapping du nom du format à utiliser par défaut pour chaque type de champ. Le format {defaultFormat} est utilisé lorsque le type de champ n'est pas mentionné explicitement.", "fieldFormats.advancedSettings.format.formattingLocaleText": "Paramètre régional {numeralLanguageLink}", "fieldFormats.advancedSettings.format.numberFormatText": "{numeralFormatLink} par défaut pour le format \"nombre\"", "fieldFormats.advancedSettings.format.percentFormatText": "{numeralFormatLink} par défaut pour le format \"pourcentage\"", - "fieldFormats.geoUtils.outOfRangeErrorMsg": "Doit être compris entre {min} et {max}", + "fieldFormats.geoUtils.outOfRangeErrorMsg": "Doit être compris entre {min} et {max}", "fieldFormats.advancedSettings.format.bytesFormat.numeralFormatLinkText": "Format numérique", "fieldFormats.advancedSettings.format.bytesFormatTitle": "Format octets", "fieldFormats.advancedSettings.format.currencyFormat.numeralFormatLinkText": "Format numérique", @@ -3109,29 +3343,32 @@ "fieldFormats.url.types.img": "Image", "fieldFormats.url.types.link": "Lien", "generateCsv.esErrorMessage": "Réponse {statusCode} reçue d'Elasticsearch : {message}", - "generateCsv.incorrectRowCount": "Une erreur a été rencontrée avec le nombre de lignes CSV générées à partir de la recherche : {expected} prévues, {received} reçues.", + "generateCsv.incorrectRowCount": "Une erreur a été rencontrée avec le nombre de lignes CSV générées de la recherche : {expected} prévues, {received} reçues.", + "generateCsv.indeterminableRowCount": "Une erreur a été rencontrée avec le nombre de lignes CSV générées à partir de la recherche : les lignes attendues étaient indéterminables, {received} reçues.", "generateCsv.unknownErrorMessage": "Une erreur inconnue est survenue : {message}", "generateCsv.authenticationExpired.partialResultsMessage": "Ce rapport contient des résultats CSV partiels, car le token d'authentification a expiré. Exportez une quantité moindre de données ou augmentez le délai d'expiration du token d'authentification.", "generateCsv.csvUnableToClosePit": "Impossible de fermer le point temporel utilisé pour la recherche. Vérifiez les logs de serveur Kibana.", + "generateCsv.csvUnableToCloseScroll": "Impossible de fermer le contexte de défilement utilisé pour la recherche. Vérifiez les logs de serveur Kibana.", "generateCsv.escapedFormulaValues": "Le CSV peut contenir des formules dont les valeurs sont précédées d'un caractère d'échappement", - "grouping.eventsTab.unit": "{totalCount, plural, =1 {événement} one {événements} many {événements} other {événements}}", - "grouping.groupByPanelTitle": "Sélectionner jusqu'à {groupingLevelsCount} regroupements", + "grouping.eventsTab.unit": "{totalCount, plural, =1 {événement} other {événements}}", + "grouping.groupByPanelTitle": "Sélectionnez jusqu'à {groupingLevelsCount} regroupements", "grouping.nullGroup.title": "Le groupe par champ sélectionné, {selectedGroup}, a une valeur manquante de {unit} pour ce groupe.", - "grouping.total.unit": "{totalCount, plural, =1 {regrouper} one {des groupes} many {groupes} other {groupes}}", + "grouping.total.unit": "{totalCount, plural, =1 {groupe} other {groupes}}", "grouping.additionalActions.takeAction": "Entreprendre des actions", "grouping.alerts.label": "Regrouper les alertes par", "grouping.customGroupByOptionName": "Champ personnalisé", "grouping.customGroupByPanelTitle": "Champ personnalisé Regrouper par", "grouping.empty.description": "Essayer de rechercher sur une période plus longue ou de modifier votre champ d'alertes de groupe", "grouping.empty.title": "Aucun résultat de regroupement ne correspond à votre champ d'alertes de groupe sélectionné", + "grouping.groupBySingleField": "Sélectionner un groupe", "grouping.groupSelector.customGroupByDropdownPlacehoder": "Effectuez une sélection", "grouping.groupSelector.customGroupByFieldLabel": "Champ", "grouping.groupSelector.customGroupByHelpText": "Il s'agit du champ utilisé pour l'agrégation de termes", "grouping.noneGroupByOptionName": "Aucun", "grouping.selector.grouping.label.add": "Ajouter", "guidedOnboarding.dropdownPanel.completeGuideFlyoutDescription": "Vous avez terminé le guide Elastic {guideName}. N'hésitez pas à consulter à nouveau les guides pour obtenir une assistance supplémentaire sur l'intégration ou pour un petit rappel.", - "guidedOnboarding.dropdownPanel.progressValueLabel": "{stepCount} étapes", - "guidedOnboarding.guidedSetupStepButtonLabel": "Guide de configuration : étape {stepNumber}", + "guidedOnboarding.dropdownPanel.progressValueLabel": "{stepCount} étapes", + "guidedOnboarding.guidedSetupStepButtonLabel": "Guide de configuration : étape {stepNumber}", "guidedOnboarding.dropdownPanel.backToGuidesLink": "Retour aux guides", "guidedOnboarding.dropdownPanel.closeButton.ariaLabel": "Fermer la boîte de dialogue modale", "guidedOnboarding.dropdownPanel.completedLabel": "Terminé", @@ -3158,15 +3395,16 @@ "guidedOnboarding.quitGuideModal.modalDescription": "Vous pouvez redémarrer le guide de configuration à tout moment à partir du menu Aide.", "guidedOnboarding.quitGuideModal.modalTitle": "Quitter ce guide ?", "guidedOnboarding.quitGuideModal.quitButtonLabel": "Quitter le guide", - "guidedOnboardingPackage.gettingStarted.cards.apmObservability.title": "Monitorer les performances de {lineBreak} mon application (APM / traçage)", + "guidedOnboardingPackage.gettingStarted.cards.apmObservability.title": "Surveiller les performances {lineBreak} de mon application (APM / traçage)", "guidedOnboardingPackage.gettingStarted.cards.appSearch.title": "Développer une application {lineBreak} au-dessus d'Elasticsearch", "guidedOnboardingPackage.gettingStarted.cards.cloudSecurity.title": "Sécuriser mes ressources cloud {lineBreak} grâce à la gestion du niveau de sécurité du cloud (CSPM)", - "guidedOnboardingPackage.gettingStarted.cards.databaseSearch.title": "Rechercher dans les bases de données {lineBreak} et les systèmes d’entreprise", + "guidedOnboardingPackage.gettingStarted.cards.databaseSearch.title": "Rechercher dans les bases de données {lineBreak} et les systèmes d'entreprise", "guidedOnboardingPackage.gettingStarted.cards.hostsSecurity.title": "Sécuriser mes hôtes {lineBreak} avec Endpoint Security", - "guidedOnboardingPackage.gettingStarted.cards.progressLabel": "{numberCompleteSteps} étape(s) terminée(s) sur {numberSteps}", - "guidedOnboardingPackage.gettingStarted.cards.siemSecurity.title": "Détecter les menaces dans {lineBreak} mes données avec SIEM", + "guidedOnboardingPackage.gettingStarted.cards.progressLabel": "{numberCompleteSteps} étapes terminées sur {numberSteps}", + "guidedOnboardingPackage.gettingStarted.cards.siemSecurity.title": "Détecter les menaces dans mes {lineBreak} données avec SIEM", "guidedOnboardingPackage.gettingStarted.cards.aiSearch.title": "Développer une expérience de recherche optimisée par l'IA", "guidedOnboardingPackage.gettingStarted.cards.completeLabel": "Guide terminé", + "guidedOnboardingPackage.gettingStarted.cards.elasticsearchApi.title": "Se connecter à l'API Elasticsearch", "guidedOnboardingPackage.gettingStarted.cards.hostsObservability.title": "Monitorer mes indicateurs d'hôte", "guidedOnboardingPackage.gettingStarted.cards.kubernetesObservability.title": "Monitorer les clusters Kubernetes", "guidedOnboardingPackage.gettingStarted.cards.logsObservability.title": "Collecter et analyser mes logs", @@ -3180,43 +3418,43 @@ "guidedOnboardingPackage.gettingStarted.guideFilter.security.buttonLabel": "Sécurité", "home.loadTutorials.requestFailedErrorMessage": "Échec de la requête avec le code de statut : {status}", "home.tutorial.addDataToKibanaDescription": "En plus d'ajouter {integrationsLink}, vous pouvez essayer l'exemple de données ou charger vos propres données.", - "home.tutorial.noTutorialLabel": "Tutoriel {tutorialId} introuvable", - "home.tutorial.savedObject.addedLabel": "{savedObjectsLength} objets enregistrés ont bien été ajoutés", - "home.tutorial.savedObject.installStatusLabel": "Il existe déjà {overwriteErrorsLength} objet(s) sur {savedObjectsLength}. Cliquez sur \"Confirmer l'écrasement\" pour importer et écraser les objets existants. Toute modification apportée aux objets sera perdue.", - "home.tutorial.savedObject.requestFailedErrorMessage": "Échec de la requête. Erreur : {message}", - "home.tutorial.savedObject.unableToAddErrorMessage": "Impossible d'ajouter {errorsLength} objet(s) Kibana sur {savedObjectsLength}, erreur : {errorMessage}", - "home.tutorial.unexpectedStatusCheckStateErrorDescription": "État de vérification du statut {statusCheckState} inattendu", - "home.tutorial.unhandledInstructionTypeErrorDescription": "Type d'instruction {visibleInstructions} non géré", + "home.tutorial.noTutorialLabel": "Tutoriel {tutorialId} introuvable", + "home.tutorial.savedObject.addedLabel": "{savedObjectsLength} objets enregistrés ont bien été ajoutés.", + "home.tutorial.savedObject.installStatusLabel": "{overwriteErrorsLength} objets sur {savedObjectsLength} existent déjà. Cliquez sur \"Confirmer l'écrasement\" pour importer et écraser les objets existants. Toute modification apportée aux objets sera perdue.", + "home.tutorial.savedObject.requestFailedErrorMessage": "Échec de la requête. Erreur : {message}.", + "home.tutorial.savedObject.unableToAddErrorMessage": "Impossible d'ajouter {errorsLength} objets Kibana sur {savedObjectsLength} . Erreur : {errorMessage}.", + "home.tutorial.unexpectedStatusCheckStateErrorDescription": "État de vérification du statut {statusCheckState} inattendu", + "home.tutorial.unhandledInstructionTypeErrorDescription": "Type d'instructions {visibleInstructions} non pris en charge", "home.tutorials.activemqLogs.longDescription": "Collectez les logs ActiveMQ avec Filebeat. [En savoir plus]({learnMoreLink}).", - "home.tutorials.activemqMetrics.longDescription": "Le module Metricbeat ''activemq'' récupère les indicateurs depuis les instances ActiveMQ. [En savoir plus]({learnMoreLink}).", - "home.tutorials.aerospikeMetrics.longDescription": "Le module Metricbeat ''aerospike'' récupère les indicateurs d'Aerospike. [En savoir plus]({learnMoreLink}).", + "home.tutorials.activemqMetrics.longDescription": "Le module Metricbeat `activemq` récupère les indicateurs depuis les instances ActiveMQ. [En savoir plus]({learnMoreLink}).", + "home.tutorials.aerospikeMetrics.longDescription": "Le module Metricbeat `aerospike` récupère les indicateurs d'Aerospike. [En savoir plus]({learnMoreLink}).", "home.tutorials.apacheLogs.longDescription": "Le module Filebeat ''apache'' analyse les logs d'accès et d'erreurs créés par le serveur HTTP Apache. [En savoir plus]({learnMoreLink}).", - "home.tutorials.apacheMetrics.longDescription": "Le module Metricbeat ''apache'' récupère les indicateurs depuis le serveur HTTP Apache 2. [En savoir plus]({learnMoreLink}).", + "home.tutorials.apacheMetrics.longDescription": "Le module Metricbeat `apache ` récupère les indicateurs depuis le serveur HTTP Apache 2. [En savoir plus]({learnMoreLink}).", "home.tutorials.auditbeat.longDescription": "Utilisez Auditbeat pour collecter les données d'audit de vos hôtes. Ces données incluent les processus, utilisateurs, connexions, informations de socket, accès aux fichiers et bien plus encore. [En savoir plus]({learnMoreLink}).", - "home.tutorials.auditdLogs.longDescription": "Le module collecte et analyse les logs du démon d'audit (''auditd'') [En savoir plus]({learnMoreLink}).", + "home.tutorials.auditdLogs.longDescription": "Le module collecte et analyse les logs du démon d'audit (`auditd`) [En savoir plus]({learnMoreLink}).", "home.tutorials.awsLogs.longDescription": "Collectez des logs AWS en les exportant vers un compartiment S3 configuré avec la notification SQS [En savoir plus]({learnMoreLink}).", - "home.tutorials.awsMetrics.longDescription": "Le module Metricbeat ''aws'' récupère les indicateurs depuis les API AWS et Cloudwatch. [En savoir plus]({learnMoreLink}).", - "home.tutorials.azureLogs.longDescription": "Le module Filebeat ''azure'' collecte les logs d'activité et d'audit Azure. [En savoir plus]({learnMoreLink}).", - "home.tutorials.azureMetrics.longDescription": "Le module Metricbeat ''azure'' récupère les indicateurs de monitoring Azure. [En savoir plus]({learnMoreLink}).", - "home.tutorials.barracudaLogs.longDescription": "Ce module permet de recevoir les logs Barracuda Web Application Firewall par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", - "home.tutorials.bluecoatLogs.longDescription": "Ce module permet de recevoir les logs Blue Coat Director par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", - "home.tutorials.cefLogs.longDescription": "Ce module permet de recevoir des données Common Event Format (CEF) par le biais de Syslog. Lorsque des messages sont reçus par le biais du protocole Syslog, l'entrée Syslog analyse l'en-tête et définit la valeur d'horodatage. Puis le processeur est appliqué pour analyser les données CEF. Les données décodées sont alors écrites dans un champ objet ''cef''. Enfin, tous les champs Elastic Common Schema (ECS) pouvant être renseignés avec les données CEF sont renseignés. [En savoir plus]({learnMoreLink}).", - "home.tutorials.cephMetrics.longDescription": "Le module Metricbeat ''ceph'' récupère les indicateurs depuis Ceph. [En savoir plus]({learnMoreLink}).", - "home.tutorials.checkpointLogs.longDescription": "Il s'agit d'un module pour les logs de pare-feu Check Point. Il prend en charge les logs de l'exportateur de logs au format Syslog. [En savoir plus]({learnMoreLink}).", - "home.tutorials.ciscoLogs.longDescription": "Il s'agit d'un module pour les logs de dispositifs réseau Cisco (ASA, FTD, IOS, Nexus). Il inclut les ensembles de fichiers suivants pour la réception des logs par le biais de Syslog ou d'un ficher : [En savoir plus]({learnMoreLink}).", + "home.tutorials.awsMetrics.longDescription": "Le module Metricbeat `aws` récupère les indicateurs depuis les API AWS et Cloudwatch. [En savoir plus]({learnMoreLink}).", + "home.tutorials.azureLogs.longDescription": "Le module Filebeat `azure` collecte les logs d’activité et d’audit Azure. [Learn more]({learnMoreLink}).", + "home.tutorials.azureMetrics.longDescription": "Le module Metricbeat `azure` récupère les indicateurs de monitoring Azure. [En savoir plus]({learnMoreLink}).", + "home.tutorials.barracudaLogs.longDescription": "Ce module permet de recevoir les logs Barracuda Web Application Firewall par le biais de Syslog ou d’un fichier. [Learn more]({learnMoreLink}).", + "home.tutorials.bluecoatLogs.longDescription": "Ce module permet de recevoir les logs Blue Coat Director par le biais de Syslog ou d’un fichier. [Learn more]({learnMoreLink}).", + "home.tutorials.cefLogs.longDescription": "Ce module permet de recevoir des données Common Event Format (CEF) par le biais de Syslog. Lorsque des messages sont reçus par le biais du protocole Syslog, l'entrée Syslog analyse l'en-tête et définit la valeur d'horodatage. Le processeur est ensuite appliqué pour analyser les données CEF. Les données décodées sont alors écrites dans un champ objet `cef`. Enfin, tous les champs Elastic Common Schema (ECS) ayant des correspondances CEF sont remplis. [En savoir plus]({learnMoreLink}).", + "home.tutorials.cephMetrics.longDescription": "Le module Metricbeat `ceph` récupère les indicateurs depuis Ceph. [En savoir plus]({learnMoreLink}).", + "home.tutorials.checkpointLogs.longDescription": "Il s'agit d'un module pour les logs de pare-feu Check Point. Il prend en charge les logs de l’exportateur de journaux au format Syslog. [Learn more]({learnMoreLink}).", + "home.tutorials.ciscoLogs.longDescription": "Il s'agit d'un module pour les logs de dispositifs réseau Cisco (ASA, FTD, IOS, Nexus). Il inclut les ensembles de fichiers suivants pour la réception des logs par le biais de Syslog ou d'un ficher. [En savoir plus]({learnMoreLink}).", "home.tutorials.cloudwatchLogs.longDescription": "Collectez les logs Cloudwatch en déployant Functionbeat à des fins d'exécution en tant que fonction AWS Lambda. [En savoir plus]({learnMoreLink}).", - "home.tutorials.cockroachdbMetrics.longDescription": "Le module Metricbeat ''cockroachbd'' récupère les indicateurs depuis CockroachDB. [En savoir plus]({learnMoreLink}).", + "home.tutorials.cockroachdbMetrics.longDescription": "Le module Metricbeat `cockroachbd` récupère les indicateurs depuis CockroachDB. [En savoir plus]({learnMoreLink}).", "home.tutorials.common.auditbeatCloudInstructions.config.debTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.auditbeatCloudInstructions.config.osxTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.auditbeatCloudInstructions.config.rpmTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.auditbeatCloudInstructions.config.windowsTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", - "home.tutorials.common.auditbeatInstructions.config.debTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana . Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.auditbeatInstructions.config.debTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.auditbeatInstructions.config.debTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.auditbeatInstructions.config.osxTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana . Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.auditbeatInstructions.config.osxTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.auditbeatInstructions.config.osxTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.auditbeatInstructions.config.rpmTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana . Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.auditbeatInstructions.config.rpmTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.auditbeatInstructions.config.rpmTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.auditbeatInstructions.config.windowsTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.auditbeatInstructions.config.windowsTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.auditbeatInstructions.config.windowsTextPre": "Modifiez {path} afin de définir les informations de connexion :", "home.tutorials.common.auditbeatInstructions.install.debTextPost": "Vous cherchez les packages 32 bits ? Consultez la [page de téléchargement]({linkUrl}).", "home.tutorials.common.auditbeatInstructions.install.debTextPre": "Vous utilisez Auditbeat pour la première fois ? Consultez le [guide de démarrage rapide]({linkUrl}).", @@ -3224,27 +3462,27 @@ "home.tutorials.common.auditbeatInstructions.install.rpmTextPost": "Vous cherchez les packages 32 bits ? Consultez la [page de téléchargement]({linkUrl}).", "home.tutorials.common.auditbeatInstructions.install.rpmTextPre": "Vous utilisez Auditbeat pour la première fois ? Consultez le [guide de démarrage rapide]({linkUrl}).", "home.tutorials.common.auditbeatInstructions.install.windowsTextPost": "Modifiez les paramètres sous {propertyName} dans le fichier {auditbeatPath} afin de pointer vers votre installation Elasticsearch.", - "home.tutorials.common.auditbeatInstructions.install.windowsTextPre": "Vous utilisez Auditbeat pour la première fois ? Consultez le [guide de démarrage rapide]({guideLinkUrl}).\n 1. Téléchargez le fichier .zip Auditbeat pour Windows via la page [Télécharger]({auditbeatLinkUrl}).\n 2. Extrayez le contenu du fichier compressé (ZIP) dans {folderPath}.\n 3. Renommez le répertoire \"{directoryName}\" en \"Auditbeat\".\n 4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n 5. Dans l'invite PowerShell, exécutez les commandes suivantes afin d'installer Auditbeat en tant que service Windows.", + "home.tutorials.common.auditbeatInstructions.install.windowsTextPre": "Vous utilisez Auditbeat pour la première fois ? Consultez le [guide de démarrage rapide]({guideLinkUrl}).\n 1. Téléchargez le fichier .zip Auditbeat pour Windows via la page [Télécharger]({auditbeatLinkUrl}).\n 2. Extrayez le contenu du fichier compressé sous {folderPath}.\n 3. Renommez le répertoire `{directoryName}` en `Auditbeat`.\n 4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n 5. Dans l'invite PowerShell, exécutez les commandes suivantes afin d'installer Auditbeat en tant que service Windows.", "home.tutorials.common.filebeatCloudInstructions.config.debTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.filebeatCloudInstructions.config.osxTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.filebeatCloudInstructions.config.rpmTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.filebeatCloudInstructions.config.windowsTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", - "home.tutorials.common.filebeatEnableInstructions.debTextPost": "Modifiez les paramètres dans le fichier \"/etc/filebeat/modules.d/{moduleName}.yml\". Vous devez activer au moins un ensemble de fichiers.", + "home.tutorials.common.filebeatEnableInstructions.debTextPost": "Modifiez les paramètres dans le fichier `/etc/filebeat/modules.d/{moduleName}.yml`. Vous devez activer au moins un ensemble de fichiers.", "home.tutorials.common.filebeatEnableInstructions.debTitle": "Activer et configurer le module {moduleName}", - "home.tutorials.common.filebeatEnableInstructions.osxTextPost": "Modifiez les paramètres dans le fichier \"modules.d/{moduleName}.yml\". Vous devez activer au moins un ensemble de fichiers.", + "home.tutorials.common.filebeatEnableInstructions.osxTextPost": "Modifiez les paramètres dans le fichier `modules.d/{moduleName}.yml`. Vous devez activer au moins un ensemble de fichiers.", "home.tutorials.common.filebeatEnableInstructions.osxTitle": "Activer et configurer le module {moduleName}", - "home.tutorials.common.filebeatEnableInstructions.rpmTextPost": "Modifiez les paramètres dans le fichier \"/etc/filebeat/modules.d/{moduleName}.yml\". Vous devez activer au moins un ensemble de fichiers.", + "home.tutorials.common.filebeatEnableInstructions.rpmTextPost": "Modifiez les paramètres dans le fichier `/etc/filebeat/modules.d/{moduleName}.yml`. Vous devez activer au moins un ensemble de fichiers.", "home.tutorials.common.filebeatEnableInstructions.rpmTitle": "Activer et configurer le module {moduleName}", - "home.tutorials.common.filebeatEnableInstructions.windowsTextPost": "Modifiez les paramètres dans le fichier \"modules.d/{moduleName}.yml\". Vous devez activer au moins un ensemble de fichiers.", - "home.tutorials.common.filebeatEnableInstructions.windowsTextPre": "Dans le dossier {path}, exécutez :", + "home.tutorials.common.filebeatEnableInstructions.windowsTextPost": "Modifiez les paramètres dans le fichier `modules.d/{moduleName}.yml`. Vous devez activer au moins un ensemble de fichiers.", + "home.tutorials.common.filebeatEnableInstructions.windowsTextPre": "Dans le dossier {path}, exécutez la commande suivante :", "home.tutorials.common.filebeatEnableInstructions.windowsTitle": "Activer et configurer le module {moduleName}", - "home.tutorials.common.filebeatInstructions.config.debTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana . Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.filebeatInstructions.config.debTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.filebeatInstructions.config.debTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.filebeatInstructions.config.osxTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.filebeatInstructions.config.osxTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.filebeatInstructions.config.osxTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.filebeatInstructions.config.rpmTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana . Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.filebeatInstructions.config.rpmTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.filebeatInstructions.config.rpmTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.filebeatInstructions.config.windowsTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana . Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.filebeatInstructions.config.windowsTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.filebeatInstructions.config.windowsTextPre": "Modifiez {path} afin de définir les informations de connexion :", "home.tutorials.common.filebeatInstructions.install.debTextPost": "Vous cherchez les packages 32 bits ? Consultez la [page de téléchargement]({linkUrl}).", "home.tutorials.common.filebeatInstructions.install.debTextPre": "Vous utilisez Filebeat pour la première fois ? Consultez le [guide de démarrage rapide]({linkUrl}).", @@ -3252,37 +3490,37 @@ "home.tutorials.common.filebeatInstructions.install.rpmTextPost": "Vous cherchez les packages 32 bits ? Consultez la [page de téléchargement]({linkUrl}).", "home.tutorials.common.filebeatInstructions.install.rpmTextPre": "Vous utilisez Filebeat pour la première fois ? Consultez le [guide de démarrage rapide]({linkUrl}).", "home.tutorials.common.filebeatInstructions.install.windowsTextPost": "Modifiez les paramètres sous {propertyName} dans le fichier {filebeatPath} afin de pointer vers votre installation Elasticsearch.", - "home.tutorials.common.filebeatInstructions.install.windowsTextPre": "Vous utilisez Filebeat pour la première fois ? Consultez le [guide de démarrage rapide]({guideLinkUrl}).\n 1. Téléchargez le fichier .zip Filebeat pour Windows via la page [Télécharger]({filebeatLinkUrl}).\n 2. Extrayez le contenu du fichier compressé (ZIP) dans {folderPath}.\n 3. Renommez le répertoire \"{directoryName}\" en \"Filebeat\".\n 4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n 5. Dans l'invite PowerShell, exécutez les commandes suivantes afin d'installer Filebeat en tant que service Windows.", - "home.tutorials.common.filebeatStatusCheck.text": "Vérifier que des données sont reçues du module Filebeat \"{moduleName}\"", + "home.tutorials.common.filebeatInstructions.install.windowsTextPre": "Vous utilisez Filebeat pour la première fois ? Consultez le [guide de démarrage rapide]({guideLinkUrl}).\n 1. Téléchargez le fichier .zip Filebeat pour Windows via la page [Télécharger]({filebeatLinkUrl}).\n 2. Extrayez le contenu du fichier compressé sous {folderPath}.\n 3. Renommez le répertoire `{directoryName}` en `Filebeat`.\n 4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n 5. Dans l'invite PowerShell, exécutez les commandes suivantes afin d'installer Filebeat en tant que service Windows.", + "home.tutorials.common.filebeatStatusCheck.text": "Vérifier que des données sont reçues du module Filebeat `{moduleName}`", "home.tutorials.common.functionbeatCloudInstructions.config.osxTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.functionbeatCloudInstructions.config.windowsTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.functionbeatEnableOnPremInstructionsWindows.textPre": "Modifiez les paramètres dans le fichier {path}.", - "home.tutorials.common.functionbeatInstructions.config.osxTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.functionbeatInstructions.config.osxTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.functionbeatInstructions.config.osxTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.functionbeatInstructions.config.windowsTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.functionbeatInstructions.config.windowsTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.functionbeatInstructions.config.windowsTextPre": "Modifiez {path} afin de définir les informations de connexion :", "home.tutorials.common.functionbeatInstructions.install.linuxTextPre": "Vous utilisez Functionbeat pour la première fois ? Consultez le [guide de démarrage rapide]({link}).", "home.tutorials.common.functionbeatInstructions.install.osxTextPre": "Vous utilisez Functionbeat pour la première fois ? Consultez le [guide de démarrage rapide]({link}).", - "home.tutorials.common.functionbeatInstructions.install.windowsTextPre": "Vous utilisez Functionbeat pour la première fois ? Consultez le [guide de démarrage rapide]({functionbeatLink}).\n 1. Téléchargez le fichier .zip Functionbeat pour Windows via la page [Télécharger]({elasticLink}).\n 2. Extrayez le contenu du fichier compressé (ZIP) dans {folderPath}.\n 3. Renommez le répertoire {directoryName} en \"Functionbeat\".\n 4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n 5. Depuis l'invite PowerShell, accédez au répertoire Functionbeat :", + "home.tutorials.common.functionbeatInstructions.install.windowsTextPre": "Vous utilisez Functionbeat pour la première fois ? Consultez le [guide de démarrage rapide]({functionbeatLink}).\n 1. Téléchargez le fichier .zip Functionbeat pour Windows via la page [Télécharger]({elasticLink}).\n 2. Extrayez le contenu du fichier compressé sous {folderPath}.\n 3. Renommez le répertoire `{directoryName}` en `Functionbeat`.\n 4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n 5. Depuis l'invite PowerShell, accédez au répertoire Functionbeat :", "home.tutorials.common.heartbeatCloudInstructions.config.debTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.heartbeatCloudInstructions.config.osxTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.heartbeatCloudInstructions.config.rpmTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.heartbeatCloudInstructions.config.windowsTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", - "home.tutorials.common.heartbeatEnableCloudInstructions.defaultTextPost": "Pour plus d'informations sur comment configurer des moniteurs dans Heartbeat, consultez les [documents de configuration de Heartbeat].({configureLink})", - "home.tutorials.common.heartbeatEnableOnPremInstructions.defaultTextPost": "Où {hostTemplate} est l'URL monitorée. Pour plus d'informations sur comment configurer des moniteurs dans Heartbeat, consultez les [documents de configuration de Heartbeat].({configureLink})", - "home.tutorials.common.heartbeatInstructions.config.debTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana . Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.heartbeatEnableCloudInstructions.defaultTextPost": "Pour plus d’informations sur comment configurer des moniteurs dans Heartbeat, consultez les [documents de configuration de Heartbeat.]({configureLink})", + "home.tutorials.common.heartbeatEnableOnPremInstructions.defaultTextPost": "Où {hostTemplate} est l’URL monitorée. Pour plus d’informations sur comment configurer des moniteurs dans Heartbeat, consultez les [documents de configuration de Heartbeat.]({configureLink})", + "home.tutorials.common.heartbeatInstructions.config.debTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.heartbeatInstructions.config.debTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.heartbeatInstructions.config.osxTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana . Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.heartbeatInstructions.config.osxTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.heartbeatInstructions.config.osxTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.heartbeatInstructions.config.rpmTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana . Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.heartbeatInstructions.config.rpmTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n> **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.heartbeatInstructions.config.rpmTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.heartbeatInstructions.config.windowsTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.heartbeatInstructions.config.windowsTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.heartbeatInstructions.config.windowsTextPre": "Modifiez {path} afin de définir les informations de connexion :", "home.tutorials.common.heartbeatInstructions.install.debTextPost": "Vous cherchez les packages 32 bits ? Consultez la [page de téléchargement]({link}).", "home.tutorials.common.heartbeatInstructions.install.debTextPre": "Vous utilisez Heartbeat pour la première fois ? Consultez le [guide de démarrage rapide]({link}).", "home.tutorials.common.heartbeatInstructions.install.osxTextPre": "Vous utilisez Heartbeat pour la première fois ? Consultez le [guide de démarrage rapide]({link}).", "home.tutorials.common.heartbeatInstructions.install.rpmTextPre": "Vous utilisez Heartbeat pour la première fois ? Consultez le [guide de démarrage rapide]({link}).", - "home.tutorials.common.heartbeatInstructions.install.windowsTextPre": "Vous utilisez Heartbeat pour la première fois ? Consultez le [guide de démarrage rapide]({heartbeatLink}).\n 1. Téléchargez le fichier .zip Heartbeat pour Windows via la page [Télécharger]({elasticLink}).\n 2. Extrayez le contenu du fichier compressé (ZIP) dans {folderPath}.\n 3. Renommez le répertoire {directoryName} en \"Heartbeat\".\n 4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n 5. Dans l'invite PowerShell, exécutez les commandes suivantes afin d'installer Heartbeat en tant que service Windows.", + "home.tutorials.common.heartbeatInstructions.install.windowsTextPre": "Vous utilisez Heartbeat pour la première fois ? Consultez le [guide de démarrage rapide]({heartbeatLink}).\n 1. Téléchargez le fichier .zip Heartbeat pour Windows via la page [Télécharger]({elasticLink}).\n 2. Extrayez le contenu du fichier compressé sous {folderPath}.\n 3. Renommez le répertoire `{directoryName}` en `Heartbeat`.\n 4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n 5. Dans l'invite PowerShell, exécutez les commandes suivantes afin d'installer Heartbeat en tant que service Windows.", "home.tutorials.common.logstashInstructions.install.java.osxTextPre": "Suivez les instructions d'installation [ici]({link}).", "home.tutorials.common.logstashInstructions.install.java.windowsTextPre": "Suivez les instructions d'installation [ici]({link}).", "home.tutorials.common.logstashInstructions.install.logstash.osxTextPre": "Vous utilisez Logstash pour la première fois ? Consultez le [guide de démarrage rapide]({link}).", @@ -3291,126 +3529,126 @@ "home.tutorials.common.metricbeatCloudInstructions.config.osxTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.metricbeatCloudInstructions.config.rpmTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", "home.tutorials.common.metricbeatCloudInstructions.config.windowsTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", - "home.tutorials.common.metricbeatEnableInstructions.debTextPost": "Modifiez les paramètres dans le fichier \"/etc/metricbeat/modules.d/{moduleName}.yml\".", + "home.tutorials.common.metricbeatEnableInstructions.debTextPost": "Modifiez les paramètres dans le fichier `/etc/metricbeat/modules.d/{moduleName}.yml`.", "home.tutorials.common.metricbeatEnableInstructions.debTitle": "Activer et configurer le module {moduleName}", - "home.tutorials.common.metricbeatEnableInstructions.osxTextPost": "Modifiez les paramètres dans le fichier \"modules.d/{moduleName}.yml\".", + "home.tutorials.common.metricbeatEnableInstructions.osxTextPost": "Modifiez les paramètres dans le fichier `modules.d/{moduleName}.yml`.", "home.tutorials.common.metricbeatEnableInstructions.osxTitle": "Activer et configurer le module {moduleName}", - "home.tutorials.common.metricbeatEnableInstructions.rpmTextPost": "Modifiez les paramètres dans le fichier \"/etc/metricbeat/modules.d/{moduleName}.yml\".", + "home.tutorials.common.metricbeatEnableInstructions.rpmTextPost": "Modifiez les paramètres dans le fichier `/etc/metricbeat/modules.d/{moduleName}.yml`.", "home.tutorials.common.metricbeatEnableInstructions.rpmTitle": "Activer et configurer le module {moduleName}", - "home.tutorials.common.metricbeatEnableInstructions.windowsTextPost": "Modifiez les paramètres dans le fichier \"modules.d/{moduleName}.yml\".", - "home.tutorials.common.metricbeatEnableInstructions.windowsTextPre": "Dans le dossier {path}, exécutez :", + "home.tutorials.common.metricbeatEnableInstructions.windowsTextPost": "Modifiez les paramètres dans le fichier `modules.d/{moduleName}.yml`.", + "home.tutorials.common.metricbeatEnableInstructions.windowsTextPre": "Dans le dossier {path}, exécutez la commande suivante :", "home.tutorials.common.metricbeatEnableInstructions.windowsTitle": "Activer et configurer le module {moduleName}", - "home.tutorials.common.metricbeatInstructions.config.debTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.metricbeatInstructions.config.debTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.metricbeatInstructions.config.debTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.metricbeatInstructions.config.osxTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.metricbeatInstructions.config.osxTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.metricbeatInstructions.config.osxTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.metricbeatInstructions.config.rpmTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.metricbeatInstructions.config.rpmTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.metricbeatInstructions.config.rpmTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.metricbeatInstructions.config.windowsTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.metricbeatInstructions.config.windowsTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.metricbeatInstructions.config.windowsTextPre": "Modifiez {path} afin de définir les informations de connexion :", "home.tutorials.common.metricbeatInstructions.install.debTextPost": "Vous cherchez les packages 32 bits ? Consultez la [page de téléchargement]({link}).", "home.tutorials.common.metricbeatInstructions.install.debTextPre": "Vous utilisez Metricbeat pour la première fois ? Consultez le [guide de démarrage rapide]({link}).", "home.tutorials.common.metricbeatInstructions.install.osxTextPre": "Vous utilisez Metricbeat pour la première fois ? Consultez le [guide de démarrage rapide]({link}).", "home.tutorials.common.metricbeatInstructions.install.rpmTextPre": "Vous utilisez Metricbeat pour la première fois ? Consultez le [guide de démarrage rapide]({link}).", - "home.tutorials.common.metricbeatInstructions.install.windowsTextPost": "Modifiez les paramètres sous \"output.elasticsearch\" dans le fichier {path} afin de pointer vers votre installation Elasticsearch.", - "home.tutorials.common.metricbeatInstructions.install.windowsTextPre": "Vous utilisez Metricbeat pour la première fois ? Consultez le [guide de démarrage rapide]({metricbeatLink}).\n 1. Téléchargez le fichier .zip Metricbeat pour Windows via la page [Télécharger]({elasticLink}).\n 2. Extrayez le contenu du fichier compressé (ZIP) dans {folderPath}.\n 3. Renommez le répertoire {directoryName} en \"Metricbeat\".\n 4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n 5. Dans l'invite PowerShell, exécutez les commandes suivantes afin d'installer Metricbeat en tant que service Windows.", - "home.tutorials.common.metricbeatStatusCheck.text": "Vérifier que des données sont reçues du module Metricbeat \"{moduleName}\"", - "home.tutorials.common.premCloudInstructions.option1.textPre": "Accédez à [Elastic Cloud]({link}). Enregistrez-vous si vous n'avez pas encore de compte. Un essai gratuit de 14 jours est disponible.\n\nConnectez-vous à la console Elastic Cloud.\n\nPour créer un cluster, dans la console Elastic Cloud :\n 1. Sélectionnez **Créer un déploiement** et spécifiez le **Nom du déploiement**.\n 2. Modifiez les autres options de déploiement selon les besoins (sinon, les valeurs par défaut sont très bien pour commencer).\n 3. Cliquer sur **Créer un déploiement**\n 4. Attendre la fin de la création du déploiement\n 5. Accéder à la nouvelle instance cloud Kibana et suivre les instructions de la page d'accueil de Kibana", - "home.tutorials.common.premCloudInstructions.option2.textPre": "Si vous exécutez cette instance Kibana sur une instance Elasticsearch hébergée, passez à la configuration manuelle.\n\nEnregistrez le point de terminaison **Elasticsearch** en tant que {urlTemplate} et le cluster **Mot de passe** en tant que {passwordTemplate} pour les conserver", + "home.tutorials.common.metricbeatInstructions.install.windowsTextPost": "Modifiez les paramètres sous `output.elasticsearch` dans le fichier {path} afin de pointer vers votre installation Elasticsearch.", + "home.tutorials.common.metricbeatInstructions.install.windowsTextPre": "Vous utilisez Metricbeat pour la première fois ? Consultez le [guide de démarrage rapide]({metricbeatLink}).\n 1. Téléchargez le fichier .zip Metricbeat pour Windows via la page [Télécharger]({elasticLink}).\n 2. Extrayez le contenu du fichier compressé sous {folderPath}.\n 3. Renommez le répertoire `{directoryName}` en `Metricbeat`.\n 4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n 5. Dans l'invite PowerShell, exécutez les commandes suivantes afin d'installer Metricbeat en tant que service Windows.", + "home.tutorials.common.metricbeatStatusCheck.text": "Vérifier que des données sont reçues du module Metricbeat `{moduleName}`", + "home.tutorials.common.premCloudInstructions.option1.textPre": "Rendez-vous sur [Elastic Cloud]({link}). Enregistrez-vous si vous n'avez pas encore de compte. Un essai gratuit de 14 jours est disponible.\n\nConnectez-vous à la console Elastic Cloud.\n\nPour créer un cluster, dans la console Elastic Cloud :\n 1. Sélectionnez **Créer un déploiement** et spécifiez le **Nom du déploiement**.\n 2. Modifiez les autres options de déploiement selon les besoins (sinon, les valeurs par défaut sont très bien pour commencer).\n 3. Cliquer sur **Créer un déploiement**\n 4. Attendre la fin de la création du déploiement\n 5. Accéder à la nouvelle instance cloud Kibana et suivre les instructions de la page d'accueil de Kibana", + "home.tutorials.common.premCloudInstructions.option2.textPre": "Si vous exécutez cette instance Kibana sur une instance Elasticsearch hébergée, passez à la configuration manuelle.\n\nEnregistrez le point de terminaison **Elasticsearch** en tant que {urlTemplate} et le cluster **Mot de passe** en tant que {passwordTemplate} pour les conserver.", "home.tutorials.common.winlogbeatCloudInstructions.config.windowsTextPre": "Modifiez {path} afin de définir les informations de connexion pour Elastic Cloud :", - "home.tutorials.common.winlogbeatInstructions.config.windowsTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur \"elastic\", {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte numérique dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [En savoir plus]({linkUrl}).", + "home.tutorials.common.winlogbeatInstructions.config.windowsTextPostMarkdown": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`, {esUrlTemplate} est l'URL d'Elasticsearch et {kibanaUrlTemplate} est l'URL de Kibana. Pour [configurer le SSL]({configureSslUrl}) avec le certificat par défaut généré par Elasticsearch, ajoutez son empreinte digitale dans {esCertFingerprintTemplate}.\n\n > **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration. [Learn more]({linkUrl}).", "home.tutorials.common.winlogbeatInstructions.config.windowsTextPre": "Modifiez {path} afin de définir les informations de connexion :", - "home.tutorials.common.winlogbeatInstructions.install.windowsTextPost": "Modifiez les paramètres sous \"output.elasticsearch\" dans le fichier {path} afin de pointer vers votre installation Elasticsearch.", - "home.tutorials.common.winlogbeatInstructions.install.windowsTextPre": "Vous utilisez Winlogbeat pour la première fois ? Consultez le [guide de démarrage rapide]({winlogbeatLink}).\n 1. Téléchargez le fichier .zip Winlogbeat pour Windows via la page [Télécharger]({elasticLink}).\n 2. Extrayez le contenu du fichier compressé (ZIP) dans {folderPath}.\n 3. Renommez le répertoire {directoryName} en \"Winlogbeat\".\n 4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n 5. Dans l'invite PowerShell, exécutez les commandes suivantes afin d'installer Winlogbeat en tant que service Windows.", - "home.tutorials.consulMetrics.longDescription": "Le module Metricbeat \"consul\" récupère des indicateurs depuis Consul. [En savoir plus]({learnMoreLink}).", + "home.tutorials.common.winlogbeatInstructions.install.windowsTextPost": "Modifiez les paramètres sous `output.elasticsearch` dans le fichier {path} afin de pointer vers votre installation Elasticsearch.", + "home.tutorials.common.winlogbeatInstructions.install.windowsTextPre": "Vous utilisez Winlogbeat pour la première fois ? Consultez le [guide de démarrage rapide]({winlogbeatLink}).\n 1. Téléchargez le fichier .zip Winlogbeat pour Windows via la page [Télécharger]({elasticLink}).\n 2. Extrayez le contenu du fichier compressé sous {folderPath}.\n 3. Renommez le répertoire `{directoryName}` en `Winlogbeat`.\n 4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n 5. Dans l'invite PowerShell, exécutez les commandes suivantes afin d'installer Winlogbeat en tant que service Windows.", + "home.tutorials.consulMetrics.longDescription": "Le module Metricbeat `consul` récupère des indicateurs depuis Consul. [En savoir plus]({learnMoreLink}).", "home.tutorials.corednsLogs.longDescription": "Il s'agit d'un module Filebeat pour CoreDNS. Celui-ci prend en charge les déploiements CoreDNS autonomes et les déploiements CoreDNS dans Kubernetes. [En savoir plus]({learnMoreLink}).", - "home.tutorials.corednsMetrics.longDescription": "Le module Metricbeat \"coredns\" récupère des indicateurs depuis CoreDNS. [En savoir plus]({learnMoreLink}).", + "home.tutorials.corednsMetrics.longDescription": "Le module Metricbeat `coredns` récupère des indicateurs depuis CoreDNS. [En savoir plus]({learnMoreLink}).", "home.tutorials.couchbaseMetrics.longDescription": "Le module Metricbeat \"couchbase\" récupère des indicateurs depuis Couchbase. [En savoir plus]({learnMoreLink}).", - "home.tutorials.couchdbMetrics.longDescription": "Le module Metricbeat \"couchdb\" récupère des indicateurs depuis CouchDB. [En savoir plus]({learnMoreLink}).", + "home.tutorials.couchdbMetrics.longDescription": "Le module Metricbeat `couchdb` récupère des indicateurs depuis CouchDB. [En savoir plus]({learnMoreLink}).", "home.tutorials.crowdstrikeLogs.longDescription": "Il s'agit du module Filebeat pour CrowdStrike Falcon utilisant le [connecteur SIEM](https://www.crowdstrike.com/blog/tech-center/integrate-with-your-siem) Falcon. Ce module collecte ces données, les convertit en ECS et les ingère pour les afficher dans le SIEM. Par défaut, le connecteur SIEM Falcon génère les données d'événement de l'API de streaming Falcon au format JSON. [En savoir plus]({learnMoreLink}).", "home.tutorials.cylanceLogs.longDescription": "Ce module permet de recevoir des logs CylancePROTECT par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", - "home.tutorials.dockerMetrics.longDescription": "Le module Metricbeat \"docker\" récupère des indicateurs depuis le serveur Docker. [En savoir plus]({learnMoreLink}).", - "home.tutorials.dropwizardMetrics.longDescription": "Le module Metricbeat \"dropwizard\" récupère des indicateurs depuis l'application Java Dropwizard. [En savoir plus]({learnMoreLink}).", - "home.tutorials.elasticsearchLogs.longDescription": "Le module Filebeat \"elasticsearch\" analyse les logs créés par Elasticsearch. [En savoir plus]({learnMoreLink}).", - "home.tutorials.elasticsearchMetrics.longDescription": "Le module Metricbeat \"elasticsearch\" récupère des indicateurs depuis Elasticsearch. [En savoir plus]({learnMoreLink}).", - "home.tutorials.envoyproxyLogs.longDescription": "Il s'agit d'un module Filebeat pour le log d'accès à Envoy Proxy (https://www.envoyproxy.io/docs/envoy/v1.10.0/configuration/access_log). Celui-ci prend en charge les déploiements autonomes et les déploiements Envoy Proxy dans Kubernetes. [En savoir plus]({learnMoreLink}).", - "home.tutorials.envoyproxyMetrics.longDescription": "Le module Metricbeat \"envoyproxy\" récupère des indicateurs depuis Envoy Proxy. [En savoir plus]({learnMoreLink}).", - "home.tutorials.etcdMetrics.longDescription": "Le module Metricbeat \"etcd\" récupère des indicateurs depuis Etcd. [En savoir plus]({learnMoreLink}).", + "home.tutorials.dockerMetrics.longDescription": "Le module Metricbeat `docker` récupère des indicateurs depuis le serveur Docker. [En savoir plus]({learnMoreLink}).", + "home.tutorials.dropwizardMetrics.longDescription": "Le module Metricbeat `dropwizard` récupère des indicateurs depuis l'application Java Dropwizard. [En savoir plus]({learnMoreLink}).", + "home.tutorials.elasticsearchLogs.longDescription": "Le module Filebeat `elasticsearch` analyse les logs créés par Elasticsearch. [En savoir plus]({learnMoreLink}).", + "home.tutorials.elasticsearchMetrics.longDescription": "Le module Metricbeat `elasticsearch` récupère des indicateurs depuis Elasticsearch. [En savoir plus]({learnMoreLink}).", + "home.tutorials.envoyproxyLogs.longDescription": "Il s'agit d'un module Filebeat pour le log d'accès à Envoy Proxy (https://www.envoyproxy.io/docs/envoy/v1.10.0/configuration/access_log). Celui-ci prend en charge les déploiements autonomes et les déploiements Envoy Proxy dans Kubernetes. [Learn more]({learnMoreLink}).", + "home.tutorials.envoyproxyMetrics.longDescription": "Le module Metricbeat `envoyproxy` récupère des indicateurs depuis Envoy Proxy. [En savoir plus]({learnMoreLink}).", + "home.tutorials.etcdMetrics.longDescription": "Le module Metricbeat `etcd` récupère des indicateurs depuis Etcd. [En savoir plus]({learnMoreLink}).", "home.tutorials.f5Logs.longDescription": "Ce module permet de recevoir des logs Big-IP Access Policy Manager par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", "home.tutorials.fortinetLogs.longDescription": "Il s'agit d'un module pour les logs Fortinet FortiOS envoyés au format Syslog. [En savoir plus]({learnMoreLink}).", - "home.tutorials.gcpLogs.longDescription": "Il s'agit d'un module pour les logs Google Cloud. Il prend en charge la lecture des logs d'audit, de flux VPC et de pare-feu qui ont été exportés depuis Stackdriver vers un récepteur de rubriques Google Pub/Sub. [En savoir plus]({learnMoreLink}).", - "home.tutorials.gcpMetrics.longDescription": "Le module Metricbeat \"gcp\" récupère des indicateurs depuis Google Cloud Platform à l'aide de l'API de monitoring Stackdriver. [En savoir plus]({learnMoreLink}).", - "home.tutorials.golangMetrics.longDescription": "Le module Metricbeat \"{moduleName}\" récupère des indicateurs depuis une application Golang. [En savoir plus]({learnMoreLink}).", + "home.tutorials.gcpLogs.longDescription": "Il s'agit d'un module pour les logs Google Cloud. Il prend en charge la lecture des logs d'audit, de flux VPC et de pare-feu qui ont été exportés depuis Stackdriver dans un récepteur de rubriques Google Pub/Sub. [En savoir plus]({learnMoreLink}).", + "home.tutorials.gcpMetrics.longDescription": "Le module Metricbeat `gcp` récupère des indicateurs depuis Google Cloud Platform à l'aide de l'API de monitoring Stackdriver. [En savoir plus]({learnMoreLink}).", + "home.tutorials.golangMetrics.longDescription": "Le module Metricbeat `{moduleName}` récupère des indicateurs depuis une application Golang. [En savoir plus]({learnMoreLink}).", "home.tutorials.gsuiteLogs.longDescription": "Il s'agit d'un module pour l'ingestion de données depuis les différentes API de rapports d'audit GSuite. [En savoir plus]({learnMoreLink}).", - "home.tutorials.haproxyLogs.longDescription": "Le module collecte et analyse les logs d'un processus (\"haproxy\") [En savoir plus]({learnMoreLink}).", - "home.tutorials.haproxyMetrics.longDescription": "Le module Metricbeat \"haproxy\" récupère des indicateurs depuis HAProxy. [En savoir plus]({learnMoreLink}).", + "home.tutorials.haproxyLogs.longDescription": "Le module collecte et analyse les logs d'un processus (`haproxy`) [En savoir plus]({learnMoreLink}).", + "home.tutorials.haproxyMetrics.longDescription": "Le module Metricbeat `haproxy` récupère des indicateurs depuis HAProxy. [En savoir plus]({learnMoreLink}).", "home.tutorials.ibmmqLogs.longDescription": "Collectez des logs IBM MQ avec Filebeat. [En savoir plus]({learnMoreLink}).", - "home.tutorials.ibmmqMetrics.longDescription": "Le module Metricbeat \"ibmmq\" récupère des indicateurs depuis les instances IBM MQ. [En savoir plus]({learnMoreLink}).", - "home.tutorials.icingaLogs.longDescription": "Le module analyse le log principal, et les logs de débogage et de démarrage depuis [Icinga](https://www.icinga.com/products/icinga-2/). [En savoir plus]({learnMoreLink}).", - "home.tutorials.iisLogs.longDescription": "Le module Filebeat \"iis\" analyse les logs d'accès et d'erreurs créés par le serveur HTTP IIS. [En savoir plus]({learnMoreLink}).", - "home.tutorials.iisMetrics.longDescription": "Le module Metricbeat \"iis\" collecte les indicateurs du serveur IIS ainsi que des sites web et des pools d'applications en cours d'exécution. [En savoir plus]({learnMoreLink}).", + "home.tutorials.ibmmqMetrics.longDescription": "Le module Metricbeat `ibmmq` récupère des indicateurs depuis les instances IBM MQ. [En savoir plus]({learnMoreLink}).", + "home.tutorials.icingaLogs.longDescription": "Le module analyse le log principal et les logs de débogage et de démarrage d'[Icinga](https://www.icinga.com/products/icinga-2/). [En savoir plus]({learnMoreLink}).", + "home.tutorials.iisLogs.longDescription": "Le module Filebeat `iis` analyse les logs d'accès et d'erreurs créés par le serveur HTTP IIS. [En savoir plus]({learnMoreLink}).", + "home.tutorials.iisMetrics.longDescription": "Le module Metricbeat `iis` collecte les indicateurs du serveur IIS ainsi que des sites web et des pools d'applications en cours d'exécution. [En savoir plus]({learnMoreLink}).", "home.tutorials.impervaLogs.longDescription": "Ce module permet de recevoir des logs Imperva SecureSphere par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", "home.tutorials.infobloxLogs.longDescription": "Ce module permet de recevoir des logs Infoblox NIOS par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", "home.tutorials.iptablesLogs.longDescription": "Il s'agit d'un module pour les logs iptables et ip6tables. Il analyse les logs reçus via le réseau par le biais de Syslog ou d’un fichier. En outre, il comprend le préfixe ajouté par certains pare-feux Ubiquiti qui contient le nom de l'ensemble de règles, le numéro de règle et l'action effectuée sur le trafic (autoriser/refuser). [En savoir plus]({learnMoreLink}).", "home.tutorials.juniperLogs.longDescription": "Ce module permet de recevoir des logs Juniper JUNOS par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", - "home.tutorials.kafkaLogs.longDescription": "Le module Filebeat \"kafka\" analyse les logs créés par Kafka. [En savoir plus]({learnMoreLink}).", - "home.tutorials.kafkaMetrics.longDescription": "Le module Metricbeat \"kafka\" récupère des indicateurs depuis Kafka. [En savoir plus]({learnMoreLink}).", + "home.tutorials.kafkaLogs.longDescription": "Le module Filebeat `kafka` analyse les logs créés par Kafka. [En savoir plus]({learnMoreLink}).", + "home.tutorials.kafkaMetrics.longDescription": "Le module Metricbeat `kafka` récupère des indicateurs depuis Kafka. [En savoir plus]({learnMoreLink}).", "home.tutorials.kibanaLogs.longDescription": "Il s'agit du module Kibana. [En savoir plus]({learnMoreLink}).", - "home.tutorials.kibanaMetrics.longDescription": "Le module Metricbeat \"kibana\" récupère des indicateurs depuis Kibana. [En savoir plus]({learnMoreLink}).", - "home.tutorials.kubernetesMetrics.longDescription": "Le module Metricbeat \"kubernetes\" récupère des indicateurs depuis les API Kubernetes. [En savoir plus]({learnMoreLink}).", - "home.tutorials.logstashLogs.longDescription": "Le module analyse les logs standard et le log de requêtes lentes Logstash. Il prend en charge les formats \"texte brut\" et JSON. [En savoir plus]({learnMoreLink}).", - "home.tutorials.logstashMetrics.longDescription": "Le module Metricbeat \"{moduleName}\" récupère des indicateurs depuis un serveur Logstash. [En savoir plus]({learnMoreLink}).", - "home.tutorials.memcachedMetrics.longDescription": "Le module Metricbeat \"memcached\" récupère des indicateurs depuis Memcached. [En savoir plus]({learnMoreLink}).", + "home.tutorials.kibanaMetrics.longDescription": "Le module Metricbeat `kibana` récupère des indicateurs depuis Kibana. [En savoir plus]({learnMoreLink}).", + "home.tutorials.kubernetesMetrics.longDescription": "Le module Metricbeat `kubernetes` récupère des indicateurs depuis les API Kubernetes. [En savoir plus]({learnMoreLink}).", + "home.tutorials.logstashLogs.longDescription": "Le module analyse les logs standard et le log de requêtes lentes Logstash. Il prend en charge les formats texte brut et JSON. [En savoir plus]({learnMoreLink}).", + "home.tutorials.logstashMetrics.longDescription": "Le module Metricbeat `{moduleName}` récupère des indicateurs depuis un serveur Logstash. [En savoir plus]({learnMoreLink}).", + "home.tutorials.memcachedMetrics.longDescription": "Le module Metricbeat `memcached` récupère des indicateurs depuis Memcached. [En savoir plus]({learnMoreLink}).", "home.tutorials.microsoftLogs.longDescription": "Collectez des alertes Microsoft Defender ATP pour les utiliser avec Elastic Security [En savoir plus]({learnMoreLink}).", "home.tutorials.mispLogs.longDescription": "Il s'agit d'un module Filebeat pour la lecture des informations de Threat Intelligence depuis la plateforme MISP (https://www.circl.lu/doc/misp/). Il utilise l'entrée httpjson pour accéder à l'interface d'API REST MISP. [En savoir plus]({learnMoreLink}).", "home.tutorials.mongodbLogs.longDescription": "Le module collecte et analyse les logs créés par [MongoDB](https://www.mongodb.com/). [En savoir plus]({learnMoreLink}).", - "home.tutorials.mongodbMetrics.longDescription": "Le module Metricbeat \"mongodb\" récupère des indicateurs depuis le serveur MongoDB. [En savoir plus]({learnMoreLink}).", + "home.tutorials.mongodbMetrics.longDescription": "Le module Metricbeat `mongodb` récupère des indicateurs depuis le serveur MongoDB. [En savoir plus]({learnMoreLink}).", "home.tutorials.mssqlLogs.longDescription": "Le module analyse les logs d'erreurs créés par MSSQL. [En savoir plus]({learnMoreLink}).", - "home.tutorials.mssqlMetrics.longDescription": "Le module Metricbeat \"mssql\" récupère des indicateurs de monitoring, de logs et de performances depuis une instance Microsoft SQL Server. [En savoir plus]({learnMoreLink}).", - "home.tutorials.muninMetrics.longDescription": "Le module Metricbeat \"munin\" récupère des indicateurs depuis Munin. [En savoir plus]({learnMoreLink}).", - "home.tutorials.mysqlLogs.longDescription": "Le module Filebeat \"mysql\" analyse les logs d'erreurs et de requêtes lentes créés par MySQL. [En savoir plus]({learnMoreLink}).", - "home.tutorials.mysqlMetrics.longDescription": "Le module Metricbeat \"mysql\" récupère des indicateurs depuis le serveur MySQL. [En savoir plus]({learnMoreLink}).", - "home.tutorials.natsLogs.longDescription": "Le module Filebeat \"nats\" analyse les logs créés par Nats. [En savoir plus]({learnMoreLink}).", - "home.tutorials.natsMetrics.longDescription": "Le module Metricbeat \"nats\" récupère des indicateurs depuis Nats. [En savoir plus]({learnMoreLink}).", - "home.tutorials.netflowLogs.longDescription": "Ce module permet de recevoir des enregistrements de flux NetFlow et IPFIX via UDP. Cette entrée prend en charge les versions 1, 5, 6, 7, 8 et 9 de NetFlow ainsi qu'IPFIX. Pour les versions de NetFlow antérieures à la version 9, les champs sont automatiquement mappés vers NetFlow v9. [En savoir plus]({learnMoreLink}).", + "home.tutorials.mssqlMetrics.longDescription": "Le module Metricbeat `mssql` récupère des indicateurs de monitoring, de logs et de performances depuis une instance Microsoft SQL Server. [En savoir plus]({learnMoreLink}).", + "home.tutorials.muninMetrics.longDescription": "Le module Metricbeat `munin` récupère des indicateurs depuis Munin. [En savoir plus]({learnMoreLink}).", + "home.tutorials.mysqlLogs.longDescription": "Le module Filebeat `mysql` analyse les logs d'erreurs et de requêtes lentes créés par MySQL. [En savoir plus]({learnMoreLink}).", + "home.tutorials.mysqlMetrics.longDescription": "Le module Metricbeat `mysql` récupère des indicateurs depuis le serveur MySQL. [En savoir plus]({learnMoreLink}).", + "home.tutorials.natsLogs.longDescription": "Le module Filebeat `nats` analyse les logs créés par NATS. [En savoir plus]({learnMoreLink}).", + "home.tutorials.natsMetrics.longDescription": "Le module Metricbeat `nats` récupère des indicateurs depuis NATS. [En savoir plus]({learnMoreLink}).", + "home.tutorials.netflowLogs.longDescription": "Ce module permet de recevoir des enregistrements de flux NetFlow et IPFIX via UDP. Cette entrée prend en charge les versions 1, 5, 6, 7, 8 et 9 de NetFlow ainsi qu'IPFIX. Pour les versions de NetFlow antérieures à la version 9, les champs sont automatiquement mappés vers NetFlow v9. [En savoir plus]({learnMoreLink})", "home.tutorials.netscoutLogs.longDescription": "Ce module permet de recevoir des logs Arbor Peakflow SP par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", - "home.tutorials.nginxLogs.longDescription": "Le module Filebeat \"nginx\" analyse les logs d'accès et d'erreurs créés par le serveur HTTP Nginx. [En savoir plus]({learnMoreLink}).", - "home.tutorials.nginxMetrics.longDescription": "Le module Metricbeat \"nginx\" récupère des indicateurs depuis le serveur HTTP Nginx. Le module récupère les données de statut du serveur depuis la page web générée par {statusModuleLink}, qui doit être activé dans votre installation Nginx. [En savoir plus]({learnMoreLink}).", - "home.tutorials.o365Logs.longDescription": "Il s'agit d'un module pour les logs Office 365 reçus via l'un des points de terminaison d'API Office 365. Actuellement, il prend en charge les actions et les événements utilisateur, administrateur, système et de politique depuis les logs d'activité Office 365 et Azure AD exposés par l'API Activité de gestion Office 365. [En savoir plus]({learnMoreLink}).", + "home.tutorials.nginxLogs.longDescription": "Le module Filebeat `nginx` analyse les logs d'accès et d'erreurs créés par le serveur HTTP Nginx. [En savoir plus]({learnMoreLink}).", + "home.tutorials.nginxMetrics.longDescription": "Le module Metricbeat `nginx` récupère des indicateurs depuis le serveur HTTP Nginx. Le module récupère les données de statut du serveur depuis la page web générée par {statusModuleLink}, qui doit être activé dans votre installation Nginx. [En savoir plus]({learnMoreLink}).", + "home.tutorials.o365Logs.longDescription": "Il s'agit d'un module pour les logs Office 365 reçus via l'un des points de terminaison d'API Office 365. Actuellement, il prend en charge les actions et les événements utilisateur, administrateur, système et de politique depuis les logs d’activité Office 365 et Azure AD exposés par l'API d’activité de gestion Office 365. [En savoir plus]({learnMoreLink}).", "home.tutorials.oktaLogs.longDescription": "Le module Okta collecte les événements de l'[API Okta](https://developer.okta.com/docs/reference/). Plus précisément, il prend en charge la lecture depuis l'[API de log système Okta](https://developer.okta.com/docs/reference/api/system-log/). [En savoir plus]({learnMoreLink}).", - "home.tutorials.openmetricsMetrics.longDescription": "Le module Metricbeat \"openmetrics\" récupère des indicateurs depuis un point de terminaison fournissant des indicateurs au format OpenMetrics. [En savoir plus]({learnMoreLink}).", - "home.tutorials.oracleMetrics.longDescription": "Le module Metricbeat \"{moduleName}\" récupère des indicateurs depuis un serveur Oracle. [En savoir plus]({learnMoreLink}).", - "home.tutorials.osqueryLogs.longDescription": "Le module collecte et décode les logs de résultats écrits par [osqueryd](https://osquery.readthedocs.io/en/latest/introduction/using-osqueryd/) au format JSON. Pour configurer \"osqueryd\", suivez les instructions d'installation d'osquery pour votre système d'exploitation et configurez le pilote de logging \"filesystem\" (celui par défaut). Assurez-vous que les horodatages UTC sont activés. [En savoir plus]({learnMoreLink}).", + "home.tutorials.openmetricsMetrics.longDescription": "Le module Metricbeat `openmetrics` récupère des indicateurs depuis un point de terminaison fournissant des indicateurs au format OpenMetrics. [En savoir plus]({learnMoreLink}).", + "home.tutorials.oracleMetrics.longDescription": "Le module Metricbeat `{moduleName}` récupère des indicateurs depuis un serveur Oracle. [En savoir plus]({learnMoreLink}).", + "home.tutorials.osqueryLogs.longDescription": "Le module collecte et décode les logs de résultats écrits par [osqueryd](https://osquery.readthedocs.io/en/latest/introduction/using-osqueryd/) au format JSON. Pour configurer `osqueryd`, suivez les instructions d'installation d'osquery pour votre système d'exploitation et configurez le pilote de logging `filesystem` (celui par défaut). Assurez-vous que les horodatages UTC sont activés. [En savoir plus]({learnMoreLink}).", "home.tutorials.panwLogs.longDescription": "Il s'agit d'un module pour les logs de monitoring des pare-feux Palo Alto Networks PAN-OS reçus par le biais de Syslog ou lus depuis un fichier. Actuellement, il prend en charge les messages de type Trafic et Menaces. [En savoir plus]({learnMoreLink}).", - "home.tutorials.phpFpmMetrics.longDescription": "Le module Metricbeat \"php_fpm\" récupère des indicateurs depuis le serveur PHP-FPM. [En savoir plus]({learnMoreLink}).", - "home.tutorials.postgresqlLogs.longDescription": "Le module Filebeat \"postgresql\" analyse les logs d'erreurs et de requêtes lentes créés par PostgreSQL. [En savoir plus]({learnMoreLink}).", - "home.tutorials.postgresqlMetrics.longDescription": "Le module Metricbeat \"postgresql\" récupère des indicateurs depuis le serveur PostgreSQL. [En savoir plus]({learnMoreLink}).", - "home.tutorials.prometheusMetrics.longDescription": "Le module Metricbeat \"{moduleName}\" récupère des indicateurs depuis le point de terminaison Prometheus. [En savoir plus]({learnMoreLink}).", + "home.tutorials.phpFpmMetrics.longDescription": "Le module Metricbeat `php_fpm` récupère des indicateurs depuis le serveur PHP-FPM. [En savoir plus]({learnMoreLink}).", + "home.tutorials.postgresqlLogs.longDescription": "Le module Filebeat `postgresql` analyse les logs d'erreurs et de requêtes lentes créés par PostgreSQL. [En savoir plus]({learnMoreLink}).", + "home.tutorials.postgresqlMetrics.longDescription": "Le module Metricbeat `postgresql` récupère des indicateurs depuis le serveur PostgreSQL. [En savoir plus]({learnMoreLink}).", + "home.tutorials.prometheusMetrics.longDescription": "Le module Metricbeat `{moduleName}` récupère des indicateurs depuis le point de terminaison Prometheus. [En savoir plus]({learnMoreLink}).", "home.tutorials.rabbitmqLogs.longDescription": "Ce module permet d'analyser les [fichiers log RabbitMQ](https://www.rabbitmq.com/logging.html). [En savoir plus]({learnMoreLink}).", - "home.tutorials.rabbitmqMetrics.longDescription": "Le module Metricbeat \"rabbitmq\" récupère des indicateurs depuis le serveur RabbitMQ. [En savoir plus]({learnMoreLink}).", + "home.tutorials.rabbitmqMetrics.longDescription": "Le module Metricbeat `rabbitmq` récupère des indicateurs depuis le serveur RabbitMQ. [En savoir plus]({learnMoreLink}).", "home.tutorials.radwareLogs.longDescription": "Ce module permet de recevoir des logs Radware DefensePro par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", - "home.tutorials.redisenterpriseMetrics.longDescription": "Le module Metricbeat \"redisenterprise\" récupère des indicateurs depuis le serveur Redis Enterprise. [En savoir plus]({learnMoreLink}).", - "home.tutorials.redisLogs.longDescription": "Le module Filebeat \"redis\" analyse les logs d'erreurs et de requêtes lentes créés par Redis. Pour que Redis écrive des logs d'erreurs, assurez-vous que l'option \"logfile\" est définie sur \"redis-server.log\" dans le fichier de configuration Redis. Les logs de requêtes lentes sont lus directement depuis Redis via la commande \"SLOWLOG\". Pour que Redis enregistre des logs de requêtes lentes, assurez-vous que l'option \"slowlog-log-slower-than\" est activée. Notez que l'ensemble de fichiers \"slowlog\" est expérimental. [En savoir plus]({learnMoreLink}).", - "home.tutorials.redisMetrics.longDescription": "Le module Metricbeat \"redis\" récupère des indicateurs depuis le serveur Redis. [En savoir plus]({learnMoreLink}).", + "home.tutorials.redisenterpriseMetrics.longDescription": "Le module Metricbeat `redisenterprise` récupère des indicateurs depuis le serveur Redis Enterprise. [En savoir plus]({learnMoreLink}).", + "home.tutorials.redisLogs.longDescription": "Le module Filebeat `redis` analyse les logs d'erreurs et de requêtes lentes créés par Redis. Pour que Redis écrive des logs d'erreurs, assurez-vous que l'option `logfile` est définie sur `redis-server.log` dans le fichier de configuration Redis. Les logs de requêtes lentes sont lus directement depuis Redis via la commande `SLOWLOG`. Pour que Redis enregistre des logs de requêtes lentes, assurez-vous que l'option `slowlog-log-slower-than` est activée. Notez que l'ensemble de fichiers `slowlog` est expérimental. [En savoir plus]({learnMoreLink}).", + "home.tutorials.redisMetrics.longDescription": "Le module Metricbeat `redis` récupère des indicateurs depuis le serveur Redis. [En savoir plus]({learnMoreLink}).", "home.tutorials.santaLogs.longDescription": "Le module collecte et analyse les logs de [Google Santa](https://github.com/google/santa), un outil de sécurité pour macOS qui monitore les exécutions de processus et est capable de mettre en liste noire/blanche des fichiers binaires. [En savoir plus]({learnMoreLink}).", "home.tutorials.sonicwallLogs.longDescription": "Ce module permet de recevoir des logs Sonicwall FW par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", "home.tutorials.sophosLogs.longDescription": "Il s'agit d'un module pour les produits Sophos. Actuellement, il prend en charge les logs XG SFOS envoyés au format Syslog. [En savoir plus]({learnMoreLink}).", "home.tutorials.squidLogs.longDescription": "Ce module permet de recevoir des logs Squid par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", - "home.tutorials.stanMetrics.longDescription": "Le module Metricbeat \"stan\" récupère des indicateurs depuis STAN. [En savoir plus]({learnMoreLink}).", - "home.tutorials.statsdMetrics.longDescription": "Le module Metricbeat \"statsd\" récupère des indicateurs depuis statsd. [En savoir plus]({learnMoreLink}).", + "home.tutorials.stanMetrics.longDescription": "Le module Metricbeat `stan` récupère des indicateurs depuis STAN. [En savoir plus]({learnMoreLink}).", + "home.tutorials.statsdMetrics.longDescription": "Le module Metricbeat `statsd` récupère des indicateurs depuis statsd. [En savoir plus]({learnMoreLink}).", "home.tutorials.suricataLogs.longDescription": "Il s'agit d'un module pour le log IDS/IPS/NSM Suricata. Il analyse les logs qui sont au [format JSON Suricata Eve](https://suricata.readthedocs.io/en/latest/output/eve/eve-json-format.html). [En savoir plus]({learnMoreLink}).", - "home.tutorials.systemLogs.longDescription": "Le module collecte et analyse les logs créés par le service de logging système des distributions courantes basées sur Unix/Linux. [En savoir plus]({learnMoreLink}).", - "home.tutorials.systemMetrics.longDescription": "Le module Metricbeat \"system\" collecte des statistiques relatives au CPU, à la mémoire, au réseau et au disque depuis l'hôte. Il collecte des statistiques au niveau du système et des statistiques par processus et système de fichiers. [En savoir plus]({learnMoreLink}).", + "home.tutorials.systemLogs.longDescription": "Le module collecte et analyse les logs créés par le service de logging système des distributions basées sur Unix/Linux communes. [En savoir plus]({learnMoreLink}).", + "home.tutorials.systemMetrics.longDescription": "Le module Metricbeat `system` collecte des statistiques relatives au CPU, à la mémoire, au réseau et au disque depuis l'hôte. Il collecte des statistiques au niveau du système et des statistiques par processus et système de fichiers. [En savoir plus]({learnMoreLink}).", "home.tutorials.tomcatLogs.longDescription": "Ce module permet de recevoir des logs Apache Tomcat par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", "home.tutorials.traefikLogs.longDescription": "Le module analyse les logs d'accès créés par [Traefik](https://traefik.io/). [En savoir plus]({learnMoreLink}).", - "home.tutorials.traefikMetrics.longDescription": "Le module Metricbeat \"traefik\" récupère des indicateurs depuis Traefik. [En savoir plus]({learnMoreLink}).", - "home.tutorials.uptimeMonitors.longDescription": "Monitorez la disponibilité des services grâce à une détection active. À partir d'une liste d'URL, Heartbeat pose cette question toute simple : Êtes-vous actif ? [En savoir plus]({learnMoreLink}).", - "home.tutorials.uwsgiMetrics.longDescription": "Le module Metricbeat \"uwsgi\" récupère des indicateurs depuis le serveur uWSGI. [En savoir plus]({learnMoreLink}).", - "home.tutorials.vsphereMetrics.longDescription": "Le module Metricbeat \"vsphere\" récupère des indicateurs depuis un cluster vSphere. [En savoir plus]({learnMoreLink}).", - "home.tutorials.windowsEventLogs.longDescription": "Utilisez Winlogbeat pour collecter les logs depuis les logs des événements Windows. [En savoir plus]({learnMoreLink}).", - "home.tutorials.windowsMetrics.longDescription": "Le module Metricbeat \"windows\" récupère des indicateurs depuis Windows. [En savoir plus]({learnMoreLink}).", + "home.tutorials.traefikMetrics.longDescription": "Le module Metricbeat `traefik` récupère des indicateurs depuis Traefik. [En savoir plus]({learnMoreLink}).", + "home.tutorials.uptimeMonitors.longDescription": "Monitorez la disponibilité des services grâce à une détection active. À partir d'une liste d'URL, Heartbeat pose cette question toute simple : Êtes-vous actif ? [En savoir plus]({learnMoreLink}).", + "home.tutorials.uwsgiMetrics.longDescription": "Le module Metricbeat `uwsgi` récupère des indicateurs depuis le serveur uWSGI. [En savoir plus]({learnMoreLink}).", + "home.tutorials.vsphereMetrics.longDescription": "Le module Metricbeat `vsphere` récupère des indicateurs depuis un cluster vSphere. [En savoir plus]({learnMoreLink}).", + "home.tutorials.windowsEventLogs.longDescription": "Utilisez Winlogbeat pour collecter des logs depuis le log des événements Windows. [En savoir plus]({learnMoreLink}).", + "home.tutorials.windowsMetrics.longDescription": "Le module Metricbeat `windows` récupère des indicateurs depuis Windows. [En savoir plus]({learnMoreLink}).", "home.tutorials.zeekLogs.longDescription": "Il s'agit d'un module pour Zeek, anciennement appelé Bro. Il analyse les logs qui sont au [format JSON Zeek](https://www.zeek.org/manual/release/logs/index.html). [En savoir plus]({learnMoreLink}).", - "home.tutorials.zookeeperMetrics.longDescription": "Le module Metricbeat \"{moduleName}\" récupère des indicateurs depuis un serveur Zookeeper. [En savoir plus]({learnMoreLink}).", + "home.tutorials.zookeeperMetrics.longDescription": "Le module Metricbeat `{moduleName}` récupère des indicateurs depuis un serveur Zookeeper. [En savoir plus]({learnMoreLink}).", "home.tutorials.zscalerLogs.longDescription": "Ce module permet de recevoir des logs Zscaler NSS par le biais de Syslog ou d'un fichier. [En savoir plus]({learnMoreLink}).", "home.addData.addDataButtonLabel": "Ajouter des intégrations", "home.addData.guidedOnboardingLinkLabel": "Guides de configuration", @@ -3433,7 +3671,7 @@ "home.guidedOnboarding.gettingStarted.errorSectionTitle": "Impossible de charger l'état du guide", "home.guidedOnboarding.gettingStarted.loadingIndicator": "Chargement de l'état du guide...", "home.guidedOnboarding.gettingStarted.skip.buttonLabel": "J’aimerais explorer par moi-même.", - "home.guidedOnboarding.gettingStarted.useCaseSelectionSubtitle": "Sélectionnez un guide pour vous aider à tirer le meilleur parti de vos données.", + "home.guidedOnboarding.gettingStarted.useCaseSelectionSubtitle": "Filtrer par solution pour afficher les cas d'utilisation associés", "home.guidedOnboarding.gettingStarted.useCaseSelectionTitle": "Par quoi voulez-vous commencer ?", "home.header.title": "Bienvenue chez vous", "home.letsStartDescription": "Ajoutez des données à votre cluster depuis n’importe quelle source, puis analysez-les et visualisez-les en temps réel. Utilisez nos solutions pour définir des recherches, observer votre écosystème et vous défendre contre les menaces de sécurité.", @@ -3503,10 +3741,10 @@ "home.tutorials.activemqLogs.artifacts.dashboards.linkLabel": "Événements d'audit ActiveMQ", "home.tutorials.activemqLogs.nameTitle": "Logs ActiveMQ", "home.tutorials.activemqLogs.shortDescription": "Collectez et analysez les logs à partir des instances ActiveMQ avec Filebeat.", - "home.tutorials.activemqMetrics.artifacts.application.label": "Découverte", + "home.tutorials.activemqMetrics.artifacts.application.label": "Discover", "home.tutorials.activemqMetrics.nameTitle": "Indicateurs ActiveMQ", "home.tutorials.activemqMetrics.shortDescription": "Collectez les indicateurs à partir des instances ActiveMQ avec Metricbeat.", - "home.tutorials.aerospikeMetrics.artifacts.application.label": "Découverte", + "home.tutorials.aerospikeMetrics.artifacts.application.label": "Discover", "home.tutorials.aerospikeMetrics.nameTitle": "Indicateurs Aerospike", "home.tutorials.aerospikeMetrics.shortDescription": "Collectez les indicateurs à partir des serveurs Aerospike avec Metricbeat.", "home.tutorials.apacheLogs.artifacts.dashboards.linkLabel": "Tableau de bord des logs Apache", @@ -3542,7 +3780,7 @@ "home.tutorials.cefLogs.artifacts.dashboards.linkLabel": "Tableau de bord d'aperçu du réseau CEF", "home.tutorials.cefLogs.nameTitle": "Logs CEF", "home.tutorials.cefLogs.shortDescription": "Collectez et analysez les logs à partir de Common Event Format (CEF) avec Filebeat.", - "home.tutorials.cephMetrics.artifacts.application.label": "Découverte", + "home.tutorials.cephMetrics.artifacts.application.label": "Discover", "home.tutorials.cephMetrics.nameTitle": "Indicateurs Ceph", "home.tutorials.cephMetrics.shortDescription": "Collectez les indicateurs à partir des serveurs Ceph avec Metricbeat.", "home.tutorials.checkpointLogs.artifacts.dashboards.linkLabel": "Application Security", @@ -3571,20 +3809,20 @@ "home.tutorials.common.auditbeatInstructions.install.osxTitle": "Télécharger et installer Auditbeat", "home.tutorials.common.auditbeatInstructions.install.rpmTitle": "Télécharger et installer Auditbeat", "home.tutorials.common.auditbeatInstructions.install.windowsTitle": "Télécharger et installer Auditbeat", - "home.tutorials.common.auditbeatInstructions.start.debTextPre": "La commande ''setup'' charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.auditbeatInstructions.start.debTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.auditbeatInstructions.start.debTitle": "Lancer Auditbeat", - "home.tutorials.common.auditbeatInstructions.start.osxTextPre": "La commande ''setup'' charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.auditbeatInstructions.start.osxTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.auditbeatInstructions.start.osxTitle": "Lancer Auditbeat", - "home.tutorials.common.auditbeatInstructions.start.rpmTextPre": "La commande ''setup'' charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.auditbeatInstructions.start.rpmTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.auditbeatInstructions.start.rpmTitle": "Lancer Auditbeat", - "home.tutorials.common.auditbeatInstructions.start.windowsTextPre": "La commande ''setup'' charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.auditbeatInstructions.start.windowsTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.auditbeatInstructions.start.windowsTitle": "Lancer Auditbeat", "home.tutorials.common.auditbeatStatusCheck.buttonLabel": "Vérifier les données", "home.tutorials.common.auditbeatStatusCheck.errorText": "Aucune donnée n'a encore été reçue.", "home.tutorials.common.auditbeatStatusCheck.successText": "Des données ont été reçues.", "home.tutorials.common.auditbeatStatusCheck.text": "Vérifier que des données sont reçues d'Auditbeat", "home.tutorials.common.auditbeatStatusCheck.title": "Statut", - "home.tutorials.common.cloudInstructions.passwordAndResetLink": "Où {passwordTemplate} est le mot de passe de l'utilisateur ''elastic''.\\{#config.cloud.profileUrl\\}\n Mot de passe oublié ? [Réinitialiser dans Elastic Cloud](\\{config.cloud.baseUrl\\}\\{config.cloud.deploymentUrl\\}/security).\n \\{/config.cloud.profileUrl\\}\n\n> **_Important :_** n'utilisez pas l'utilisateur \"elastic\" intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration.", + "home.tutorials.common.cloudInstructions.passwordAndResetLink": "Où {passwordTemplate} est le mot de passe de l'utilisateur `elastic`.\\{#config.cloud.profileUrl\\}\n Mot de passe oublié ? [Réinitialiser dans Elastic Cloud](\\{config.cloud.baseUrl\\}\\{config.cloud.deploymentUrl\\}/security).\n \\{/config.cloud.profileUrl\\}\n\n> **_Important :_** n'employez pas l'utilisateur `elastic` intégré pour sécuriser les clients dans un environnement de production. À la place, configurez des utilisateurs autorisés ou des clés d'API, et n'exposez pas les mots de passe dans les fichiers de configuration.", "home.tutorials.common.filebeat.cloudInstructions.gettingStarted.title": "Commencer", "home.tutorials.common.filebeat.premCloudInstructions.gettingStarted.title": "Commencer", "home.tutorials.common.filebeat.premInstructions.gettingStarted.title": "Commencer", @@ -3601,13 +3839,13 @@ "home.tutorials.common.filebeatInstructions.install.osxTitle": "Télécharger et installer Filebeat", "home.tutorials.common.filebeatInstructions.install.rpmTitle": "Télécharger et installer Filebeat", "home.tutorials.common.filebeatInstructions.install.windowsTitle": "Télécharger et installer Filebeat", - "home.tutorials.common.filebeatInstructions.start.debTextPre": "La commande ''setup'' charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.filebeatInstructions.start.debTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.filebeatInstructions.start.debTitle": "Lancer Filebeat", - "home.tutorials.common.filebeatInstructions.start.osxTextPre": "La commande ''setup'' charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.filebeatInstructions.start.osxTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.filebeatInstructions.start.osxTitle": "Lancer Filebeat", - "home.tutorials.common.filebeatInstructions.start.rpmTextPre": "La commande ''setup'' charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.filebeatInstructions.start.rpmTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.filebeatInstructions.start.rpmTitle": "Lancer Filebeat", - "home.tutorials.common.filebeatInstructions.start.windowsTextPre": "La commande ''setup'' charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.filebeatInstructions.start.windowsTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.filebeatInstructions.start.windowsTitle": "Lancer Filebeat", "home.tutorials.common.filebeatStatusCheck.buttonLabel": "Vérifier les données", "home.tutorials.common.filebeatStatusCheck.errorText": "Aucune donnée n'a encore été reçue de ce module.", @@ -3616,19 +3854,19 @@ "home.tutorials.common.functionbeat.cloudInstructions.gettingStarted.title": "Commencer", "home.tutorials.common.functionbeat.premCloudInstructions.gettingStarted.title": "Commencer", "home.tutorials.common.functionbeat.premInstructions.gettingStarted.title": "Commencer", - "home.tutorials.common.functionbeatAWSInstructions.textPost": "Où '''' et '''' sont vos informations d'identification et ''us-east-1'' est la région désirée.", + "home.tutorials.common.functionbeatAWSInstructions.textPost": "Où `` et `` sont vos informations d'identification et `us-east-1` est la région désirée.", "home.tutorials.common.functionbeatAWSInstructions.textPre": "Définissez vos informations d'identification AWS dans l'environnement :", "home.tutorials.common.functionbeatAWSInstructions.title": "Définir des informations d'identification AWS", "home.tutorials.common.functionbeatCloudInstructions.config.osxTitle": "Modifier la configuration", "home.tutorials.common.functionbeatCloudInstructions.config.windowsTitle": "Modifier la configuration", - "home.tutorials.common.functionbeatEnableOnPremInstructions.defaultTextPost": "Où '''' est le nom du groupe de logs à importer et '''' un nom de compartiment S3 valide pour la mise en œuvre du déploiement de Functionbeat.", + "home.tutorials.common.functionbeatEnableOnPremInstructions.defaultTextPost": "Où `` est le nom du groupe de logs à importer et `` un nom de compartiment S3 valide pour la mise en œuvre du déploiement de Functionbeat.", "home.tutorials.common.functionbeatEnableOnPremInstructions.defaultTitle": "Configurer le groupe de logs Cloudwatch", - "home.tutorials.common.functionbeatEnableOnPremInstructionsOSXLinux.textPre": "Modifiez les paramètres dans le fichier ''functionbeat.yml''.", + "home.tutorials.common.functionbeatEnableOnPremInstructionsOSXLinux.textPre": "Modifiez les paramètres dans le fichier `functionbeat.yml`.", "home.tutorials.common.functionbeatInstructions.config.osxTitle": "Configurer le cluster Elastic", "home.tutorials.common.functionbeatInstructions.config.windowsTitle": "Modifier la configuration", - "home.tutorials.common.functionbeatInstructions.deploy.osxTextPre": "Ceci permet d'installer Functionbeat en tant que fonction Lambda. La commande ''setup'' vérifie la configuration d'Elasticsearch et charge le modèle d'indexation Kibana. L'omission de cette commande est normalement sans risque.", + "home.tutorials.common.functionbeatInstructions.deploy.osxTextPre": "Ceci permet d'installer Functionbeat en tant que fonction Lambda. La commande `setup` vérifie la configuration d'Elasticsearch et charge le modèle d'indexation Kibana. L'omission de cette commande est normalement sans risque.", "home.tutorials.common.functionbeatInstructions.deploy.osxTitle": "Déployer Functionbeat en tant que fonction AWS Lambda", - "home.tutorials.common.functionbeatInstructions.deploy.windowsTextPre": "Ceci permet d'installer Functionbeat en tant que fonction Lambda. La commande ''setup'' vérifie la configuration d'Elasticsearch et charge le modèle d'indexation Kibana. L'omission de cette commande est normalement sans risque.", + "home.tutorials.common.functionbeatInstructions.deploy.windowsTextPre": "Ceci permet d'installer Functionbeat en tant que fonction Lambda. La commande `setup` vérifie la configuration d'Elasticsearch et charge le modèle d'indexation Kibana. L'omission de cette commande est normalement sans risque.", "home.tutorials.common.functionbeatInstructions.deploy.windowsTitle": "Déployer Functionbeat en tant que fonction AWS Lambda", "home.tutorials.common.functionbeatInstructions.install.linuxTitle": "Télécharger et installer Functionbeat", "home.tutorials.common.functionbeatInstructions.install.osxTitle": "Télécharger et installer Functionbeat", @@ -3645,16 +3883,16 @@ "home.tutorials.common.heartbeatCloudInstructions.config.osxTitle": "Modifier la configuration", "home.tutorials.common.heartbeatCloudInstructions.config.rpmTitle": "Modifier la configuration", "home.tutorials.common.heartbeatCloudInstructions.config.windowsTitle": "Modifier la configuration", - "home.tutorials.common.heartbeatEnableCloudInstructions.debTextPre": "Modifiez le paramètre ''heartbeat.monitors'' dans le fichier ''heartbeat.yml''.", + "home.tutorials.common.heartbeatEnableCloudInstructions.debTextPre": "Modifiez le paramètre `heartbeat.monitors` dans le fichier `heartbeat.yml`.", "home.tutorials.common.heartbeatEnableCloudInstructions.defaultTitle": "Modifier la configuration – Ajouter des moniteurs", - "home.tutorials.common.heartbeatEnableCloudInstructions.osxTextPre": "Modifiez le paramètre ''heartbeat.monitors'' dans le fichier ''heartbeat.yml''.", - "home.tutorials.common.heartbeatEnableCloudInstructions.rpmTextPre": "Modifiez le paramètre ''heartbeat.monitors'' dans le fichier ''heartbeat.yml''.", - "home.tutorials.common.heartbeatEnableCloudInstructions.windowsTextPre": "Modifiez le paramètre ''heartbeat.monitors'' dans le fichier ''heartbeat.yml''.", - "home.tutorials.common.heartbeatEnableOnPremInstructions.debTextPre": "Modifiez le paramètre ''heartbeat.monitors'' dans le fichier ''heartbeat.yml''.", + "home.tutorials.common.heartbeatEnableCloudInstructions.osxTextPre": "Modifiez le paramètre `heartbeat.monitors` dans le fichier `heartbeat.yml`.", + "home.tutorials.common.heartbeatEnableCloudInstructions.rpmTextPre": "Modifiez le paramètre `heartbeat.monitors` dans le fichier `heartbeat.yml`.", + "home.tutorials.common.heartbeatEnableCloudInstructions.windowsTextPre": "Modifiez le paramètre `heartbeat.monitors` dans le fichier `heartbeat.yml`.", + "home.tutorials.common.heartbeatEnableOnPremInstructions.debTextPre": "Modifiez le paramètre `heartbeat.monitors` dans le fichier `heartbeat.yml`.", "home.tutorials.common.heartbeatEnableOnPremInstructions.defaultTitle": "Modifier la configuration – Ajouter des moniteurs", - "home.tutorials.common.heartbeatEnableOnPremInstructions.osxTextPre": "Modifiez le paramètre ''heartbeat.monitors'' dans le fichier ''heartbeat.yml''.", - "home.tutorials.common.heartbeatEnableOnPremInstructions.rpmTextPre": "Modifiez le paramètre ''heartbeat.monitors'' dans le fichier ''heartbeat.yml''.", - "home.tutorials.common.heartbeatEnableOnPremInstructions.windowsTextPre": "Modifiez le paramètre ''heartbeat.monitors'' dans le fichier ''heartbeat.yml''.", + "home.tutorials.common.heartbeatEnableOnPremInstructions.osxTextPre": "Modifiez le paramètre `heartbeat.monitors` dans le fichier `heartbeat.yml`.", + "home.tutorials.common.heartbeatEnableOnPremInstructions.rpmTextPre": "Modifiez le paramètre `heartbeat.monitors` dans le fichier `heartbeat.yml`.", + "home.tutorials.common.heartbeatEnableOnPremInstructions.windowsTextPre": "Modifiez le paramètre `heartbeat.monitors` dans le fichier `heartbeat.yml`.", "home.tutorials.common.heartbeatInstructions.config.debTitle": "Modifier la configuration", "home.tutorials.common.heartbeatInstructions.config.osxTitle": "Modifier la configuration", "home.tutorials.common.heartbeatInstructions.config.rpmTitle": "Modifier la configuration", @@ -3663,13 +3901,13 @@ "home.tutorials.common.heartbeatInstructions.install.osxTitle": "Télécharger et installer Heartbeat", "home.tutorials.common.heartbeatInstructions.install.rpmTitle": "Télécharger et installer Heartbeat", "home.tutorials.common.heartbeatInstructions.install.windowsTitle": "Télécharger et installer Heartbeat", - "home.tutorials.common.heartbeatInstructions.start.debTextPre": "La commande ''setup'' charge le modèle d'indexation Kibana.", + "home.tutorials.common.heartbeatInstructions.start.debTextPre": "La commande `setup` charge le modèle d'indexation Kibana.", "home.tutorials.common.heartbeatInstructions.start.debTitle": "Lancer Heartbeat", - "home.tutorials.common.heartbeatInstructions.start.osxTextPre": "La commande ''setup'' charge le modèle d'indexation Kibana.", + "home.tutorials.common.heartbeatInstructions.start.osxTextPre": "La commande `setup` charge le modèle d'indexation Kibana.", "home.tutorials.common.heartbeatInstructions.start.osxTitle": "Lancer Heartbeat", - "home.tutorials.common.heartbeatInstructions.start.rpmTextPre": "La commande ''setup'' charge le modèle d'indexation Kibana.", + "home.tutorials.common.heartbeatInstructions.start.rpmTextPre": "La commande `setup` charge le modèle d'indexation Kibana.", "home.tutorials.common.heartbeatInstructions.start.rpmTitle": "Lancer Heartbeat", - "home.tutorials.common.heartbeatInstructions.start.windowsTextPre": "La commande ''setup'' charge le modèle d'indexation Kibana.", + "home.tutorials.common.heartbeatInstructions.start.windowsTextPre": "La commande `setup` charge le modèle d'indexation Kibana.", "home.tutorials.common.heartbeatInstructions.start.windowsTitle": "Lancer Heartbeat", "home.tutorials.common.heartbeatStatusCheck.buttonLabel": "Vérifier les données", "home.tutorials.common.heartbeatStatusCheck.errorText": "Aucune donnée n'a encore été reçue de Heartbeat.", @@ -3696,13 +3934,13 @@ "home.tutorials.common.metricbeatInstructions.install.osxTitle": "Télécharger et installer Metricbeat", "home.tutorials.common.metricbeatInstructions.install.rpmTitle": "Télécharger et installer Metricbeat", "home.tutorials.common.metricbeatInstructions.install.windowsTitle": "Télécharger et installer Metricbeat", - "home.tutorials.common.metricbeatInstructions.start.debTextPre": "La commande ''setup'' charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.metricbeatInstructions.start.debTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.metricbeatInstructions.start.debTitle": "Lancer Metricbeat", - "home.tutorials.common.metricbeatInstructions.start.osxTextPre": "La commande ''setup'' charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.metricbeatInstructions.start.osxTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.metricbeatInstructions.start.osxTitle": "Lancer Metricbeat", - "home.tutorials.common.metricbeatInstructions.start.rpmTextPre": "La commande ''setup'' charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.metricbeatInstructions.start.rpmTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.metricbeatInstructions.start.rpmTitle": "Lancer Metricbeat", - "home.tutorials.common.metricbeatInstructions.start.windowsTextPre": "La commande ''setup'' charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.metricbeatInstructions.start.windowsTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.metricbeatInstructions.start.windowsTitle": "Lancer Metricbeat", "home.tutorials.common.metricbeatStatusCheck.buttonLabel": "Vérifier les données", "home.tutorials.common.metricbeatStatusCheck.errorText": "Aucune donnée n'a encore été reçue de ce module.", @@ -3716,7 +3954,7 @@ "home.tutorials.common.winlogbeatCloudInstructions.config.windowsTitle": "Modifier la configuration", "home.tutorials.common.winlogbeatInstructions.config.windowsTitle": "Modifier la configuration", "home.tutorials.common.winlogbeatInstructions.install.windowsTitle": "Télécharger et installer Winlogbeat", - "home.tutorials.common.winlogbeatInstructions.start.windowsTextPre": "La commande \"setup\" charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", + "home.tutorials.common.winlogbeatInstructions.start.windowsTextPre": "La commande `setup` charge les tableaux de bord Kibana. Si les tableaux de bord sont déjà configurés, omettez cette commande.", "home.tutorials.common.winlogbeatInstructions.start.windowsTitle": "Lancer Winlogbeat", "home.tutorials.common.winlogbeatStatusCheck.buttonLabel": "Vérifier les données", "home.tutorials.common.winlogbeatStatusCheck.errorText": "Aucune donnée n'a encore été reçue.", @@ -3729,10 +3967,10 @@ "home.tutorials.corednsLogs.artifacts.dashboards.linkLabel": "Aperçu de [Filebeat CoreDNS]", "home.tutorials.corednsLogs.nameTitle": "Logs CoreDNS", "home.tutorials.corednsLogs.shortDescription": "Collectez et analysez les logs à partir des serveurs CoreDNS avec Filebeat.", - "home.tutorials.corednsMetrics.artifacts.application.label": "Découverte", + "home.tutorials.corednsMetrics.artifacts.application.label": "Discover", "home.tutorials.corednsMetrics.nameTitle": "Indicateurs CoreDNS", "home.tutorials.corednsMetrics.shortDescription": "Collectez les indicateurs à partir des serveurs CoreDNS avec Metricbeat.", - "home.tutorials.couchbaseMetrics.artifacts.application.label": "Découverte", + "home.tutorials.couchbaseMetrics.artifacts.application.label": "Discover", "home.tutorials.couchbaseMetrics.nameTitle": "Indicateurs Couchbase", "home.tutorials.couchbaseMetrics.shortDescription": "Collectez les indicateurs à partir des bases de données Couchbase avec Metricbeat.", "home.tutorials.couchdbMetrics.artifacts.dashboards.linkLabel": "Tableau de bord des indicateurs CouchDB", @@ -3747,13 +3985,13 @@ "home.tutorials.dockerMetrics.artifacts.dashboards.linkLabel": "Tableau de bord des indicateurs Docker", "home.tutorials.dockerMetrics.nameTitle": "Indicateurs Docker", "home.tutorials.dockerMetrics.shortDescription": "Collectez les indicateurs à partir des conteneurs Docker avec Metricbeat.", - "home.tutorials.dropwizardMetrics.artifacts.application.label": "Découverte", + "home.tutorials.dropwizardMetrics.artifacts.application.label": "Discover", "home.tutorials.dropwizardMetrics.nameTitle": "Indicateurs Dropwizard", "home.tutorials.dropwizardMetrics.shortDescription": "Collectez les indicateurs à partir des applications Dropwizard Java avec Metricbeat.", - "home.tutorials.elasticsearchLogs.artifacts.application.label": "Découverte", + "home.tutorials.elasticsearchLogs.artifacts.application.label": "Discover", "home.tutorials.elasticsearchLogs.nameTitle": "Logs Elasticsearch", "home.tutorials.elasticsearchLogs.shortDescription": "Collectez et analysez les logs à partir des clusters Elasticsearch avec Filebeat.", - "home.tutorials.elasticsearchMetrics.artifacts.application.label": "Découverte", + "home.tutorials.elasticsearchMetrics.artifacts.application.label": "Discover", "home.tutorials.elasticsearchMetrics.nameTitle": "Indicateurs Elasticsearch", "home.tutorials.elasticsearchMetrics.shortDescription": "Collectez les indicateurs à partir de clusters Elasticsearch avec Metricbeat.", "home.tutorials.envoyproxyLogs.artifacts.dashboards.linkLabel": "Aperçu d'Envoy Proxy", @@ -3761,7 +3999,7 @@ "home.tutorials.envoyproxyLogs.shortDescription": "Collectez et analysez les logs à partir d'Envoy Proxy avec Filebeat.", "home.tutorials.envoyproxyMetrics.nameTitle": "Indicateurs Envoy Proxy", "home.tutorials.envoyproxyMetrics.shortDescription": "Collectez les indicateurs à partir d'Envoy Proxy avec Metricbeat.", - "home.tutorials.etcdMetrics.artifacts.application.label": "Découverte", + "home.tutorials.etcdMetrics.artifacts.application.label": "Discover", "home.tutorials.etcdMetrics.nameTitle": "Indicateurs Etcd", "home.tutorials.etcdMetrics.shortDescription": "Collectez les indicateurs à partir des serveurs Etcd avec Metricbeat.", "home.tutorials.f5Logs.artifacts.dashboards.linkLabel": "Application Security", @@ -3785,13 +4023,13 @@ "home.tutorials.haproxyLogs.artifacts.dashboards.linkLabel": "Aperçu de HAProxy", "home.tutorials.haproxyLogs.nameTitle": "Logs HAProxy", "home.tutorials.haproxyLogs.shortDescription": "Collectez et analysez les logs à partir de serveurs HAProxy avec Filebeat.", - "home.tutorials.haproxyMetrics.artifacts.application.label": "Découverte", + "home.tutorials.haproxyMetrics.artifacts.application.label": "Discover", "home.tutorials.haproxyMetrics.nameTitle": "Indicateurs HAProxy", "home.tutorials.haproxyMetrics.shortDescription": "Collectez les indicateurs à partir de serveurs HAProxy avec Metricbeat.", "home.tutorials.ibmmqLogs.artifacts.dashboards.linkLabel": "Événements IBM MQ", "home.tutorials.ibmmqLogs.nameTitle": "Logs IBM MQ", "home.tutorials.ibmmqLogs.shortDescription": "Collectez et analysez les logs à partir d'IBM MQ avec Filebeat.", - "home.tutorials.ibmmqMetrics.artifacts.application.label": "Découverte", + "home.tutorials.ibmmqMetrics.artifacts.application.label": "Discover", "home.tutorials.ibmmqMetrics.nameTitle": "Indicateurs IBM MQ", "home.tutorials.ibmmqMetrics.shortDescription": "Collectez les indicateurs à partir d'instances IBM MQ avec Metricbeat.", "home.tutorials.icingaLogs.artifacts.dashboards.linkLabel": "Log principal Icinga", @@ -3818,13 +4056,13 @@ "home.tutorials.kafkaLogs.artifacts.dashboards.linkLabel": "Tableau de bord des logs Kafka", "home.tutorials.kafkaLogs.nameTitle": "Logs Kafka", "home.tutorials.kafkaLogs.shortDescription": "Collectez et analysez les logs à partir de serveurs Kafka avec Filebeat.", - "home.tutorials.kafkaMetrics.artifacts.application.label": "Découverte", + "home.tutorials.kafkaMetrics.artifacts.application.label": "Discover", "home.tutorials.kafkaMetrics.nameTitle": "Indicateurs Kafka", "home.tutorials.kafkaMetrics.shortDescription": "Collectez les indicateurs à partir de serveurs Kafka avec Metricbeat.", - "home.tutorials.kibanaLogs.artifacts.application.label": "Découverte", + "home.tutorials.kibanaLogs.artifacts.application.label": "Discover", "home.tutorials.kibanaLogs.nameTitle": "Logs Kibana", "home.tutorials.kibanaLogs.shortDescription": "Collectez et analysez les logs à partir de Kibana avec Filebeat.", - "home.tutorials.kibanaMetrics.artifacts.application.label": "Découverte", + "home.tutorials.kibanaMetrics.artifacts.application.label": "Discover", "home.tutorials.kibanaMetrics.nameTitle": "Indicateurs Kibana", "home.tutorials.kibanaMetrics.shortDescription": "Collectez les indicateurs à partir de Kibana avec Metricbeat.", "home.tutorials.kubernetesMetrics.artifacts.dashboards.linkLabel": "Tableau de bord des indicateurs Kubernetes", @@ -3833,10 +4071,10 @@ "home.tutorials.logstashLogs.artifacts.dashboards.linkLabel": "Logs Logstash", "home.tutorials.logstashLogs.nameTitle": "Logs Logstash", "home.tutorials.logstashLogs.shortDescription": "Collectez et analysez les logs principaux et lents à partir de Logstash avec Filebeat.", - "home.tutorials.logstashMetrics.artifacts.application.label": "Découverte", + "home.tutorials.logstashMetrics.artifacts.application.label": "Discover", "home.tutorials.logstashMetrics.nameTitle": "Indicateurs Logstash", "home.tutorials.logstashMetrics.shortDescription": "Collectez les indicateurs à partir de serveurs Logstash avec Metricbeat.", - "home.tutorials.memcachedMetrics.artifacts.application.label": "Découverte", + "home.tutorials.memcachedMetrics.artifacts.application.label": "Discover", "home.tutorials.memcachedMetrics.nameTitle": "Indicateurs Memcached", "home.tutorials.memcachedMetrics.shortDescription": "Collectez les indicateurs à partir de serveurs Memcached avec Metricbeat.", "home.tutorials.microsoftLogs.artifacts.dashboards.linkLabel": "Aperçu de Microsoft ATP", @@ -3851,13 +4089,13 @@ "home.tutorials.mongodbMetrics.artifacts.dashboards.linkLabel": "Tableau de bord des indicateurs MongoDB", "home.tutorials.mongodbMetrics.nameTitle": "Indicateurs MongoDB", "home.tutorials.mongodbMetrics.shortDescription": "Collectez les indicateurs à partir de serveurs MongoDB avec Metricbeat.", - "home.tutorials.mssqlLogs.artifacts.application.label": "Découverte", + "home.tutorials.mssqlLogs.artifacts.application.label": "Discover", "home.tutorials.mssqlLogs.nameTitle": "Logs Microsoft SQL Server", "home.tutorials.mssqlLogs.shortDescription": "Collectez et analysez les logs à partir d'instances Microsoft SQL Server avec Filebeat.", "home.tutorials.mssqlMetrics.artifacts.dashboards.linkLabel": "Tableau de bord des indicateurs Microsoft SQL Server", "home.tutorials.mssqlMetrics.nameTitle": "Indicateurs Microsoft SQL Server", "home.tutorials.mssqlMetrics.shortDescription": "Collectez les indicateurs à partir d'instances Microsoft SQL Server avec Metricbeat.", - "home.tutorials.muninMetrics.artifacts.application.label": "Découverte", + "home.tutorials.muninMetrics.artifacts.application.label": "Discover", "home.tutorials.muninMetrics.nameTitle": "Indicateurs Munin", "home.tutorials.muninMetrics.shortDescription": "Collectez les indicateurs à partir de serveurs Munin avec Metricbeat.", "home.tutorials.mysqlLogs.artifacts.dashboards.linkLabel": "Tableau de bord des logs MySQL", @@ -3892,7 +4130,7 @@ "home.tutorials.oktaLogs.shortDescription": "Collectez et analysez les logs à partir de l'API Okta avec Filebeat.", "home.tutorials.openmetricsMetrics.nameTitle": "Indicateurs OpenMetrics", "home.tutorials.openmetricsMetrics.shortDescription": "Collectez les indicateurs à partir d'un point de terminaison qui sert des indicateurs au format OpenMetrics avec Metricbeat.", - "home.tutorials.oracleMetrics.artifacts.application.label": "Découverte", + "home.tutorials.oracleMetrics.artifacts.application.label": "Discover", "home.tutorials.oracleMetrics.nameTitle": "Indicateurs Oracle", "home.tutorials.oracleMetrics.shortDescription": "Collectez les indicateurs à partir de serveurs Oracle avec Metricbeat.", "home.tutorials.osqueryLogs.artifacts.dashboards.linkLabel": "Pack de conformité osquery", @@ -3908,10 +4146,10 @@ "home.tutorials.postgresqlLogs.shortDescription": "Collectez et analysez les logs à partir de serveurs PostgreSQL avec Filebeat.", "home.tutorials.postgresqlMetrics.nameTitle": "Indicateurs PostgreSQL", "home.tutorials.postgresqlMetrics.shortDescription": "Collectez les indicateurs à partir de serveurs PostgreSQL avec Metricbeat.", - "home.tutorials.prometheusMetrics.artifacts.application.label": "Découverte", + "home.tutorials.prometheusMetrics.artifacts.application.label": "Discover", "home.tutorials.prometheusMetrics.nameTitle": "Indicateurs Prometheus", "home.tutorials.prometheusMetrics.shortDescription": "Collectez les indicateurs à partir d'exportateurs Prometheus avec Metricbeat.", - "home.tutorials.rabbitmqLogs.artifacts.application.label": "Découverte", + "home.tutorials.rabbitmqLogs.artifacts.application.label": "Discover", "home.tutorials.rabbitmqLogs.nameTitle": "Logs RabbitMQ", "home.tutorials.rabbitmqLogs.shortDescription": "Collectez et analysez les logs à partir de serveurs RabbitMQ avec Filebeat.", "home.tutorials.rabbitmqMetrics.artifacts.dashboards.linkLabel": "Tableau de bord des indicateurs RabbitMQ", @@ -3920,7 +4158,7 @@ "home.tutorials.radwareLogs.artifacts.dashboards.linkLabel": "Application Security", "home.tutorials.radwareLogs.nameTitle": "Logs Radware DefensePro", "home.tutorials.radwareLogs.shortDescription": "Collectez et analysez les logs à partir de Radware DefensePro avec Filebeat.", - "home.tutorials.redisenterpriseMetrics.artifacts.application.label": "Découverte", + "home.tutorials.redisenterpriseMetrics.artifacts.application.label": "Discover", "home.tutorials.redisenterpriseMetrics.nameTitle": "Indicateurs Redis Enterprise", "home.tutorials.redisenterpriseMetrics.shortDescription": "Collectez les indicateurs à partir de serveurs Redis Enterprise avec Metricbeat.", "home.tutorials.redisLogs.artifacts.dashboards.linkLabel": "Tableau de bord des logs Redis", @@ -3968,19 +4206,19 @@ "home.tutorials.uwsgiMetrics.artifacts.dashboards.linkLabel": "Tableau de bord des indicateurs uWSGI", "home.tutorials.uwsgiMetrics.nameTitle": "Indicateurs uWSGI", "home.tutorials.uwsgiMetrics.shortDescription": "Collectez les indicateurs à partir de serveurs uWSGI avec Metricbeat.", - "home.tutorials.vsphereMetrics.artifacts.application.label": "Découverte", + "home.tutorials.vsphereMetrics.artifacts.application.label": "Discover", "home.tutorials.vsphereMetrics.nameTitle": "Indicateurs vSphere", "home.tutorials.vsphereMetrics.shortDescription": "Collectez les indicateurs à partir de vSphere avec Metricbeat.", "home.tutorials.windowsEventLogs.artifacts.application.label": "Application SIEM", "home.tutorials.windowsEventLogs.nameTitle": "Logs des événements Windows", "home.tutorials.windowsEventLogs.shortDescription": "Collectez et analysez les logs à partir de Windows Event Logs avec WinLogBeat.", - "home.tutorials.windowsMetrics.artifacts.application.label": "Découverte", + "home.tutorials.windowsMetrics.artifacts.application.label": "Discover", "home.tutorials.windowsMetrics.nameTitle": "Indicateurs Windows", "home.tutorials.windowsMetrics.shortDescription": "Collectez les indicateurs à partir de Windows avec Metricbeat.", "home.tutorials.zeekLogs.artifacts.dashboards.linkLabel": "Aperçu de Zeek", "home.tutorials.zeekLogs.nameTitle": "Logs Zeek", "home.tutorials.zeekLogs.shortDescription": "Collectez et analysez les logs à partir de la sécurité réseau Zeek avec Filebeat.", - "home.tutorials.zookeeperMetrics.artifacts.application.label": "Découverte", + "home.tutorials.zookeeperMetrics.artifacts.application.label": "Discover", "home.tutorials.zookeeperMetrics.nameTitle": "Indicateurs Zookeeper", "home.tutorials.zookeeperMetrics.shortDescription": "Collectez les indicateurs à partir de serveurs Zookeeper avec Metricbeat.", "home.tutorials.zscalerLogs.artifacts.dashboards.linkLabel": "Application Security", @@ -3990,20 +4228,20 @@ "homePackages.sampleDataCard.addButtonAriaLabel": "Ajouter {datasetName}", "homePackages.sampleDataCard.addingButtonAriaLabel": "Ajout de {datasetName}", "homePackages.sampleDataCard.default.addButtonAriaLabel": "Ajouter {datasetName}", - "homePackages.sampleDataCard.default.unableToVerifyErrorMessage": "Impossible de vérifier le statut de l'ensemble de données. Erreur : {statusMsg}", - "homePackages.sampleDataCard.removeButtonAriaLabel": "Retirer {datasetName}", - "homePackages.sampleDataCard.removingButtonAriaLabel": "Retrait de {datasetName}", - "homePackages.sampleDataCard.viewDataButtonAriaLabel": "Afficher {datasetName}", + "homePackages.sampleDataCard.default.unableToVerifyErrorMessage": "Impossible de vérifier le statut de l'ensemble de données. Erreur : {statusMsg}.", + "homePackages.sampleDataCard.removeButtonAriaLabel": "Supprimer {datasetName}", + "homePackages.sampleDataCard.removingButtonAriaLabel": "Suppression de {datasetName}", + "homePackages.sampleDataCard.viewDataButtonAriaLabel": "Consulter {datasetName}", "homePackages.sampleDataSet.installedLabel": "{name} installé", - "homePackages.sampleDataSet.unableToInstallErrorMessage": "Impossible d'installer l'exemple d'ensemble de données : {name}", - "homePackages.sampleDataSet.unableToUninstallErrorMessage": "Impossible de désinstaller l'exemple d'ensemble de données : {name}", + "homePackages.sampleDataSet.unableToInstallErrorMessage": "Impossible d'installer l'exemple d’ensemble de données : {name}.", + "homePackages.sampleDataSet.unableToUninstallErrorMessage": "Impossible de désinstaller l'exemple d’ensemble de données : {name}.", "homePackages.sampleDataSet.uninstalledLabel": "{name} désinstallé", "homePackages.demoEnvironmentPanel.welcomeImageAlt": "Illustration des intégrations de données Elastic", "homePackages.demoEnvironmentPanel.welcomeMessage": "Parcourez des données réelles dans un environnement de démonstration où vous pourrez explorer des cas d'utilisation de recherche, d'observabilité et de sécurité comme le vôtre.", "homePackages.demoEnvironmentPanel.welcomeTitle": "Explorer notre environnement de démonstration en direct", "homePackages.sampleDataCard.addButtonLabel": "Ajouter des données", "homePackages.sampleDataCard.addingButtonLabel": "Ajout", - "homePackages.sampleDataCard.dashboardLinkLabel": "Tableau de bord", + "homePackages.sampleDataCard.dashboardLinkLabel": "Dashboard", "homePackages.sampleDataCard.default.addButtonLabel": "Ajouter des données", "homePackages.sampleDataCard.removeButtonLabel": "Supprimer", "homePackages.sampleDataCard.removingButtonLabel": "Suppression", @@ -4043,12 +4281,12 @@ "imageEmbeddable.triggers.imageClickTriggerTitle": "Clic sur l'image", "indexPatternEditor.pagingLabel": "Lignes par page : {perPage}", "indexPatternEditor.rollup.uncaughtError": "Erreur de vue de données de cumul : {error}", - "indexPatternEditor.status.matchAnyLabel.matchAnyDetail": "Votre modèle d'indexation peut correspondre à {sourceCount, plural, one {# source} many {# sources} other {# sources}}.", - "indexPatternEditor.status.notMatchLabel.allIndicesLabel": "{indicesLength, plural, one {# source} many {# sources} other {# sources}}", + "indexPatternEditor.status.matchAnyLabel.matchAnyDetail": "Votre modèle d'indexation peut correspondre à {sourceCount, plural, one {# source} other {# sources} }.", + "indexPatternEditor.status.notMatchLabel.allIndicesLabel": "{indicesLength, plural, one {# source} other {# sources} }", "indexPatternEditor.status.notMatchLabel.notMatchDetail": "Le modèle d'indexation spécifié ne correspond à aucun flux de données, index ni alias d'index. Vous pouvez faire correspondre {strongIndices}.", - "indexPatternEditor.status.partialMatchLabel.partialMatchDetail": "Votre modèle d'indexation ne correspond à aucun flux de données, index ni alias d'index, mais {strongIndices} {matchedIndicesLength, plural, one {est} many {sont} other {sont du mauvais type}} semblable(s).", - "indexPatternEditor.status.partialMatchLabel.strongIndicesLabel": "{matchedIndicesLength, plural, one {source} many {# sources} other {# sources}}", - "indexPatternEditor.status.successLabel.successDetail": "Votre modèle d'indexation peut correspondre à {sourceCount} {sourceCount, plural, one {source} many {sources organisationnelles} other {sources}}.", + "indexPatternEditor.status.partialMatchLabel.partialMatchDetail": "Votre modèle d'indexation ne correspond à aucun flux de données, index ni alias d'index, mais {strongIndices} {matchedIndicesLength, plural, one {est semblable} other {sont semblables} }.", + "indexPatternEditor.status.partialMatchLabel.strongIndicesLabel": "{matchedIndicesLength, plural, one {source} other {# sources} }", + "indexPatternEditor.status.successLabel.successDetail": "Votre modèle d'indexation correspond à {sourceCount} {sourceCount, plural, one {source} other {sources} }.", "indexPatternEditor.createIndex.noMatch": "Le nom doit correspondre à au moins un flux de données, index ou alias d'index.", "indexPatternEditor.createIndexPattern.stepTime.noTimeFieldOptionLabel": "--- Je ne souhaite pas utiliser le filtre temporel ---", "indexPatternEditor.dataView.unableSaveLabel": "Échec de l'enregistrement de la vue de données.", @@ -4116,16 +4354,16 @@ "indexPatternEditor.typeSelect.standardTitle": "Vue de données standard", "indexPatternEditor.validations.noSingleAstriskPattern": "Un seul astérisque \"*\" n’est pas un modèle d'indexation autorisé", "indexPatternEditor.validations.titleIsRequiredErrorMessage": "Un modèle d'indexation est requis.", - "indexPatternFieldEditor.date.momentLabel": "Modèle de format Moment.js (Par défaut : {defaultPattern})", - "indexPatternFieldEditor.defaultErrorMessage": "Une erreur s'est produite lors de l'utilisation de cette configuration de format : {message}", - "indexPatternFieldEditor.defaultFormatHeader": "Format (Par défaut : {defaultFormat})", - "indexPatternFieldEditor.deleteRuntimeField.confirmModal.deleteMultipleTitle": "Supprimer {count} champs", + "indexPatternFieldEditor.date.momentLabel": "Modèle de format Moment.js (par défaut : {defaultPattern})", + "indexPatternFieldEditor.defaultErrorMessage": "Une erreur s'est produite lors de l'utilisation de cette configuration de format : {message}.", + "indexPatternFieldEditor.defaultFormatHeader": "Format (par défaut : {defaultFormat})", + "indexPatternFieldEditor.deleteRuntimeField.confirmModal.deleteMultipleTitle": "Supprimer {count} champs", "indexPatternFieldEditor.editField.flyoutAriaLabel": "Modifier le champ {fieldName}", "indexPatternFieldEditor.editor.flyoutEditFieldSubtitle": "Vue de données : {patternName}", - "indexPatternFieldEditor.editor.form.source.scriptFieldHelpText": "Les champs d'exécution sans script récupèrent les valeurs de {source}. Si un champ n'existe pas dans _source, la requête de recherche ne renvoie aucune valeur. {learnMoreLink}", + "indexPatternFieldEditor.editor.form.source.scriptFieldHelpText": "Les champs d'exécution sans script récupèrent les valeurs de {source}. Si un champ n'existe pas dans _source, la recherche ne renvoie pas de valeur. {learnMoreLink}", "indexPatternFieldEditor.editor.form.valueDescription": "Définissez une valeur pour le champ au lieu de la récupérer à partir du champ portant le même nom dans {source}.", "indexPatternFieldEditor.fieldPreview.subTitle": "De : {documentSource}", - "indexPatternFieldEditor.number.numeralLabel": "Modèle de format Numeral.js (Par défaut : {defaultPattern})", + "indexPatternFieldEditor.number.numeralLabel": "Modèle de format Numeral.js (par défaut : {defaultPattern})", "indexPatternFieldEditor.cancelField.confirmationModal.cancelButtonLabel": "Annuler", "indexPatternFieldEditor.cancelField.confirmationModal.description": "Les modifications apportées à votre champ seront ignorées. Voulez-vous vraiment continuer ?", "indexPatternFieldEditor.cancelField.confirmationModal.title": "Ignorer les modifications", @@ -4263,42 +4501,45 @@ "indexPatternFieldEditor.url.urlTemplateLabel": "Modèle d'URL", "indexPatternFieldEditor.url.widthLabel": "Largeur", "indexPatternManagement.createDataView.emptyState.createAnywayTxt": "Vous pouvez également {link}", - "indexPatternManagement.dataViewTable.deleteButtonLabel": "Supprimer {selectedItems, number} {selectedItems, plural, one {Vue de données} many {Vues de données} other {Vues de données}}", - "indexPatternManagement.dataViewTable.deleteConfirmSummary": "Vous allez supprimer définitivement {count, number} {count, plural, one {vue de données} many {Les vues de données sont introuvables} other {vues de données}}.", - "indexPatternManagement.defaultFormatHeader": "Format (Par défaut : {defaultFormat})", + "indexPatternManagement.dataViewTable.deleteButtonLabel": "Supprimer {selectedItems, number} {selectedItems, plural, one {vue de données} other {vues de données} }", + "indexPatternManagement.dataViewTable.deleteConfirmSummary": "Vous allez supprimer de manière définitive {count, number} {count, plural, one {vue de données} other {vues de données} }.", + "indexPatternManagement.defaultFormatHeader": "Format (par défaut : {defaultFormat})", "indexPatternManagement.deleteFieldLabel": "Il est impossible de récupérer un champ supprimé.{separator}Voulez-vous vraiment continuer ?", "indexPatternManagement.editDataView.deleteWarning": "La vue de données {dataViewName} va être supprimée. Vous ne pouvez pas annuler cette action.", "indexPatternManagement.editDataView.deleteWarningWithNamespaces": "Supprimer la vue de données {dataViewName} de tous les espaces dans lesquels elle est partagée. Vous ne pouvez pas annuler cette action.", "indexPatternManagement.editHeader": "Modifier {fieldName}", "indexPatternManagement.editIndexPattern.couldNotLoadMessage": "La vue de données ayant l'ID {objectId} n'a pas pu être chargée. Essayez d'en créer une nouvelle.", "indexPatternManagement.editIndexPattern.deprecation": "Les champs scriptés sont déclassés. Utilisez {runtimeDocs} à la place.", - "indexPatternManagement.editIndexPattern.fields.conflictModal.description": "Le type du champ {fieldName} change entre les index et peut ne pas être disponible pour la recherche, les visualisations et d'autres analyses.", + "indexPatternManagement.editIndexPattern.fields.conflictModal.description": "Le type de champ {fieldName} change entre les index et peut ne pas être disponible pour la recherche, les visualisations et d'autres analyses.", "indexPatternManagement.editIndexPattern.list.DateHistogramDelaySummary": "retard : {delay},", "indexPatternManagement.editIndexPattern.list.dateHistogramSummary": "{aggName} (intervalle : {interval}, {delay} {time_zone})", "indexPatternManagement.editIndexPattern.list.histogramSummary": "{aggName} (intervalle : {interval})", - "indexPatternManagement.editIndexPattern.mappingConflictLabel": "{conflictFieldsLength, plural, one {Un champ est défini} many {# champs} other {# champs sont définis}} avec plusieurs types (chaîne, entier, etc.) dans les différents index qui correspondent à ce modèle. Vous pourrez peut-être utiliser ce ou ces champs en conflit dans certaines parties de Kibana, mais ils ne seront pas disponibles pour les fonctions qui nécessitent que Kibana connaisse leur type. Pour corriger ce problème, vous devrez réindexer vos données.", + "indexPatternManagement.editIndexPattern.mappingConflictLabel": "{conflictFieldsLength, plural, one {Un champ est défini} other {# champs sont définis}} avec plusieurs types (chaîne, entier, etc.) dans les différents index qui correspondent à ce modèle. Vous pourrez peut-être utiliser ce ou ces champs en conflit dans certaines parties de Kibana, mais ils ne seront pas disponibles pour les fonctions qui nécessitent que Kibana connaisse leur type. Pour corriger ce problème, vous devrez réindexer vos données.", "indexPatternManagement.editIndexPattern.scripted.deprecationLangLabel.deprecationLangDetail": "Les langages déclassés suivants sont en cours d'utilisation : {deprecatedLangsInUse}. La prise en charge de ces langages sera supprimée dans la prochaine version majeure de Kibana et d'Elasticsearch. Convertissez vos champs scriptés en {link} pour éviter tout problème.", "indexPatternManagement.editIndexPattern.tabs.relationshipsHeader": "Relations ({count})", - "indexPatternManagement.mappingConflictLabel.mappingConflictDetail": "{mappingConflict} Vous avez déjà un champ avec le nom {fieldName}. Si vous donnez le même nom à votre champ scripté, vous ne pourrez pas interroger les deux champs en même temps.", + "indexPatternManagement.mappingConflictLabel.mappingConflictDetail": "{mappingConflict} Vous avez déjà un champ nommé {fieldName}. Si vous donnez le même nom à votre champ scripté, vous ne pourrez pas interroger les deux champs en même temps.", "indexPatternManagement.script.accessWithLabel": "Accédez aux champs avec {code}.", "indexPatternManagement.scriptedFieldsDeprecatedBody": "Pour profiter de plus de flexibilité et de la prise en charge des scripts Painless, utilisez {runtimeDocs}.", - "indexPatternManagement.syntax.defaultLabel.defaultDetail": "Par défaut, les champs scriptés Kibana utilisent {painless}, un langage de script simple et sécurisé conçu spécifiquement pour être utilisé avec Elasticsearch. Pour accéder aux valeurs du document, utilisez le format suivant :", + "indexPatternManagement.syntax.defaultLabel.defaultDetail": "Par défaut, les champs scriptés Kibana emploient {painless}, un langage de script simple et sécurisé spécialement conçu pour Elasticsearch. Pour accéder aux valeurs du document, utilisez le format suivant :", "indexPatternManagement.syntax.lucene.commonLabel.commonDetail": "Vous venez d'une ancienne version de Kibana ? Les expressions {lucene} que vous connaissez et adorez sont toujours disponibles. Les expressions Lucene ressemblent beaucoup à du JavaScript, mais elles se limitent aux opérations arithmétiques de base, aux opérations au niveau du bit et aux opérations de comparaison.", "indexPatternManagement.syntax.lucene.operations.arithmeticLabel": "Opérateurs arithmétiques : {operators}", - "indexPatternManagement.syntax.lucene.operations.bitwiseLabel": "Opérateurs bit : {operators}", + "indexPatternManagement.syntax.lucene.operations.bitwiseLabel": "Opérateurs au niveau du bit : {operators}", "indexPatternManagement.syntax.lucene.operations.booleanLabel": "Opérateurs booléens (y compris l'opérateur ternaire) : {operators}", "indexPatternManagement.syntax.lucene.operations.comparisonLabel": "Opérateurs de comparaison : {operators}", "indexPatternManagement.syntax.lucene.operations.distanceLabel": "Fonctions de distance : {operators}", "indexPatternManagement.syntax.lucene.operations.mathLabel": "Fonctions mathématiques communes : {operators}", "indexPatternManagement.syntax.lucene.operations.miscellaneousLabel": "Fonctions diverses : {operators}", - "indexPatternManagement.syntax.lucene.operations.trigLabel": "Fonctions de la bibliothèque trigonométrique : {operators}", + "indexPatternManagement.syntax.lucene.operations.trigLabel": "Fonctions de bibliothèque trigonométrique : {operators}", "indexPatternManagement.syntax.painlessLabel.painlessDetail": "Painless est un langage puissant, mais facile à utiliser. Il donne accès à de nombreuses {javaAPIs}. Lisez-en plus sur sa {syntax} et découvrez tout ce que vous devez savoir en un rien de temps !", - "indexPatternManagement.warningCallOutLabel.callOutDetail": "Familiarisez-vous avec les {scripFields} et {scriptsInAggregation} avant d'utiliser cette fonctionnalité. Les champs scriptés peuvent être utilisés pour afficher et agréger les valeurs calculées. Dès lors, ils peuvent être très lents et, s'ils ne sont pas faits correctement, ils peuvent rendre Kibana inutilisable.", - "indexPatternManagement.warningLabel.warningDetail": "{language} est obsolète et la prise en charge sera supprimée dans la prochaine version majeure de Kibana et Elasticsearch. Nous recommandons d'utiliser {painlessLink} pour de nouveaux champs scriptés.", + "indexPatternManagement.warningCallOutLabel.callOutDetail": "Familiarisez-vous avec les {scripFields} et les {scriptsInAggregation} avant d'utiliser cette fonctionnalité. Les champs scriptés peuvent être utilisés pour afficher et agréger les valeurs calculées. Dès lors, ils peuvent être très lents et, s'ils ne sont pas faits correctement, ils peuvent rendre Kibana inutilisable.", + "indexPatternManagement.warningLabel.warningDetail": "{language} est déclassé et ne sera plus pris en charge dans la prochaine version majeure de Kibana et d'Elasticsearch. Nous recommandons d'utiliser {painlessLink} pour les nouveaux champs scriptés.", "indexPatternManagement.actions.cancelButton": "Annuler", "indexPatternManagement.actions.createButton": "Créer un champ", "indexPatternManagement.actions.deleteButton": "Supprimer", "indexPatternManagement.actions.saveButton": "Enregistrer le champ", + "indexPatternManagement.addDataPrompt.addDataText": "Ajouter des données", + "indexPatternManagement.addDataPrompt.dataViewExplanation": "Les vues de données identifient les données Elasticsearch que vous souhaitez explorer. Une fois vos données ajoutées à Elasticsearch, vous pouvez faire pointer des vues de données vers l'un ou plusieurs des indices, flux de données et alias d'index qui ont été créés. Ajoutez vos données dès maintenant pour lancer la recherche.", + "indexPatternManagement.addDataPrompt.toCreateAddData": "Pour créer une vue de données, ajoutez vos données à Elasticsearch", "indexPatternManagement.createDataView.emptyState.checkDataButton": "Rechercher de nouvelles données", "indexPatternManagement.createDataView.emptyState.createAnywayLink": "créer une vue de données par rapport à des index masqués, système ou par défaut.", "indexPatternManagement.createDataView.emptyState.haveData": "Vous pensez avoir déjà des données ?", @@ -4331,7 +4572,7 @@ "indexPatternManagement.defaultFormatDropDown": "- Par défaut -", "indexPatternManagement.deleteField.cancelButton": "Annuler", "indexPatternManagement.deleteField.deleteButton": "Supprimer", - "indexPatternManagement.deleteField.deletedHeader": "\"’{fieldName}\" supprimé", + "indexPatternManagement.deleteField.deletedHeader": "\"{fieldName}\" supprimé", "indexPatternManagement.deleteField.savedHeader": "\"{fieldName}\" enregistré", "indexPatternManagement.deleteFieldHeader": "Supprimer le champ \"{fieldName}\"", "indexPatternManagement.disabledCallOutHeader": "Scripts désactivés", @@ -4342,6 +4583,8 @@ "indexPatternManagement.editDataView.editTooltip": "Modifier", "indexPatternManagement.editDataView.fields.table.conflictType": "Conflit", "indexPatternManagement.editDataView.fields.table.runtimeIconTipText": "Ce champ existe uniquement dans la vue de données.", + "indexPatternManagement.editDataView.refreshAria": "Actualiser", + "indexPatternManagement.editDataView.refreshTooltip": "Actualiser la copie locale de la liste des champs de vues de données", "indexPatternManagement.editDataView.removeAria": "Supprimer la vue de données.", "indexPatternManagement.editDataView.removeTooltip": "Supprimer", "indexPatternManagement.editDataView.setDefaultAria": "Définir en tant que vue de données par défaut.", @@ -4427,11 +4670,12 @@ "indexPatternManagement.editIndexPattern.source.table.notMatchedLabel": "Le filtre source ne correspond à aucun champ connu.", "indexPatternManagement.editIndexPattern.source.table.saveAria": "Enregistrer", "indexPatternManagement.editIndexPattern.sourceLabel": "Les filtres de champ peuvent être utilisés pour exclure un ou plusieurs champs lors de la récupération d'un document. Cela se produit lors de l'affichage d'un document dans l'application Discover ou avec un tableau affichant les résultats d'une recherche enregistrée dans l'application Dashboard. Si vous avez des documents avec des champs de grande taille ou peu importants, il pourrait être utile de filtrer ces champs à ce niveau plus bas.", - "indexPatternManagement.editIndexPattern.sourcePlaceholder": "filtre de champ, accepte les caractères génériques (par ex. \"utilisateur*\" pour filtrer les champs commençant par \"utilisateur\")", + "indexPatternManagement.editIndexPattern.sourcePlaceholder": "filtre de champ, accepte les caractères génériques (par ex. `user*` pour filtrer les champs commençant par `user`)", "indexPatternManagement.editIndexPattern.tabs.fieldsHeader": "Champs", "indexPatternManagement.editIndexPattern.tabs.scriptedHeader": "Champs scriptés", "indexPatternManagement.editIndexPattern.tabs.sourceHeader": "Filtres de champ", "indexPatternManagement.editIndexPattern.timeFilterHeading": "Champ temporel :", + "indexPatternManagement.editIndexPattern.viewMappingConflictButton": "Afficher les conflits", "indexPatternManagement.fieldTypeConflict": "Conflit de type de champ", "indexPatternManagement.formatHeader": "Format", "indexPatternManagement.formatLabel": "Le formatage détermine la façon dont les valeurs sont affichées. La modification de ce paramètre peut également affecter la valeur du champ et la mise en surbrillance dans Discover.", @@ -4448,6 +4692,8 @@ "indexPatternManagement.nameErrorMessage": "Nom obligatoire", "indexPatternManagement.nameLabel": "Nom", "indexPatternManagement.namePlaceholder": "Nouveau champ scripté", + "indexPatternManagement.noDataViewsPrompt.learnMore": "Envie d'en savoir plus ?", + "indexPatternManagement.noDataViewsPrompt.readDocumentation": "Lisez les documents", "indexPatternManagement.objectsTable.relationships.columnTitleDescription": "Titre de l'objet enregistré", "indexPatternManagement.objectsTable.relationships.columnTitleName": "Titre", "indexPatternManagement.objectsTable.relationships.columnTypeDescription": "Type de l'objet enregistré", @@ -4488,10 +4734,12 @@ "indexPatternManagement.warningHeader": "Avertissement de déclassement :", "indexPatternManagement.warningLabel.painlessLinkLabel": "Painless", "inputControl.control.noIndexPatternTooltip": "Impossible de localiser l'ID du modèle d'indexation : {indexPatternId}.", - "inputControl.control.noValuesDisableTooltip": "Le filtrage se produit sur le champ \"{fieldName}\", qui n'existe sur aucun document dans le modèle d'indexation \"{indexPatternName}\". Sélectionnez un champ différent ou des documents d'index qui contiennent des valeurs pour ce champ.", - "inputControl.listControl.unableToFetchTooltip": "Impossible de récupérer les termes. Erreur : {errorMessage}", - "inputControl.rangeControl.unableToFetchTooltip": "Impossible de récupérer les valeurs min. et max. de la plage. Erreur : {errorMessage}", + "inputControl.control.noValuesDisableTooltip": "Le filtrage se produit sur le champ \"{fieldName}\", qui n'existe dans aucun document du modèle d'indexation \"{indexPatternName}\". Sélectionnez un champ différent ou des documents d'index qui contiennent des valeurs pour ce champ.", + "inputControl.listControl.unableToFetchTooltip": "Impossible de récupérer les termes. Erreur : {errorMessage}.", + "inputControl.rangeControl.unableToFetchTooltip": "Impossible de récupérer les valeurs min. et max. de la plage. Erreur : {errorMessage}.", "inputControl.control.notInitializedTooltip": "Le contrôle n'a pas été initialisé.", + "inputControl.deprecationBadgeAction.deprecationBadgeLabel": "Déclassé", + "inputControl.deprecationBadgeAction.deprecationWarningDescription": "Les contrôles d'entrée sont déclassés et seront supprimés dans une prochaine version. Utilisez les nouveaux contrôles pour filtrer les données de votre tableau de bord et interagir avec elles.", "inputControl.editor.controlEditor.controlLabel": "Contrôler l'étiquette", "inputControl.editor.controlEditor.moveControlDownAriaLabel": "Abaisser le contrôle", "inputControl.editor.controlEditor.moveControlUpAriaLabel": "Remonter le contrôle", @@ -4531,17 +4779,17 @@ "inputControl.vis.listControl.partialResultsWarningMessage": "La liste des termes peut être incomplète, car la requête prend trop de temps. Ajustez les paramètres de saisie semi-automatique dans le fichier kibana.yml pour obtenir des résultats complets.", "inputControl.vis.listControl.selectPlaceholder": "Sélectionner…", "inputControl.vis.listControl.selectTextPlaceholder": "Sélectionner…", - "inspector.requests.clusters.shards.flyoutTitle": "Échec de {failedShardCount} {failedShardCount, plural, one {partition} many {partitions} other {partitions}}", - "inspector.requests.clusters.shards.openShardFailureFlyoutButtonLabel": "Afficher l'échec de {failedShardCount} {failedShardCount, plural, one {partition} many {partitions} other {partitions}}", - "inspector.requests.clusters.shards.successfulShardsLabel": "{successful} {total} réussie(s)", + "inspector.requests.clusters.shards.flyoutTitle": "{failedShardCount} {failedShardCount, plural, one {partition a échoué} other {partitions ont échoué}}", + "inspector.requests.clusters.shards.openShardFailureFlyoutButtonLabel": "Voir {failedShardCount} {failedShardCount, plural, one {la partition a échoué} other {les partitions ont échoué}}", + "inspector.requests.clusters.shards.successfulShardsLabel": "{successful} réussie(s) sur {total}", "inspector.requests.clusters.shards.totalShardsLabel": "Nombre total de partitions : {total}", - "inspector.requests.clusters.table.responseTimeInMilliseconds": "{responseTime} ms", - "inspector.requests.clusters.totalClustersLabel": "{total} {total, plural, one {cluster} many {clusters} other {clusters}}", + "inspector.requests.clusters.table.responseTimeInMilliseconds": "{responseTime}ms", + "inspector.requests.clusters.totalClustersLabel": "{total} {total, plural, one {cluster} other {clusters}}", "inspector.requests.requestTimeLabel": "{requestTime} ms", - "inspector.requests.requestWasMadeDescription": "{requestsCount, plural, one {# demande effectuée} many {# demandes effectuées} other {# demandes effectuées}} {failedRequests}", - "inspector.requests.requestWasMadeDescription.requestHadFailureText": ", {failedCount} en échec", + "inspector.requests.requestWasMadeDescription": "{requestsCount, plural, one {# requête a été effectuée} other {# requêtes ont été effectuées} }{failedRequests}", + "inspector.requests.requestWasMadeDescription.requestHadFailureText": ", {failedCount} a/ont échoué.", "inspector.requests.searchSessionId": "ID de la session de recherche : {searchSessionId}", - "inspector.view": "Afficher : {viewName}", + "inspector.view": "Vue : {viewName}", "inspector.closeButton": "Fermer l'inspecteur", "inspector.reqTimestampDescription": "Heure de début de la requête", "inspector.reqTimestampKey": "Horodatage de la requête", @@ -4562,9 +4810,11 @@ "inspector.requests.clusters.table.expandRow": "Développer la ligne du tableau pour afficher les détails de cluster", "inspector.requests.clusters.table.localClusterDisplayName": "Cluster local", "inspector.requests.clusters.table.nameLabel": "Nom", + "inspector.requests.clusters.table.noItemsFound": "Aucun cluster trouvé", "inspector.requests.clusters.table.responseTimeLabel": "Temps de réponse", "inspector.requests.clusters.table.statusLabel": "Statut", "inspector.requests.clusters.timedOutMessage": "Requête expirée avant achèvement. Les résultats peuvent être incomplets ou vides.", + "inspector.requests.clusters.view.statusFilterLabel": "Statut", "inspector.requests.clustersTabLabel": "Clusters et partitions", "inspector.requests.copyToClipboardLabel": "Copier dans le presse-papiers", "inspector.requests.descriptionRowIconAriaLabel": "Description", @@ -4584,20 +4834,20 @@ "inspector.requests.responseTabLabel": "Réponse", "inspector.requests.statisticsTabLabel": "Statistiques", "inspector.title": "Inspecteur", - "interactiveSetup.certificatePanel.fingerprint": "Empreinte numérique (SHA-256) : {fingerprint}", + "interactiveSetup.certificatePanel.fingerprint": "Empreinte digitale (SHA-256) : {fingerprint}", "interactiveSetup.certificatePanel.issuer": "Émis par : {issuer}", "interactiveSetup.certificatePanel.validFrom": "Émis le : {validFrom}", "interactiveSetup.certificatePanel.validTo": "Expire le : {validTo}", - "interactiveSetup.clusterAddressForm.submitButton": "{isSubmitting, select, true {Vérification de l''adresse…} other {Vérifier l''adresse}}", - "interactiveSetup.clusterConfigurationForm.submitButton": "{isSubmitting, select, true {Configuration d''Elastic…} other {Configurer Elastic}}", - "interactiveSetup.enrollmentTokenForm.submitButton": "{isSubmitting, select, true {Configuration d''Elastic…} other {Configurer Elastic}}", + "interactiveSetup.clusterAddressForm.submitButton": "{isSubmitting, select, true{Vérification de l'adresse…} other{Vérifier l'adresse}}", + "interactiveSetup.clusterConfigurationForm.submitButton": "{isSubmitting, select, true{Configuration d'Elastic…} other{Configurer Elastic}}", + "interactiveSetup.enrollmentTokenForm.submitButton": "{isSubmitting, select, true{Configuration d'Elastic…} other{Configurer Elastic}}", "interactiveSetup.forgotPasswordPopover.helpText": "Pour réinitialiser le mot de passe de l'utilisateur {username}, exécutez la commande suivante à partir du répertoire d'installation Elasticsearch :", "interactiveSetup.singleCharsField.digitLabel": "Chiffre {index}", "interactiveSetup.submitErrorCallout.compatibilityFailureErrorDescription": "Le cluster Elasticsearch (v{elasticsearchVersion}) est incompatible avec cette version de Kibana (v{kibanaVersion}).", "interactiveSetup.submitErrorCallout.kibanaConfigFailureErrorDescription": "Réessayez ou mettez à jour le fichier {config} manuellement.", "interactiveSetup.submitErrorCallout.kibanaConfigNotWritableErrorDescription": "Vérifiez les autorisations du fichier et assurez-vous que {config} peut être écrit par le processus Kibana.", "interactiveSetup.verificationCodeForm.codeDescription": "Copiez le code à partir du serveur Kibana ou exécutez {command} pour le récupérer.", - "interactiveSetup.verificationCodeForm.submitButton": "{isSubmitting, select, true {Vérification en cours…} other {Vérifier}}", + "interactiveSetup.verificationCodeForm.submitButton": "{isSubmitting, select, true{Vérification…} other{Vérifier}}", "interactiveSetup.app.notReady": "Le serveur Kibana n’est pas encore prêt.", "interactiveSetup.app.pageTitle": "Configurez Elastic pour commencer", "interactiveSetup.certificateChain.cancelButton": "Fermer", @@ -4652,24 +4902,24 @@ "interactiveSetup.verificationCodeForm.submitErrorTitle": "Vérification du code impossible", "interactiveSetup.verificationCodeForm.title": "Vérification requise", "kbnConfig.deprecations.conflictSetting.manualStepOneMessage": "Assurez-vous que \"{fullNewPath}\" contient la valeur correcte dans le fichier de configuration, l'indicateur CLI ou la variable d'environnement (dans Docker uniquement).", - "kbnConfig.deprecations.conflictSetting.manualStepTwoMessage": "Retirez \"{fullOldPath}\" de la configuration.", + "kbnConfig.deprecations.conflictSetting.manualStepTwoMessage": "Supprimez \"{fullOldPath}\" de la configuration.", "kbnConfig.deprecations.conflictSettingMessage": "Le paramètre \"{fullOldPath}\" a été remplacé par \"{fullNewPath}\". Cependant, les deux clés sont présentes. Ignorer \"{fullOldPath}\"", - "kbnConfig.deprecations.deprecatedSetting.manualStepOneMessage": "Retirez \"{fullPath}\" du fichier de configuration Kibana, de l'indicateur CLI ou de la variable d'environnement (dans Docker uniquement) avant de passer à {removeBy}.", + "kbnConfig.deprecations.deprecatedSetting.manualStepOneMessage": "Retirez \"{fullPath}\" dans le fichier de configuration Kibana, l'indicateur CLI ou la variable d'environnement (dans Docker uniquement) avant de passer à {removeBy}.", "kbnConfig.deprecations.deprecatedSettingMessage": "La configuration de \"{fullPath}\" est déclassée et sera supprimée dans {removeBy}.", "kbnConfig.deprecations.deprecatedSettingTitle": "Le paramètre \"{deprecationPath}\" est déclassé", "kbnConfig.deprecations.replacedSetting.manualStepOneMessage": "Remplacez \"{fullOldPath}\" par \"{fullNewPath}\" dans le fichier de configuration Kibana, l'indicateur CLI ou la variable d'environnement (dans Docker uniquement).", - "kbnConfig.deprecations.replacedSettingMessage": "Le paramètre \"{fullOldPath}\" a été remplacé par \"{fullNewPath}\"", - "kbnConfig.deprecations.unusedSetting.manualStepOneMessage": "Retirez \"{fullPath}\" du fichier de configuration Kibana, de l'indicateur CLI ou de la variable d'environnement (dans Docker uniquement).", - "kbnConfig.deprecations.unusedSettingMessage": "Vous n'avez plus besoin de configurer \"{fullPath}\".", + "kbnConfig.deprecations.replacedSettingMessage": "Le paramètre \"{fullOldPath}\" a été remplacé par \"{fullNewPath}\".", + "kbnConfig.deprecations.unusedSetting.manualStepOneMessage": "Retirez \"{fullPath}\" dans le fichier de configuration Kibana, l'indicateur CLI ou la variable d'environnement (dans Docker uniquement).", + "kbnConfig.deprecations.unusedSettingMessage": "Vous n’avez plus besoin de configurer \"{fullPath}\".", "kibana_utils.stateManagement.stateHash.unableToStoreHistoryInSessionErrorMessage": "Kibana n'est pas en mesure de stocker des éléments d'historique dans votre session, car le stockage est arrivé à saturation et il ne semble pas y avoir d'éléments pouvant être supprimés sans risque.\n\nCe problème peut généralement être corrigé en passant à un nouvel onglet, mais il peut être causé par un problème plus important. Si ce message s'affiche régulièrement, veuillez nous en faire part sur {gitHubIssuesUrl}.", "kibana_utils.history.savedObjectIsMissingNotificationMessage": "L'objet enregistré est manquant.", "kibana_utils.stateManagement.stateHash.unableToRestoreUrlErrorMessage": "Impossible de restaurer complètement l'URL. Assurez-vous d'utiliser la fonctionnalité de partage.", "kibana_utils.stateManagement.url.restoreUrlErrorTitle": "Erreur lors de la restauration de l'état depuis l'URL.", "kibana_utils.stateManagement.url.saveStateInUrlErrorTitle": "Erreur lors de l'enregistrement de l'état dans l'URL.", - "kibana-react.dualRangeControl.outsideOfRangeErrorMessage": "Les valeurs doivent être comprises entre {min} et {max}, inclus", + "kibana-react.dualRangeControl.outsideOfRangeErrorMessage": "Les valeurs doivent être comprises entre {min} et {max}, inclus.", "kibana-react.noDataPage.cantDecide": "Vous ne savez pas quoi utiliser ? {link}", "kibana-react.noDataPage.intro": "Ajoutez vos données pour commencer, ou {link} sur {solution}.", - "kibana-react.noDataPage.welcomeTitle": "Bienvenue dans Elastic {solution} !", + "kibana-react.noDataPage.welcomeTitle": "Bienvenue dans Elastic {solution}.", "kibana-react.solutionNav.mobileTitleText": "Menu {solutionName}", "kibana-react.dualRangeControl.maxInputAriaLabel": "Maximum de la plage", "kibana-react.dualRangeControl.minInputAriaLabel": "Minimum de la plage", @@ -4693,11 +4943,14 @@ "kibana-react.solutionNav.openLabel": "Ouvrir la navigation latérale", "languageDocumentationPopover.header": "Référence de {language}", "languageDocumentationPopover.tooltip": "Référence de {lang}", + "languageDocumentationPopover.documentationLinkLabel": "Voir toute la documentation", "languageDocumentationPopover.searchPlaceholder": "Recherche", "links.contentManagement.saveModalTitle": "Enregistrer le panneau {contentId} dans la bibliothèque", + "links.editor.deleteLinkTitle": "Supprimer le lien {label}", + "links.editor.editLinkTitle.hasLabel": "Modifier le lien {label}", "links.externalLink.editor.urlFormatError": "Format non valide. Exemple : {exampleUrl}", "links.dashboardLink.description": "Accéder au tableau de bord", - "links.dashboardLink.displayName": "Tableau de bord", + "links.dashboardLink.displayName": "Dashboard", "links.dashboardLink.editor.currentDashboardLabel": "Actuel", "links.dashboardLink.editor.dashboardComboBoxPlaceholder": "Rechercher un tableau de bord", "links.dashboardLink.editor.dashboardErrorLabel": "Erreur lors de la récupération du tableau de bord", @@ -4735,15 +4988,18 @@ "links.panelEditor.saveToLibrarySwitchLabel": "Enregistrer dans la bibliothèque", "links.panelEditor.saveToLibrarySwitchTooltip": "Enregistrer ce panneau de liens dans la bibliothèque afin de pouvoir l'ajouter facilement à d'autres tableaux de bord.", "links.panelEditor.technicalPreviewLabel": "Version d'évaluation technique", - "links.panelEditor.technicalPreviewTooltip": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera au maximum de corriger tout problème, mais les fonctionnalités en version d'évaluation technique ne sont pas soumises aux accords de niveau de service d'assistance des fonctionnalités officielles en disponibilité générale.", + "links.panelEditor.technicalPreviewTooltip": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera de corriger tout problème, mais les fonctionnalités des versions d'évaluation technique ne sont pas soumises aux SLA de support des fonctionnalités officielles en disponibilité générale.", "links.panelEditor.titleInputLabel": "Titre", "links.saveDuplicateRejectedDescription": "La confirmation d'enregistrement avec un doublon de titre a été rejetée.", "links.visTypeAlias.title": "Liens", "management.landing.header": "Bienvenue dans Gestion de la Suite {version}", - "management.settings.defaultValueText": "Par défaut : {value}", + "management.settings.defaultValueText": "Valeur par défaut : {value}", + "management.settings.emptyState.noSearchResultText": "Aucun paramètre trouvé pour {queryText}. {clearSearch}", "management.settings.field.changeImageLinkAriaLabel": "Modifier {ariaLabel}", "management.settings.field.deprecationClickAreaLabel": "Cliquez ici pour afficher la documentation de déclassement pour {name}.", - "management.settings.field.resetToDefaultLinkAriaLabel": "Réinitialiser {ariaLabel} à la valeur par défaut", + "management.settings.field.resetToDefaultLinkAriaLabel": "Réinitialiser {ariaLabel} aux valeurs par défaut", + "management.settings.fieldCategory.searchResultText": "Les termes de la recherche masquent {settingsCount} paramètres {clearSearch}", + "management.settings.form.countOfSettingsChanged": "{unsavedCount} {unsavedCount, plural, one {paramètre non enregistré} other {paramètres non enregistrés} }{hiddenCount, plural, =0 {masqué} other {, # masqués} }.", "management.breadcrumb": "Gestion de la Suite", "management.landing.subhead": "Gérez vos index, vues de données, objets enregistrés, paramètres Kibana et plus encore.", "management.landing.text": "Vous trouverez une liste complète des applications dans le menu de gauche.", @@ -4759,11 +5015,11 @@ "management.landing.withCardNavigation.ingestPipelinesDescription": "Supprimez des champs, extrayez des valeurs et réalisez des transformations de vos données.", "management.landing.withCardNavigation.maintenanceWindowsDescription": "Supprimez les notifications de règles pour les périodes où il est prévu d'effectuer des maintenances, des mises à jour et d'autres tâches liées au système.", "management.landing.withCardNavigation.mlDescription": "Identifiez, analysez et traitez vos données à l'aide de techniques perfectionnées d'analyses.", - "management.landing.withCardNavigation.objectsDescription": "Gérer les vues enregistrées de vos tableaux de bord, cartes et données ainsi que vos workpads Canvas.", + "management.landing.withCardNavigation.objectsDescription": "Gérez les tableaux de bords, les visualisations, les cartes et les vues de données que vous avez enregistrés.", "management.landing.withCardNavigation.otherTitle": "Autre", "management.landing.withCardNavigation.pageDescription": "Gérez les données et les index, supervisez les règles et les connecteurs, organisez les objets et les fichiers enregistrés et créez des clés d'API dans un emplacement central.", "management.landing.withCardNavigation.pageTitle": "Gestion", - "management.landing.withCardNavigation.reportingDescription": "Gérez les rapports PDF, PNG et CSV générés.", + "management.landing.withCardNavigation.reportingDescription": "Gérez les rapports CSV générés.", "management.landing.withCardNavigation.rulesDescription": "Définissez à quel moment générer des alertes et des notifications.", "management.landing.withCardNavigation.settingsDescription": "Contrôlez les comportements des projets, tels que l'affichage des dates et le tri par défaut.", "management.landing.withCardNavigation.tagsDescription": "Organisez, recherchez et filtrez vos objets enregistrés en fonction de critères spécifiques.", @@ -4781,24 +5037,37 @@ "management.sections.section.title": "Sécurité", "management.sections.stackTip": "Gérez votre licence et mettez la Suite à niveau.", "management.sections.stackTitle": "Suite", - "management.settings.categoryNames.discoverLabel": "Découverte", + "management.settings.advancedSettingsLabel": "Paramètres avancés", + "management.settings.badge.readOnly.text": "Lecture seule", + "management.settings.badge.readOnly.tooltip": "Impossible d’enregistrer les paramètres avancés", + "management.settings.categoryNames.accessibilityLabel": "Accessibilité", + "management.settings.categoryNames.autocompleteLabel": "Saisie semi-automatique", + "management.settings.categoryNames.bannerLabel": "Bannière", + "management.settings.categoryNames.devToolsLabel": "Outils de développeur", + "management.settings.categoryNames.discoverLabel": "Discover", "management.settings.categoryNames.enterpriseSearchLabel": "Enterprise Search", "management.settings.categoryNames.generalLabel": "Général", "management.settings.categoryNames.machineLearningLabel": "Machine Learning", "management.settings.categoryNames.notificationsLabel": "Notifications", "management.settings.categoryNames.observabilityLabel": "Observabilité", + "management.settings.categoryNames.presentationLabLabel": "Ateliers de présentation", "management.settings.categoryNames.reportingLabel": "Reporting", + "management.settings.categoryNames.rollupsLabel": "Cumuls", "management.settings.categoryNames.searchLabel": "Recherche", "management.settings.categoryNames.securitySolutionLabel": "Solution de sécurité", "management.settings.categoryNames.timelionLabel": "Timelion", - "management.settings.categoryNames.visualizationsLabel": "Visualisations", + "management.settings.categoryNames.visualizationsLabel": "Visualisation", + "management.settings.categorySearchLabel": "Catégorie", "management.settings.changeImageLinkText": "Modifier l'image", "management.settings.customSettingTooltip": "Paramètre personnalisé", + "management.settings.emptyState.clearNoSearchResultText": "(effacer la recherche)", + "management.settings.field.codeEditorSyntaxErrorMessage": "Syntaxe JSON non valide", "management.settings.field.customSettingAriaLabel": "Paramètre personnalisé", "management.settings.field.imageChangeErrorMessage": "Impossible d’enregistrer l'image", "management.settings.field.invalidIconLabel": "Non valide", "management.settings.field.settingIsUnsaved": "Le paramètre n'est actuellement pas enregistré.", "management.settings.field.unsavedIconLabel": "Non enregistré", + "management.settings.fieldCategory.clearSearchResultText": "(effacer la recherche)", "management.settings.fieldInput.color.invalidMessage": "Fournir une valeur de couleur valide", "management.settings.form.cancelButtonLabel": "Annuler les modifications", "management.settings.form.requiresPageReloadToastButtonLabel": "Actualiser la page", @@ -4806,22 +5075,216 @@ "management.settings.form.saveButtonLabel": "Enregistrer les modifications", "management.settings.form.saveButtonTooltipWithInvalidChanges": "Corrigez les paramètres non valides avant d'enregistrer.", "management.settings.form.saveErrorMessage": "Enregistrement impossible", + "management.settings.globalCalloutSubtitle": "Les modifications seront appliquées à tous les utilisateurs dans l'ensemble des espaces. Cela inclut les utilisateurs Kibana natifs et les utilisateurs qui se connectent via l'authentification unique.", + "management.settings.globalCalloutTitle": "Les modifications auront une incidence sur tous les paramètres utilisateur dans l'ensemble des espaces", + "management.settings.globalSettingsTabTitle": "Paramètres généraux", "management.settings.helpText": "Ce paramètre est défini par le serveur Kibana et ne peut pas être modifié.", "management.settings.offLabel": "Désactivé", "management.settings.onLabel": "Activé", "management.settings.resetToDefaultLinkText": "Réinitialiser à la valeur par défaut", + "management.settings.searchBar.unableToParseQueryErrorMessage": "Impossible d'analyser la requête", + "management.settings.searchBarPlaceholder": "Rechercher dans les paramètres avancés", + "management.settings.spaceCalloutSubtitle": "Les modifications seront uniquement appliquées à l'espace actuel. Ces paramètres sont destinés aux utilisateurs avancés, car des configurations incorrectes peuvent avoir une incidence négative sur des aspects de Kibana.", + "management.settings.spaceCalloutTitle": "Les modifications affecteront l'espace actuel.", + "management.settings.spaceSettingsTabTitle": "Paramètres de l'espace", "monaco.esql.autocomplete.matchingFieldDefinition": "Utiliser pour correspondance avec {matchingField} de la politique", - "monaco.esql.autocomplete.policyDefinition": "Politique définie selon {count, plural, one {index} many {index système non migrés} other {des index}} : {indices}", - "monaco.esql.autocomplete.constantDefinition": "Variable définie par l'utilisateur", + "monaco.esql.divide.warning.divideByZero": "Impossible de diviser par zéro : {left}/{right}", + "monaco.esql.divide.warning.logOfNegativeValue": "Le log d'un nombre négatif est null : {value}", + "monaco.esql.divide.warning.zeroModule": "Le module par zéro peut renvoyer une valeur null : {left} % {right}", + "monaco.esql.quickfix.replaceWithSolution": "Vouliez-vous dire {solution} ?", + "monaco.esql.validation.expectedConstantValue": "L'argument de [{fn}] doit être une constante, reçu [{given}]", + "monaco.esql.validation.missingFunction": "Fonction inconnue [{name}]", + "monaco.esql.validation.noCombinationOfAggAndNonAggValues": "Impossible de combiner les valeurs agrégées et non agrégées dans [STATS], [{expression}] trouvé", + "monaco.esql.validation.noNestedArgumentSupport": "Les paramètres de la fonction agrégée doivent être un attribut, un littéral ou une fonction non agrégée ; trouvé [{name}] de type [{argType}]", + "monaco.esql.validation.statsNoAggFunction": "Au moins une fonction d'agrégation requise dans [STATS], [{expression}] trouvé", + "monaco.esql.validation.typeOverwrite": "La colonne [{field}] de type {fieldType} a été écrasée par un nouveau type : {newType}", + "monaco.esql.validation.unknowAggregateFunction": "Attendait une fonction ou un groupe agrégé mais a obtenu [{value}] de type [{type}]", + "monaco.esql.validation.unknownColumn": "Colonne inconnue[{name}]", + "monaco.esql.validation.unknownIndex": "Index inconnu [{name}]", + "monaco.esql.validation.unknownOption": "Option non valide pour {command} : [{option}]", + "monaco.esql.validation.unknownPolicy": "Politique [{name}] inconnue", + "monaco.esql.validation.unsupportedColumnTypeForCommand": "{command} ne prend en charge que les valeurs {type} {typeCount, plural, one {type} other {types}}, [{column}] de type [{givenType}] trouvé", + "monaco.esql.validation.unsupportedFieldType": "Le champ [{field}] ne peut pas être récupéré, il n'est pas pris en charge ou n'est pas indexé ; renvoi de valeur null", + "monaco.esql.validation.unsupportedFunctionForCommand": "{command} n'est pas compatible avec la fonction {name}", + "monaco.esql.validation.unsupportedFunctionforCommandOption": "{command} {option} n'est pas compatible avec la fonction {name}", + "monaco.esql.validation.unsupportedSetting": "Paramètre non pris en charge [{setting}], [{expected}] attendu", + "monaco.esql.validation.unsupportedSettingValue": "Valeur [{value}] non reconnue pour {command}, le mode doit être l'un de [{expected}]", + "monaco.esql.validation.unsupportedTypeForCommand": "{command} n'est pas compatible avec [{type}] dans l'expression [{value}]", + "monaco.esql.validation.wildcardNotSupportedForCommand": "L'utilisation de caractères génériques (*) dans {command} n'est pas autorisée [{value}]", + "monaco.esql.validation.wildcardNotSupportedForFunction": "L'utilisation de caractères génériques (*) dans {name} n'est pas autorisée", + "monaco.esql.validation.wrongArgumentType": "L'argument de [{name}] doit être [{argType}], valeur [{value}] trouvée de type [{givenType}]", + "monaco.esql.validation.wrongDissectOptionArgumentType": "Valeur non valide pour DISSECT append_separator : une chaîne était attendue mais il s'agissait de [{value}]", + "monaco.esql.validation.wrongMetadataArgumentType": "Le champ de métadonnées [{value}] n'est pas disponible. Les champs de métadonnées disponibles sont : [{availableFields}]", + "monaco.esql.autocomplete.aPatternString": "Une chaîne modèle", + "monaco.esql.autocomplete.colonDoc": "Deux points (:)", + "monaco.esql.autocomplete.commaDoc": "Virgule (,)", + "monaco.esql.autocomplete.constantDefinition": "Constant", "monaco.esql.autocomplete.createNewPolicy": "Cliquez pour créer", "monaco.esql.autocomplete.declarationLabel": "Déclaration :", "monaco.esql.autocomplete.examplesLabel": "Exemples :", "monaco.esql.autocomplete.fieldDefinition": "Champ spécifié par le tableau d'entrée", + "monaco.esql.autocomplete.listDoc": "Liste d'éléments (…)", "monaco.esql.autocomplete.newVarDoc": "Définir une nouvelle variable", "monaco.esql.autocomplete.noPoliciesLabel": "Pas de stratégie disponible", "monaco.esql.autocomplete.noPoliciesLabelsFound": "Cliquez pour créer", "monaco.esql.autocomplete.pipeDoc": "Barre verticale (|)", - "monaco.esql.autocomplete.sourceDefinition": "Tableau d'entrée", + "monaco.esql.autocomplete.semiColonDoc": "Point-virgule (;)", + "monaco.esql.autocomplete.sourceDefinition": "Index", + "monaco.esql.autocomplete.variableDefinition": "Variable spécifiée par l'utilisateur dans la requête ES|QL", + "monaco.esql.definition.addDoc": "Ajouter (+)", + "monaco.esql.definition.andDoc": "et", + "monaco.esql.definition.assignDoc": "Affecter (=)", + "monaco.esql.definition.divideDoc": "Diviser (/)", + "monaco.esql.definition.equalToDoc": "Égal à", + "monaco.esql.definition.functionsDoc": "Afficher les fonctions ES|QL disponibles avec signatures", + "monaco.esql.definition.greaterThanDoc": "Supérieur à", + "monaco.esql.definition.greaterThanOrEqualToDoc": "Supérieur ou égal à", + "monaco.esql.definition.inDoc": "Teste si la valeur d'une expression est contenue dans une liste d'autres expressions", + "monaco.esql.definition.infoDoc": "Afficher des informations sur le nœud ES actuel", + "monaco.esql.definition.isNotNullDoc": "Prédicat pour la comparaison NULL : renvoie \"true\" si la valeur n'est pas NULL", + "monaco.esql.definition.isNullDoc": "Prédicat pour la comparaison NULL : renvoie \"true\" si la valeur est NULL", + "monaco.esql.definition.lessThanDoc": "Inférieur à", + "monaco.esql.definition.lessThanOrEqualToDoc": "Inférieur ou égal à", + "monaco.esql.definition.likeDoc": "Filtrer les données en fonction des modèles de chaînes", + "monaco.esql.definition.moduleDoc": "Module (%)", + "monaco.esql.definition.multiplyDoc": "Multiplier (*)", + "monaco.esql.definition.notDoc": "Non", + "monaco.esql.definition.notEqualToDoc": "Différent de", + "monaco.esql.definition.orDoc": "ou", + "monaco.esql.definition.rlikeDoc": "Filtrer les données en fonction des expressions régulières des chaînes", + "monaco.esql.definition.subtractDoc": "Subtract (-)", + "monaco.esql.definitions.absDoc": "Renvoie la valeur absolue.", + "monaco.esql.definitions.acosDoc": "Fonction trigonométrique cosinus inverse", + "monaco.esql.definitions.appendSeparatorDoc": "Le ou les caractères qui séparent les champs ajoutés. A pour valeur par défaut une chaîne vide (\"\").", + "monaco.esql.definitions.asDoc": "En tant que", + "monaco.esql.definitions.asinDoc": "Fonction trigonométrique sinus inverse", + "monaco.esql.definitions.atan2Doc": "L'angle entre l'axe positif des x et le rayon allant de l'origine au point (x , y) dans le plan cartésien", + "monaco.esql.definitions.atanDoc": "Fonction trigonométrique tangente inverse", + "monaco.esql.definitions.autoBucketDoc": "Groupement automatique des dates en fonction d'une plage et d'un compartiment cible donnés.", + "monaco.esql.definitions.avgDoc": "Renvoie la moyenne des valeurs dans un champ", + "monaco.esql.definitions.byDoc": "Par", + "monaco.esql.definitions.caseDoc": "Accepte les paires de conditions et de valeurs. La fonction renvoie la valeur correspondant à la première condition évaluée à `true` (vraie). Si le nombre d'arguments est impair, le dernier argument est la valeur par défaut qui est renvoyée si aucune condition ne correspond.", + "monaco.esql.definitions.ccqAnyDoc": "L'enrichissement a lieu sur n'importe quel cluster", + "monaco.esql.definitions.ccqCoordinatorDoc": "L'enrichissement a lieu sur le cluster de coordination qui reçoit une requête ES|QL", + "monaco.esql.definitions.ccqModeDoc": "Mode de requête inter-clusters", + "monaco.esql.definitions.ccqRemoteDoc": "L'enrichissement a lieu sur le cluster qui héberge l'index cible.", + "monaco.esql.definitions.ceilDoc": "Arrondir un nombre à l'entier supérieur.", + "monaco.esql.definitions.cidrMatchDoc": "La fonction utilise un premier paramètre de type adresse IP, puis un ou plusieurs paramètres évalués en fonction d'une spécification CIDR.", + "monaco.esql.definitions.coalesceDoc": "Renvoie la première valeur non nulle.", + "monaco.esql.definitions.concatDoc": "Concatène deux ou plusieurs chaînes.", + "monaco.esql.definitions.cosDoc": "Fonction trigonométrique cosinus", + "monaco.esql.definitions.coshDoc": "Fonction hyperbolique cosinus", + "monaco.esql.definitions.countDistinctDoc": "Renvoie le décompte des valeurs distinctes dans un champ.", + "monaco.esql.definitions.countDoc": "Renvoie le décompte des valeurs dans un champ.", + "monaco.esql.definitions.dateDurationDefinition.day": "Jour", + "monaco.esql.definitions.dateDurationDefinition.days": "Jours (pluriel)", + "monaco.esql.definitions.dateDurationDefinition.hour": "Heure", + "monaco.esql.definitions.dateDurationDefinition.hours": "Heures (pluriel)", + "monaco.esql.definitions.dateDurationDefinition.millisecond": "Milliseconde", + "monaco.esql.definitions.dateDurationDefinition.milliseconds": "Millisecondes (pluriel)", + "monaco.esql.definitions.dateDurationDefinition.minute": "Minute", + "monaco.esql.definitions.dateDurationDefinition.minutes": "Minutes (pluriel)", + "monaco.esql.definitions.dateDurationDefinition.month": "Mois", + "monaco.esql.definitions.dateDurationDefinition.months": "Mois (pluriel)", + "monaco.esql.definitions.dateDurationDefinition.second": "Seconde", + "monaco.esql.definitions.dateDurationDefinition.seconds": "Secondes (pluriel)", + "monaco.esql.definitions.dateDurationDefinition.week": "Semaine", + "monaco.esql.definitions.dateDurationDefinition.weeks": "Semaines (pluriel)", + "monaco.esql.definitions.dateDurationDefinition.year": "An", + "monaco.esql.definitions.dateDurationDefinition.years": "Ans (pluriel)", + "monaco.esql.definitions.dateExtractDoc": "Extrait des parties d'une date, telles que l'année, le mois, le jour, l'heure. Les types de champs pris en charge sont ceux fournis par la fonction \"java.time.temporal.ChronoField\"", + "monaco.esql.definitions.dateFormatDoc": "Renvoie une représentation sous forme de chaîne d'une date dans le format fourni. Si aucun format n'est indiqué, le format \"yyyy-MM-dd'T'HH:mm:ss.SSSZ\" est utilisé.", + "monaco.esql.definitions.dateParseDoc": "Analyser les dates à partir de chaînes.", + "monaco.esql.definitions.dateTruncDoc": "Arrondit une date à l'intervalle le plus proche. Les intervalles peuvent être exprimés à l'aide de la syntaxe littérale timespan.", + "monaco.esql.definitions.dissectDoc": "Extrait de multiples valeurs de chaîne à partir d'une entrée de chaîne unique, suivant un modèle", + "monaco.esql.definitions.dropDoc": "Supprime les colonnes", + "monaco.esql.definitions.eDoc": "Nombre d'Euler.", + "monaco.esql.definitions.endsWithDoc": "Renvoie une valeur booléenne qui indique si une chaîne de mots-clés se termine par une autre chaîne :", + "monaco.esql.definitions.enrichDoc": "Enrichissez le tableau à l'aide d'un autre tableau. Avant de pouvoir utiliser l'enrichissement, vous devez créer et exécuter une politique d'enrichissement.", + "monaco.esql.definitions.evalDoc": "Calcule une expression et place la valeur résultante dans un champ de résultats de recherche.", + "monaco.esql.definitions.floorDoc": "Arrondir un nombre à l'entier inférieur.", + "monaco.esql.definitions.fromDoc": "Récupère les données à partir d'un ou plusieurs flux de données, index ou alias. Dans une requête ou une sous-requête, vous devez utiliser d'abord la commande from, et cette dernière ne nécessite pas de barre verticale au début. Par exemple, pour récupérer des données d'un index :", + "monaco.esql.definitions.greatestDoc": "Renvoie la valeur maximale de plusieurs colonnes.", + "monaco.esql.definitions.grokDoc": "Extrait de multiples valeurs de chaîne à partir d'une entrée de chaîne unique, suivant un modèle", + "monaco.esql.definitions.keepDoc": "Réarrange les champs dans le tableau d'entrée en appliquant les clauses \"KEEP\" dans les champs", + "monaco.esql.definitions.leastDoc": "Renvoie la valeur minimale de plusieurs colonnes.", + "monaco.esql.definitions.leftDoc": "Renvoyer la sous-chaîne qui extrait la longueur des caractères de la chaîne en partant de la gauche.", + "monaco.esql.definitions.lengthDoc": "Renvoie la longueur des caractères d'une chaîne.", + "monaco.esql.definitions.limitDoc": "Renvoie les premiers résultats de recherche, dans l'ordre de recherche, en fonction de la \"limite\" spécifiée.", + "monaco.esql.definitions.log10Doc": "Renvoie le log de base 10.", + "monaco.esql.definitions.logDoc": "La fonction scalaire log(based, value) renvoie le logarithme d'une valeur pour une base spécifique, comme défini dans l'argument", + "monaco.esql.definitions.ltrimDoc": "Retire les espaces au début des chaînes.", + "monaco.esql.definitions.maxDoc": "Renvoie la valeur maximale dans un champ.", + "monaco.esql.definitions.medianDeviationDoc": "Renvoie la médiane de chaque écart de point de données par rapport à la médiane de l'ensemble de l'échantillon.", + "monaco.esql.definitions.medianDoc": "Renvoie le 50centile.", + "monaco.esql.definitions.metadataDoc": "Métadonnées", + "monaco.esql.definitions.minDoc": "Renvoie la valeur minimale dans un champ.", + "monaco.esql.definitions.mvAvgDoc": "Convertit un champ multivalué en un champ à valeur unique comprenant la moyenne de toutes les valeurs.", + "monaco.esql.definitions.mvConcatDoc": "Convertit un champ de type chaîne multivalué en un champ à valeur unique comprenant la concaténation de toutes les valeurs, séparées par un délimiteur", + "monaco.esql.definitions.mvCountDoc": "Convertit un champ multivalué en un champ à valeur unique comprenant le total du nombre de valeurs", + "monaco.esql.definitions.mvDedupeDoc": "Supprime les doublons d'un champ multivalué", + "monaco.esql.definitions.mvExpandDoc": "Développe des champs comportant des valeurs multiples en indiquant une valeur par ligne et en dupliquant les autres champs", + "monaco.esql.definitions.mvFirstDoc": "Réduit un champ multivalué en un champ à valeur unique comprenant la première valeur.", + "monaco.esql.definitions.mvLastDoc": "Réduit un champ multivalué en un champ à valeur unique comprenant la dernière valeur.", + "monaco.esql.definitions.mvMaxDoc": "Convertit un champ multivalué en un champ à valeur unique comprenant la valeur maximale.", + "monaco.esql.definitions.mvMedianDoc": "Convertit un champ multivalué en un champ à valeur unique comprenant la valeur médiane.", + "monaco.esql.definitions.mvMinDoc": "Convertit un champ multivalué en un champ à valeur unique comprenant la valeur minimale.", + "monaco.esql.definitions.mvSumDoc": "Convertit un champ multivalué en un champ à valeur unique comprenant la somme de toutes les valeurs.", + "monaco.esql.definitions.nowDoc": "Renvoie la date et l'heure actuelles.", + "monaco.esql.definitions.onDoc": "Activé", + "monaco.esql.definitions.percentiletDoc": "Renvoie le n-ième centile d'un champ.", + "monaco.esql.definitions.piDoc": "Le rapport entre la circonférence et le diamètre d'un cercle.", + "monaco.esql.definitions.powDoc": "Renvoie la valeur d'une base (premier argument) élevée à une puissance (deuxième argument).", + "monaco.esql.definitions.renameDoc": "Attribue un nouveau nom à une ancienne colonne", + "monaco.esql.definitions.replaceDoc": "La fonction remplace dans la chaîne (1er argument) toutes les correspondances avec l'expression régulière (2e argument) par la chaîne de remplacement (3e argument). Si l'un des arguments est NULL, le résultat est NULL.", + "monaco.esql.definitions.rightDoc": "Renvoyer la sous-chaîne qui extrait la longueur des caractères de la chaîne en partant de la droite.", + "monaco.esql.definitions.roundDoc": "Renvoie un nombre arrondi à la décimale, spécifié par la valeur entière la plus proche. La valeur par défaut est arrondie à un entier.", + "monaco.esql.definitions.rowDoc": "Renvoie une ligne contenant une ou plusieurs colonnes avec les valeurs que vous spécifiez. Cette commande peut s'avérer utile pour les tests.", + "monaco.esql.definitions.rtrimDoc": "Supprime les espaces à la fin des chaînes.", + "monaco.esql.definitions.showDoc": "Renvoie des informations sur le déploiement et ses capacités", + "monaco.esql.definitions.sinDoc": "Fonction trigonométrique sinus.", + "monaco.esql.definitions.sinhDoc": "Fonction hyperbolique sinus.", + "monaco.esql.definitions.sortDoc": "Trie tous les résultats en fonction des champs spécifiés. Par défaut, les valeurs null sont considérées comme supérieures à toutes les autres valeurs. Avec l'ordre de tri croissant, les valeurs null sont classées en dernier. Avec l'ordre de tri décroissant, elles sont classées en premier. Pour modifier cet ordre, utilisez NULLS FIRST ou NULLS LAST", + "monaco.esql.definitions.splitDoc": "Divise une chaîne de valeur unique en plusieurs chaînes.", + "monaco.esql.definitions.sqrtDoc": "Renvoie la racine carrée d'un nombre. ", + "monaco.esql.definitions.startsWithDoc": "Renvoie un booléen qui indique si une chaîne de mot-clés débute par une autre chaîne.", + "monaco.esql.definitions.statsDoc": "Calcule les statistiques agrégées, telles que la moyenne, le décompte et la somme, sur l'ensemble des résultats de recherche entrants. Comme pour l'agrégation SQL, si la commande stats est utilisée sans clause BY, une seule ligne est renvoyée, qui est l'agrégation de tout l'ensemble des résultats de recherche entrants. Lorsque vous utilisez une clause BY, une ligne est renvoyée pour chaque valeur distincte dans le champ spécifié dans la clause BY. La commande stats renvoie uniquement les champs dans l'agrégation, et vous pouvez utiliser un large éventail de fonctions statistiques avec la commande stats. Lorsque vous effectuez plusieurs agrégations, séparez chacune d'entre elle par une virgule.", + "monaco.esql.definitions.stCentroidDoc": "Renvoie le décompte des valeurs distinctes dans un champ.", + "monaco.esql.definitions.substringDoc": "Renvoie la sous-chaîne d'une chaîne, délimitée en fonction d'une position de départ et d'une longueur facultative.", + "monaco.esql.definitions.sumDoc": "Renvoie la somme des valeurs dans un champ.", + "monaco.esql.definitions.tanDoc": "Fonction trigonométrique tangente.", + "monaco.esql.definitions.tanhDoc": "Fonction hyperbolique tangente.", + "monaco.esql.definitions.tauDoc": "Le rapport entre la circonférence et le rayon d'un cercle.", + "monaco.esql.definitions.toBooleanDoc": "Convertit en booléen.", + "monaco.esql.definitions.toCartesianPointDoc": "Convertit la valeur d'une entrée en une valeur \"point\".", + "monaco.esql.definitions.toCartesianshapeDoc": "Convertit la valeur d'une entrée en une valeur cartesian_shape.", + "monaco.esql.definitions.toDateTimeDoc": "Convertit en date.", + "monaco.esql.definitions.toDegreesDoc": "Convertit en degrés", + "monaco.esql.definitions.toDoubleDoc": "Convertit en double.", + "monaco.esql.definitions.toGeopointDoc": "Convertit en une valeur geo_point.", + "monaco.esql.definitions.toGeoshapeDoc": "Convertit la valeur d'une entrée en une valeur geo_shape.", + "monaco.esql.definitions.toIntegerDoc": "Convertit en nombre entier.", + "monaco.esql.definitions.toIpDoc": "Convertit en ip.", + "monaco.esql.definitions.toLongDoc": "Convertit en long.", + "monaco.esql.definitions.toLowerDoc": "Renvoie une nouvelle chaîne représentant la chaîne d'entrée convertie en minuscules.", + "monaco.esql.definitions.toRadiansDoc": "Convertit en radians", + "monaco.esql.definitions.toStringDoc": "Convertit en chaîne.", + "monaco.esql.definitions.toUnsignedLongDoc": "Convertit en long non signé.", + "monaco.esql.definitions.toUpperDoc": "Renvoie une nouvelle chaîne représentant la chaîne d'entrée convertie en majuscules.", + "monaco.esql.definitions.toVersionDoc": "Convertit en version.", + "monaco.esql.definitions.trimDoc": "Supprime les espaces de début et de fin d'une chaîne.", + "monaco.esql.definitions.whereDoc": "Utilise \"predicate-expressions\" pour filtrer les résultats de recherche. Une expression predicate, lorsqu'elle est évaluée, renvoie TRUE ou FALSE. La commande where renvoie uniquement les résultats qui donnent la valeur TRUE. Par exemple, pour filtrer les résultats pour une valeur de champ spécifique", + "monaco.esql.definitions.withDoc": "Avec", + "monaco.esql.hover.policyEnrichedFields": "**Champs**", + "monaco.esql.hover.policyIndexes": "**Indexes**", + "monaco.esql.hover.policyMatchingField": "**Champ correspondant**", + "monaco.esql.quickfix.replaceWithQuote": "Remplacer les guillemets par le signe \" (double)", + "monaco.esql.validation.dropAllColumnsError": "Il est interdit de supprimer tous les champs [*]", + "monaco.esql.validation.dropTimestampWarning": "La suppression de [@timestamp] effacera tous les filtres de temps des résultats de la recherche", + "monaco.esql.validation.metadataBracketsDeprecation": "Les crochets \"[]\" doivent être supprimés de la déclaration FROM METADATA", + "monaco.esql.validation.statsNoArguments": "[STATS] doit contenir au moins une expression d'agrégation ou de regroupement", + "monaco.esql.validation.unknownColumnType": "Type inconnu", + "monaco.esql.validation.unknownInterval": "Qualificatif d'intervalle de temps inattendu : \"{value}\"", "monaco.painlessLanguage.autocomplete.docKeywordDescription": "Accéder à une valeur de champ dans un script au moyen de la syntaxe doc['field_name']", "monaco.painlessLanguage.autocomplete.emitKeywordDescription": "Émettre une valeur sans rien renvoyer", "monaco.painlessLanguage.autocomplete.fieldValueDescription": "Récupérer la valeur du champ \"{fieldName}\"", @@ -4834,9 +5297,52 @@ "newsfeed.headerButton.readAriaLabel": "Menu du fil d'actualités – Tous les éléments lus", "newsfeed.headerButton.unreadAriaLabel": "Menu du fil d'actualités – Éléments non lus disponibles", "newsfeed.loadingPrompt.gettingNewsText": "Obtention des dernières actualités…", + "presentationPanel.action.editPanel.displayName": "Modifier {value}", + "presentationPanel.contextMenu.ariaLabelWithIndex": "Options pour le panneau {index}", + "presentationPanel.contextMenu.ariaLabelWithTitle": "Options de panneau pour {title}", + "presentationPanel.enhancedAriaLabel": "Panneau : {title}", + "presentationPanel.error.editButton": "Modifier {value}", + "presentationPanel.header.titleAriaLabel": "Cliquez pour modifier le titre : {title}", + "presentationPanel.action.customizePanel.displayName": "Paramètres du panneau", + "presentationPanel.action.customizePanel.flyout.cancelButtonTitle": "Annuler", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.editFiltersButtonAriaLabel": "Modifier les filtres", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.editFiltersButtonLabel": "Modifier", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.editQueryButtonAriaLabel": "Modifier la recherche", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.editQueryButtonLabel": "Modifier", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.panelDescriptionAriaLabel": "Entrer une description personnalisée pour votre panneau", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.panelDescriptionFormRowLabel": "Description", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.panelTimeRangeFormRowLabel": "Plage temporelle", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.panelTitleFormRowLabel": "Titre", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.panelTitleInputAriaLabel": "Entrez un titre personnalisé pour le panneau.", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.resetCustomDescriptionButtonAriaLabel": "Réinitialiser la description", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.resetCustomTitleButtonAriaLabel": "Réinitialiser le titre", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.resetCustomTitleButtonLabel": "Réinitialiser", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.showCustomTimeRangeSwitch": "Appliquer une plage temporelle personnalisée", + "presentationPanel.action.customizePanel.flyout.optionsMenuForm.showTitle": "Afficher le titre", + "presentationPanel.action.customizePanel.flyout.saveButtonTitle": "Appliquer", + "presentationPanel.action.customizePanel.flyout.title": "Paramètres du panneau", + "presentationPanel.action.customizePanel.modal.optionsMenuForm.resetCustomDescriptionButtonLabel": "Réinitialiser", + "presentationPanel.action.inspectPanel.displayName": "Inspecter", + "presentationPanel.action.inspectPanel.untitledEmbeddableFilename": "sans titre", + "presentationPanel.action.removePanel.displayName": "Supprimer du tableau de bord", + "presentationPanel.ariaLabel": "Panneau", + "presentationPanel.badgeTrigger.description": "Des actions de badge apparaissent dans la barre de titre lorsqu'un élément incorporable est en cours de chargement dans un panneau.", + "presentationPanel.badgeTrigger.title": "Badges du panneau", + "presentationPanel.contextMenu.ariaLabel": "Options de panneau", + "presentationPanel.contextMenu.loadingTitle": "Options", + "presentationPanel.contextMenuTrigger.description": "Une nouvelle action sera ajoutée au menu contextuel du panneau", + "presentationPanel.contextMenuTrigger.title": "Menu contextuel", + "presentationPanel.error.errorWhenLoadingPanel": "Une erreur s'est produite lors du chargement de ce panneau.", + "presentationPanel.filters.filtersTitle": "Filtres", + "presentationPanel.filters.queryTitle": "Recherche", + "presentationPanel.hoverTrigger.description": "Une nouvelle action sera ajoutée au menu flottant du panneau", + "presentationPanel.hoverTrigger.title": "Menu contextuel du panneau", + "presentationPanel.notificationTrigger.description": "Les actions de notification apparaissent dans l'angle supérieur droit des panneaux.", + "presentationPanel.notificationTrigger.title": "Notifications du panneau", + "presentationPanel.placeholderTitle": "[Aucun titre]", "presentationUtil.expressionInput.argReferenceAliasesDetail": "{BOLD_MD_TOKEN}Alias{BOLD_MD_TOKEN} : {aliases}", "presentationUtil.expressionInput.argReferenceDefaultDetail": "{BOLD_MD_TOKEN}Par défaut{BOLD_MD_TOKEN} : {defaultVal}", - "presentationUtil.expressionInput.argReferenceRequiredDetail": "{BOLD_MD_TOKEN}Obligatoire{BOLD_MD_TOKEN} : {required}", + "presentationUtil.expressionInput.argReferenceRequiredDetail": "{BOLD_MD_TOKEN}Requis{BOLD_MD_TOKEN} : {required}", "presentationUtil.expressionInput.argReferenceTypesDetail": "{BOLD_MD_TOKEN}Types{BOLD_MD_TOKEN} : {types}", "presentationUtil.expressionInput.functionReferenceAccepts": "{BOLD_MD_TOKEN}Accepte{BOLD_MD_TOKEN} : {acceptTypes}", "presentationUtil.expressionInput.functionReferenceReturns": "{BOLD_MD_TOKEN}Renvoie{BOLD_MD_TOKEN} : {returnType}", @@ -4884,10 +5390,16 @@ "presentationUtil.saveModalDashboard.saveAndGoToDashboardLabel": "Enregistrer et accéder au tableau de bord", "presentationUtil.saveModalDashboard.saveLabel": "Enregistrer", "presentationUtil.saveModalDashboard.saveToLibraryLabel": "Enregistrer et ajouter à la bibliothèque", - "savedObjects.confirmModal.overwriteConfirmationMessage": "Voulez-vous vraiment écraser {title} ?", + "reporting.commonExportTypesHelpers.failedToDecryptReportJobDataErrorMessage": "Impossible de déchiffrer les données de la tâche de reporting. Veuillez vous assurer que {encryptionKey} est défini et générez à nouveau ce rapport. {err}", + "reporting.common.browserCouldNotLaunchErrorMessage": "Impossible de générer des captures d'écran, car le navigateur ne s’est pas lancé. Consultez les logs de serveur pour en savoir plus.", + "reporting.common.cloud.insufficientSystemMemoryError": "Impossible de générer ce rapport en raison d’un manque de mémoire.", + "reporting.common.pdfWorkerOutOfMemoryErrorMessage": "Impossible de générer un PDF en raison d’un manque de mémoire. Essayez de réduire la taille du PDF et relancez ce rapport.", + "reporting.commonExportTypesHelpers.missingJobHeadersErrorMessage": "Les en-têtes de tâche sont manquants", + "savedObjects.confirmModal.overwriteConfirmationMessage": "Êtes-vous sûr de vouloir écraser {title} ?", "savedObjects.confirmModal.overwriteTitle": "Écraser {name} ?", "savedObjects.confirmModal.saveDuplicateButtonLabel": "Enregistrer {name}", - "savedObjects.saveModal.duplicateTitleLabel": "Ce {objectType} existe déjà", + "savedObjects.confirmModal.saveDuplicateConfirmationMessage": "Il y a déjà une occurrence de {name} avec le titre \"{title}\". Voulez-vous tout de même enregistrer ?", + "savedObjects.saveModal.duplicateTitleLabel": "Ce {objectType} existe déjà.", "savedObjects.saveModal.saveAsNewLabel": "Enregistrer en tant que nouveau {objectType}", "savedObjects.saveModal.saveTitle": "Enregistrer {objectType}", "savedObjects.saveModalOrigin.originAfterSavingSwitchLabel": "{originVerb} à {origin} après l'enregistrement", @@ -4906,27 +5418,28 @@ "savedObjects.saveModalOrigin.returnToOriginLabel": "Renvoyer", "savedObjects.saveModalOrigin.saveAndReturnLabel": "Enregistrer et revenir", "savedObjectsManagement.breadcrumb.inspect": "Inspecter {savedObjectType}", - "savedObjectsManagement.importSummary.createdCountHeader": "{createdCount} nouveau", - "savedObjectsManagement.importSummary.errorCountHeader": "{errorCount} erreur", + "savedObjectsManagement.importSummary.createdCountHeader": "{createdCount} nouveau(x)", + "savedObjectsManagement.importSummary.errorCountHeader": "{errorCount} erreur(s)", "savedObjectsManagement.importSummary.errorOutcomeLabel": "{errorMessage}", - "savedObjectsManagement.importSummary.headerLabel": "{importCount, plural, one {1 objet a été importé} many {# objets ont été importés} other {# objets ont été importés}}", - "savedObjectsManagement.importSummary.overwrittenCountHeader": "{overwrittenCount} écrasé", - "savedObjectsManagement.objectsTable.delete.successNotification": "{count, plural, one {# objet a bien été supprimé.} many {# objets} other {# objets ont bien été supprimés.}} a bien été supprimé.", - "savedObjectsManagement.objectsTable.deleteConfirmModal.cannotDeleteCallout.content": "{objectCount, plural, one {# objet est masqué et ne peut pas être supprimé} many {# objets sont masqués et ne peuvent pas être supprimés} other {# objets sont masqués et ne peuvent pas être supprimés}}. {objectCount, plural, one {Il a été exclu} many {Ils ont été exclus} other {Ils ont été exclus}} du récapitulatif du tableau.", - "savedObjectsManagement.objectsTable.deleteConfirmModal.sharedObjectsCallout.title": "{sharedObjectsCount, plural, one {# objet enregistré est partagé} many {# de vos objets enregistrés ont été partagés} other {# de vos objets enregistrés ont été partagés}}", - "savedObjectsManagement.objectsTable.deleteSavedObjectsConfirmModal.deleteButtonLabel": "Supprimer {objectsCount, plural, one {# objet} many {# objets} other {# objets}}", + "savedObjectsManagement.importSummary.headerLabel": "{importCount, plural, one {1 objet importé} other {# objets importés}}", + "savedObjectsManagement.importSummary.overwrittenCountHeader": "{overwrittenCount} écrasé(s)", + "savedObjectsManagement.objectsTable.deleteConfirmModal.cannotDeleteCallout.content": "{objectCount, plural, one {# objet est} other {# objets sont}} masqués et ne peuvent être supprimés.", + "savedObjectsManagement.objectsTable.deleteConfirmModal.cannotDeleteCallout.managedContent": "{objectCount, plural, one {# objet est} other {# objets sont}} gérés par Elastic et ne peuvent pas être supprimés.", + "savedObjectsManagement.objectsTable.deleteConfirmModal.sharedObjectsCallout.title": "{sharedObjectsCount, plural, one {# objet enregistré est partagé} other {# de vos objets enregistrés sont partagés}}.", + "savedObjectsManagement.objectsTable.deleteSavedObjectsConfirmModal.deleteButtonLabel": "Supprimer {objectsCount, plural, one {# objet} other {# objets}}", "savedObjectsManagement.objectsTable.export.toastErrorMessage": "Impossible de générer l'export : {error}", - "savedObjectsManagement.objectsTable.exportObjectsConfirmModalTitle": "Exporter {filteredItemCount, plural, one {# objet} many {# objets} other {# objets}}", - "savedObjectsManagement.objectsTable.flyout.importFileErrorMessage": "Impossible de traiter le fichier en raison d'une erreur : \"{error}\"", + "savedObjectsManagement.objectsTable.exportObjectsConfirmModalTitle": "Exporter {filteredItemCount, plural, one {# objet} other {# objets}}", + "savedObjectsManagement.objectsTable.flyout.importFileErrorMessage": "Impossible de traiter le fichier en raison d'une erreur : \"{error}\".", "savedObjectsManagement.objectsTable.flyout.indexPatternConflictsDescription": "Les objets enregistrés suivants utilisent des vues de données qui n'existent pas. Veuillez sélectionner les vues de données que vous souhaitez réassocier. Vous pouvez {indexPatternLink} si nécessaire.", - "savedObjectsManagement.objectsTable.header.exportButtonLabel": "Exporter {filteredCount, plural, one {# objet} many {# objets} other {# objets}}", + "savedObjectsManagement.objectsTable.header.exportButtonLabel": "Exporter {filteredCount, plural, one{# objet} other {# objets}}", "savedObjectsManagement.objectsTable.overwriteModal.body.ambiguousConflict": "\"{title}\" est en conflit avec plusieurs objets existants. En écraser un ?", "savedObjectsManagement.objectsTable.overwriteModal.body.conflict": "\"{title}\" est en conflit avec un objet existant. L'écraser ?", "savedObjectsManagement.objectsTable.overwriteModal.title": "Écraser {type} ?", "savedObjectsManagement.objectsTable.relationships.relationshipsTitle": "Voici les objets enregistrés associés à {title}. La suppression de ce {type} a un impact sur ses objets parents, mais pas sur ses enfants.", - "savedObjectsManagement.objectsTable.table.tooManyResultsLabel": "Affichage de {limit} sur {totalItemCount, plural, one {# objet} many {# objets} other {# objets}}", + "savedObjectsManagement.objectsTable.table.tooManyResultsLabel": "Affichage de {limit} sur {totalItemCount, plural, one {# objet} other {# objets}}", + "savedObjectsManagement.objectView.unableDeleteSavedObjectNotificationMessage": "Impossible de supprimer l'objet '{title}' {type}", "savedObjectsManagement.view.howToFixErrorDescription": "Si vous savez à quoi cette erreur fait référence, vous pouvez utiliser les {savedObjectsApis} pour la corriger. Sinon, cliquez sur le bouton Supprimer ci-dessus.", - "savedObjectsManagement.view.inspectCodeEditorAriaLabel": "inspecter {title}", + "savedObjectsManagement.view.inspectCodeEditorAriaLabel": "inspecter { title }", "savedObjectsManagement.view.inspectItemTitle": "Inspecter {title}", "savedObjectsManagement.view.viewItemButtonLabel": "Afficher {title}", "savedObjectsManagement.breadcrumb.index": "Objets enregistrés", @@ -4942,10 +5455,10 @@ "savedObjectsManagement.managementSectionLabel": "Objets enregistrés", "savedObjectsManagement.objects.savedObjectsDescription": "Importez, exportez et gérez vos objets enregistrés.", "savedObjectsManagement.objects.savedObjectsTitle": "Objets enregistrés", - "savedObjectsManagement.objectsTable.deleteConfirmModal.cannotDeleteCallout.title": "Certains objets ne peuvent pas être supprimés", + "savedObjectsManagement.objectsTable.deleteConfirmModal.cannotDeleteCallout.title": "Certains objets ont été exclus", "savedObjectsManagement.objectsTable.deleteConfirmModal.sharedObjectsCallout.content": "Les objets partagés sont supprimés de tous les espaces dans lesquels ils se trouvent.", "savedObjectsManagement.objectsTable.deleteSavedObjectsConfirmModal.cancelButtonLabel": "Annuler", - "savedObjectsManagement.objectsTable.deleteSavedObjectsConfirmModal.idColumnName": "Id", + "savedObjectsManagement.objectsTable.deleteSavedObjectsConfirmModal.idColumnName": "ID", "savedObjectsManagement.objectsTable.deleteSavedObjectsConfirmModal.titleColumnName": "Titre", "savedObjectsManagement.objectsTable.deleteSavedObjectsConfirmModal.typeColumnName": "Type", "savedObjectsManagement.objectsTable.deleteSavedObjectsConfirmModalTitle": "Supprimer les objets enregistrés", @@ -5053,21 +5566,41 @@ "savedSearch.kibana_context.q.help": "Spécifier une recherche en texte libre Kibana", "savedSearch.kibana_context.savedSearchId.help": "Spécifier l'ID de recherche enregistrée à utiliser pour les requêtes et les filtres", "savedSearch.kibana_context.timeRange.help": "Spécifier le filtre de plage temporelle Kibana", - "searchApiPanels.welcomeBanner.header.greeting.customTitle": "Bonjour {name} !", + "searchApiPanels.welcomeBanner.header.greeting.customTitle": "👋 Bonjour {name} !", "searchApiPanels.welcomeBanner.installClient.clientDocLink": "Documentation du client {languageName}", - "searchApiPanels.welcomeBanner.selectClient.description": "Elastic construit et assure la maintenance des clients dans plusieurs langues populaires et notre communauté a contribué à beaucoup d'autres. Sélectionnez votre client linguistique favori or explorez la {console} pour commencer.", + "searchApiPanels.welcomeBanner.selectClient.description": "Elastic construit et assure la maintenance des clients dans plusieurs langues populaires et notre communauté a contribué à beaucoup d'autres. Sélectionnez votre client de langage favori ou explorez la {console} pour commencer.", + "searchApiPanels.cloudIdDetails.cloudId.description": "Des bibliothèques et des connecteurs clients peuvent utiliser cet identificateur unique propre à Elastic Cloud.", + "searchApiPanels.cloudIdDetails.cloudId.title": "Identifiant du cloud", + "searchApiPanels.cloudIdDetails.description": "Soyez prêt à ingérer et rechercher vos données en choisissant une option de connexion :", + "searchApiPanels.cloudIdDetails.elasticsearchEndpoint.description": "La méthode la plus courante pour établir une connexion Elasticsearch.", + "searchApiPanels.cloudIdDetails.elasticsearchEndpoint.recommendedBadge": "Recommandé", + "searchApiPanels.cloudIdDetails.elasticsearchEndpoint.title": "Point de terminaison Elasticsearch", + "searchApiPanels.cloudIdDetails.title": "Copiez vos informations de connexion", + "searchApiPanels.pipeline.overview.anonymization.description": "Retirez les informations sensibles des documents avant l'indexation.", + "searchApiPanels.pipeline.overview.anonymization.title": "Anonymiser les données", + "searchApiPanels.pipeline.overview.dataEnrichment.description": "Ajouter des informations des sources externes ou appliquer des transformations à vos documents pour une recherche plus contextuelle et pertinente.", + "searchApiPanels.pipeline.overview.dataEnrichment.title": "Enrichir les données", + "searchApiPanels.pipeline.overview.extAndStandard.description": "Analysez les informations depuis vos documents pour assurer qu'ils sont conformes au format standardisé.", + "searchApiPanels.pipeline.overview.extAndStandard.title": "Extraire et standardiser", "searchApiPanels.welcomeBanner.codeBox.copyButtonLabel": "Copier", "searchApiPanels.welcomeBanner.codeBox.selectAriaLabel": "Sélectionner un langage de programmation", "searchApiPanels.welcomeBanner.header.description": "Configurez votre client de langage de programmation, ingérez des données, et vous serez prêt à commencer vos recherches en quelques minutes.", - "searchApiPanels.welcomeBanner.header.greeting.defaultTitle": "Bonjour !", + "searchApiPanels.welcomeBanner.header.greeting.defaultTitle": "👋 Bonjour", "searchApiPanels.welcomeBanner.header.title": "Lancez-vous avec Elasticsearch", - "searchApiPanels.welcomeBanner.ingestData.description": "Ajoutez des données à votre flux de données ou à votre index pour les rendre interrogeables. Choisissez une méthode d’ingestion qui correspond à votre application et à votre workflow.", + "searchApiPanels.welcomeBanner.ingestData.alternativeOptions": "Autres options d'ingestion", + "searchApiPanels.welcomeBanner.ingestData.alternativeOptions.beatsDescription": "Des agents légers conçus pour le transfert de données pour Elasticsearch. Utilisez Beats pour envoyer des données opérationnelles depuis vos serveurs.", + "searchApiPanels.welcomeBanner.ingestData.alternativeOptions.beatsDocumentationLabel": "Documentation", + "searchApiPanels.welcomeBanner.ingestData.alternativeOptions.beatsTitle": "Beats", + "searchApiPanels.welcomeBanner.ingestData.alternativeOptions.logstashDescription": "Pipeline de traitement des données à usage général pour Elasticsearch. Utilisez Logstash pour extraire et transformer les données d'une variétés d'entrées et de sorties.", + "searchApiPanels.welcomeBanner.ingestData.alternativeOptions.logstashDocumentationLabel": "Documentation", + "searchApiPanels.welcomeBanner.ingestData.alternativeOptions.logstashTitle": "Logstash", + "searchApiPanels.welcomeBanner.ingestData.description": "Ajoutez des données à votre flux de données ou à votre index pour les rendre interrogeables à l'aide de l'API. ", "searchApiPanels.welcomeBanner.ingestData.title": "Ingérer des données", - "searchApiPanels.welcomeBanner.installClient.description": "Elastic construit et assure la maintenance des clients dans plusieurs langues populaires et notre communauté a contribué à beaucoup d'autres. Installez votre client de langage favori pour commencer.", + "searchApiPanels.welcomeBanner.installClient.description": "Vous devez d'abord installer le client de langage de programmation de votre choix.", "searchApiPanels.welcomeBanner.installClient.title": "Installer un client", "searchApiPanels.welcomeBanner.panels.learnMore": "En savoir plus", "searchApiPanels.welcomeBanner.selectClient.apiRequestConsoleDocLink": "Exécuter des requêtes d’API dans la console ", - "searchApiPanels.welcomeBanner.selectClient.callout.description": "Avec la console, vous pouvez directement commencer à utiliser nos API REST. Aucune installation n’est requise. ", + "searchApiPanels.welcomeBanner.selectClient.callout.description": "Avec la console, vous pouvez directement commencer à utiliser nos API REST. Aucune installation n’est requise.", "searchApiPanels.welcomeBanner.selectClient.callout.link": "Essayez la console maintenant", "searchApiPanels.welcomeBanner.selectClient.callout.title": "Lancez-vous dans la console", "searchApiPanels.welcomeBanner.selectClient.description.console.link": "Console", @@ -5075,17 +5608,360 @@ "searchApiPanels.welcomeBanner.selectClient.heading": "Choisissez-en un", "searchApiPanels.welcomeBanner.selectClient.title": "Sélectionner votre client", "searchApiPanels.welcomeBanner.tryInConsoleButton": "Essayer dans la console", - "searchResponseWarnings.badgeButtonLabel": "{warningCount} {warningCount, plural, one {avertissement} many {avertissements} other {avertissements}}", + "searchConnectors.config.invalidInteger": "{label} doit être un nombre entier.", + "searchConnectors.configurationConnector.config.defaultValue": "Si cette option est laissée vide, la valeur par défaut {defaultValue} sera utilisée.", + "searchConnectors.index.syncJobs.documents.volume.aboutLabel": "À propos de {volume}", + "searchConnectors.syncJobs.flyout.canceledDescription": "Synchronisation annulée le {date}", + "searchConnectors.syncJobs.flyout.completedDescription": "Terminé le {date}", + "searchConnectors.syncJobs.flyout.failureDescription": "Échec de la synchronisation : {error}.", + "searchConnectors.syncJobs.flyout.inProgressDescription": "La synchronisation est en cours depuis {duration}.", + "searchConnectors.syncJobs.flyout.startedAtDescription": "Démarrée le {date}", + "searchConnectors.configuration.openPopoverLabel": "Ouvrir la fenêtre contextuelle de licence", + "searchConnectors.configurationConnector.config.advancedConfigurations.title": "Configurations avancées", + "searchConnectors.configurationConnector.config.cancelEditingButton.title": "Annuler", + "searchConnectors.configurationConnector.config.editButton.title": "Modifier la configuration", + "searchConnectors.configurationConnector.config.error.title": "Erreur de connecteur", + "searchConnectors.configurationConnector.config.noConfigCallout.description": "Ce connecteur ne possède aucun champ de configuration. Votre connecteur a-t-il pu se connecter avec succès à Elasticsearch et définir sa configuration ?", + "searchConnectors.configurationConnector.config.noConfigCallout.title": "Aucun champ de configuration", + "searchConnectors.configurationConnector.config.submitButton.title": "Enregistrer la configuration", + "searchConnectors.connector.documentLevelSecurity.enablePanel.description": "Vous permet de contrôler les documents auxquels peuvent accéder les utilisateurs, selon leurs autorisations. Cela permet de vous assurer que les résultats de recherche ne renvoient que des informations pertinentes et autorisées pour les utilisateurs, selon leurs rôles.", + "searchConnectors.connector.documentLevelSecurity.enablePanel.heading": "Sécurité au niveau du document", + "searchConnectors.connectors.subscriptionLabel": "Plans d'abonnement", + "searchConnectors.connectors.upgradeDescription": "Pour utiliser ce connecteur, vous devez mettre à jour votre licence vers Platinum ou commencer un essai gratuit de 30 jours.", + "searchConnectors.connectors.upgradeTitle": "Mettre à niveau vers Elastic Platinum", + "searchConnectors.content.filteringRules.policy.exclude": "Exclure", + "searchConnectors.content.filteringRules.policy.include": "Inclure", + "searchConnectors.content.filteringRules.rules.contains": "Contient", + "searchConnectors.content.filteringRules.rules.endsWith": "Se termine par", + "searchConnectors.content.filteringRules.rules.equals": "Est égal à", + "searchConnectors.content.filteringRules.rules.greaterThan": "Supérieur à", + "searchConnectors.content.filteringRules.rules.lessThan": "Inférieur à", + "searchConnectors.content.filteringRules.rules.regEx": "Expression régulière", + "searchConnectors.content.filteringRules.rules.startsWith": "Commence par", + "searchConnectors.content.nativeConnectors.azureBlob.name": "Stockage Blob Azure", + "searchConnectors.content.nativeConnectors.box.name": "Box", + "searchConnectors.content.nativeConnectors.confluence.name": "Confluence Cloud & Server", + "searchConnectors.content.nativeConnectors.customConnector.name": "Connecteur personnalisé", + "searchConnectors.content.nativeConnectors.dropbox.name": "Dropbox", + "searchConnectors.content.nativeConnectors.github.name": "Serveurs GitHub & GitHub Enterprise", + "searchConnectors.content.nativeConnectors.gmail.name": "Gmail", + "searchConnectors.content.nativeConnectors.googleCloud.name": "Google Cloud Storage", + "searchConnectors.content.nativeConnectors.googleDrive.name": "Google Drive", + "searchConnectors.content.nativeConnectors.jira.name": "Jira Cloud & Server", + "searchConnectors.content.nativeConnectors.microsoftSQL.name": "Microsoft SQL", + "searchConnectors.content.nativeConnectors.mongodb.name": "MongoDB", + "searchConnectors.content.nativeConnectors.mysql.name": "MySQL", + "searchConnectors.content.nativeConnectors.networkDrive.name": "Lecteur réseau", + "searchConnectors.content.nativeConnectors.oneDrive.name": "OneDrive", + "searchConnectors.content.nativeConnectors.oracle.name": "Oracle", + "searchConnectors.content.nativeConnectors.outlook.name": "Outlook", + "searchConnectors.content.nativeConnectors.postgresql.name": "PostgreSQL", + "searchConnectors.content.nativeConnectors.s3.accessKey.label": "ID de clé d'accès AWS", + "searchConnectors.content.nativeConnectors.s3.buckets.label": "Compartiments AWS", + "searchConnectors.content.nativeConnectors.s3.buckets.tooltip": "Les compartiments AWS sont ignorés lorsque des règles de synchronisation avancées sont appliquées.", + "searchConnectors.content.nativeConnectors.s3.connectTimeout.label": "Délai d'attente de connexion", + "searchConnectors.content.nativeConnectors.s3.maxAttempts.label": "Nombre maximum de nouvelles tentatives", + "searchConnectors.content.nativeConnectors.s3.maxPageSize.label": "Taille maximum de la page", + "searchConnectors.content.nativeConnectors.s3.name": "S3", + "searchConnectors.content.nativeConnectors.s3.readTimeout.label": "Délai d'attente de lecture", + "searchConnectors.content.nativeConnectors.s3.secretKey.label": "Clé secrète AWS", + "searchConnectors.content.nativeConnectors.salesforce.clientId.label": "ID client", + "searchConnectors.content.nativeConnectors.salesforce.clientId.tooltip": "L'ID client de votre application connectée utilisant le protocole OAuth2. Également appelé \"clé consommateur\"", + "searchConnectors.content.nativeConnectors.salesforce.clientSecret.label": "Identifiant client secret", + "searchConnectors.content.nativeConnectors.salesforce.clientSecret.tooltip": "L'identifiant client secret de votre application connectée utilisant le protocole OAuth2. Également appelé \"secret consommateur\"", + "searchConnectors.content.nativeConnectors.salesforce.domain.label": "Domaine", + "searchConnectors.content.nativeConnectors.salesforce.domain.tooltip": "Le domaine de votre instance Salesforce. Si votre URL Salesforce est, le domaine est \"foo\".", + "searchConnectors.content.nativeConnectors.salesforce.name": "Salesforce", + "searchConnectors.content.nativeConnectors.serviceNow.name": "ServiceNow", + "searchConnectors.content.nativeConnectors.sharepointServer.name": "Serveur SharePoint", + "searchConnectors.content.nativeConnectors.slack.name": "Slack", + "searchConnectors.content.nativeConnectors.teams.name": "Équipes", + "searchConnectors.content.nativeConnectors.zoom.name": "Effectuer un zoom", + "searchConnectors.index.filtering.field": "champ", + "searchConnectors.index.filtering.policy": "Politique", + "searchConnectors.index.filtering.priority": "Priorité de la règle", + "searchConnectors.index.filtering.rule": "Règle", + "searchConnectors.index.filtering.value": "Valeur", + "searchConnectors.index.syncJobs.actions.viewJob.caption": "Afficher cette tâche de synchronisation", + "searchConnectors.index.syncJobs.actions.viewJob.title": "Afficher cette tâche de synchronisation", + "searchConnectors.index.syncJobs.documents.added": "Ajouté", + "searchConnectors.index.syncJobs.documents.removed": "Retiré", + "searchConnectors.index.syncJobs.documents.title": "Documents", + "searchConnectors.index.syncJobs.documents.total": "Total", + "searchConnectors.index.syncJobs.documents.value": "Valeur", + "searchConnectors.index.syncJobs.documents.volume": "Volume", + "searchConnectors.index.syncJobs.documents.volume.lessThanOneMBLabel": "Inférieur à 1 Mo", + "searchConnectors.index.syncJobs.events.cancelationRequested": "Annulation demandée", + "searchConnectors.index.syncJobs.events.canceled": "Annulé", + "searchConnectors.index.syncJobs.events.completed": "Terminé", + "searchConnectors.index.syncJobs.events.lastUpdated": "Dernière mise à jour", + "searchConnectors.index.syncJobs.events.state": "État", + "searchConnectors.index.syncJobs.events.syncRequestedManually": "Synchronisation demandée manuellement", + "searchConnectors.index.syncJobs.events.syncRequestedScheduled": "Synchronisation demandée par planification", + "searchConnectors.index.syncJobs.events.syncStarted": "Synchronisation démarrée", + "searchConnectors.index.syncJobs.events.time": "Heure", + "searchConnectors.index.syncJobs.events.title": "Événements", + "searchConnectors.index.syncJobs.pipeline.extractBinaryContent": "Extraire le contenu binaire", + "searchConnectors.index.syncJobs.pipeline.name": "Nom du pipeline", + "searchConnectors.index.syncJobs.pipeline.reduceWhitespace": "Réduire l'espace", + "searchConnectors.index.syncJobs.pipeline.runMlInference": "Inférence de Machine Learning", + "searchConnectors.index.syncJobs.pipeline.setting": "Paramètre de pipeline", + "searchConnectors.index.syncJobs.pipeline.title": "Pipeline", + "searchConnectors.index.syncJobs.syncRulesAdvancedTitle": "Règles de synchronisation avancées", + "searchConnectors.index.syncJobs.syncRulesTitle": "Règles de synchronisation", + "searchConnectors.manageLicenseButtonLabel": "Gérer la licence", + "searchConnectors.nativeConnectors.advancedRulesIgnored.label": "Ce champ configurable est ignoré lorsque les règles de synchronisation avancées sont appliquées.", + "searchConnectors.nativeConnectors.azureBlobStorage.accountKeyLabel": "Clé du compte", + "searchConnectors.nativeConnectors.azureBlobStorage.accountNameLabel": "Nom du compte", + "searchConnectors.nativeConnectors.azureBlobStorage.blobEndpointLabel": "Point de terminaison Blob", + "searchConnectors.nativeConnectors.azureBlobStorage.containerNameLabel": "Liste des conteneurs", + "searchConnectors.nativeConnectors.azureBlobStorage.name": "Stockage Blob Azure", + "searchConnectors.nativeConnectors.confluence.name": "Confluence", + "searchConnectors.nativeConnectors.confluence.spaceKeysLabel": "Touche espace Confluence", + "searchConnectors.nativeConnectors.confluence.urlLabel": "Étiquette URL Confluence", + "searchConnectors.nativeConnectors.confluenceCloud.accountEmailLabel": "E-mail du compte Confluence Cloud", + "searchConnectors.nativeConnectors.confluenceCloud.name": "Cloud Confluence", + "searchConnectors.nativeConnectors.confluenceDataCenter.name": "Centre de données Confluence", + "searchConnectors.nativeConnectors.confluenceDataCenter.passwordLabel": "Mot de passe", + "searchConnectors.nativeConnectors.confluenceDataCenter.usernameLabel": "Nom d'utilisateur", + "searchConnectors.nativeConnectors.confluenceServer.apiTokenLabel": "Token d'API de Confluence Cloud", + "searchConnectors.nativeConnectors.confluenceServer.name": "Serveur Confluence", + "searchConnectors.nativeConnectors.confluenceServer.passwordLabel": "Mot de passe du serveur Confluence", + "searchConnectors.nativeConnectors.confluenceServer.usernameLabel": "Nom d'utilisateur du serveur Confluence", + "searchConnectors.nativeConnectors.confluenceSource.label": "Source de données Confluence", + "searchConnectors.nativeConnectors.databaseLabel": "Base de données", + "searchConnectors.nativeConnectors.dropbox.name": "Dropbox", + "searchConnectors.nativeConnectors.enableDLS.label": "Activer la sécurité au niveau du document", + "searchConnectors.nativeConnectors.enableDLS.tooltip": "La sécurité au niveau du document préserve dans Elasticsearch les identités et permissions paramétrées dans Google Drive. Vous pouvez ainsi restreindre et personnaliser l'accès en lecture des utilisateurs et des groupes pour les documents dans cet index. La synchronisation de contrôle d'accès garantit que ces métadonnées sont correctement actualisées dans vos documents Elasticsearch.", + "searchConnectors.nativeConnectors.enableSSL.label": "Activer SSL", + "searchConnectors.nativeConnectors.gdrive.label": "Compte de service JSON Google Drive", + "searchConnectors.nativeConnectors.gdrive.maxHTTPRequest.label": "Requêtes HTTP simultanées maximales", + "searchConnectors.nativeConnectors.gdrive.maxHTTPRequest.tooltip": "Ce paramètre fixe le nombre maximal de requêtes HTTP simultanées envoyées à l'API Google pour récupérer des données. Augmenter cette valeur peut améliorer la vitesse de récupération des données, mais également accroître les demandes de ressources systèmes et de bande passante du réseau.", + "searchConnectors.nativeConnectors.gdrive.tooltip": "Ces connecteurs s'authentifient comme un compte de service afin de synchroniser le contenu depuis Google Drive.", + "searchConnectors.nativeConnectors.gdrive.useDomainWideDelegation.label": "Utiliser la délégation à l'échelle du domaine pour la synchronisation des données", + "searchConnectors.nativeConnectors.gdrive.useDomainWideDelegation.tooltip": "Activez la délégation à l'échelle du domaine pour synchroniser automatiquement le contenu de tous les Drive partagés et individuels de Google Workspace. Il n'est donc plus nécessaire de partager manuellement les données de Google Drive avec votre compte de service, mais le temps de synchronisation risque d'être plus long. Si la fonctionnalité est désactivée, seuls les éléments et les dossiers partagés manuellement avec le compte de service seront synchronisés. Veuillez consulter la documentation du connecteur pour vous assurer que la délégation à l'échelle du domaine est correctement configurée et a les cadres appropriés.", + "searchConnectors.nativeConnectors.gdrive.workspaceAdminEmail.label": "E-mail administrateur Google Workspace", + "searchConnectors.nativeConnectors.gdrive.workspaceAdminEmail.tooltip": "Afin d'utiliser la sécurité au niveau du document, vous devez activer la délégation d'autorité au niveau du domaine de Google Workspace pour votre compte de service. Un compte de service dont l'autorité est déléguée peut offrir à l'administrateur des permissions suffisantes pour récupérer tous les utilisateurs et toutes les permissions associées.", + "searchConnectors.nativeConnectors.gdrive.workspaceAdminEmailDataSync.label": "E-mail administrateur Google Workspace", + "searchConnectors.nativeConnectors.gdrive.workspaceAdminEmailDataSync.tooltip": "Indiquez l'e-mail de l'administrateur à utiliser avec la délégation à l'échelle du domaine pour la synchronisation des données. Cette adresse e-mail permet au connecteur d'utiliser l'API Admin Directory pour répertorier les utilisateurs de l'organisation. Veuillez consulter la documentation du connecteur pour vous assurer que la délégation à l'échelle du domaine est correctement configurée et a les cadres appropriés.", + "searchConnectors.nativeConnectors.gdrive.workspaceEmailSharedDrivesSync.label": "E-mail Google Workspace pour la synchronisation des Drive partagés", + "searchConnectors.nativeConnectors.gdrive.workspaceEmailSharedDrivesSync.tooltip": "Fournissez l'e-mail de l'utilisateur de Google Workspace pour la découverte et la synchronisation des Drive partagés. Seuls les Drive partagés auxquels cet utilisateur a accès seront synchronisés.", + "searchConnectors.nativeConnectors.github.configuration.useDocumentLevelSecurityTooltip": "La sécurité au niveau du document permet de conserver dans Elasticsearch les identités et autorisations paramétrées dans GitHub. Vous pouvez ainsi restreindre et personnaliser l'accès en lecture des utilisateurs et des groupes pour les documents dans cet index. La synchronisation de contrôle d'accès garantit que ces métadonnées sont correctement actualisées dans vos documents Elasticsearch.", + "searchConnectors.nativeConnectors.github.label": "Source de données GitHub", + "searchConnectors.nativeConnectors.github.listOfRepos.label": "Listes de référentiels", + "searchConnectors.nativeConnectors.github.listOfRepos.tooltip": "Ce champ configurable est ignoré lorsque les règles de synchronisation avancées sont appliquées.", + "searchConnectors.nativeConnectors.github.name": "GitHub", + "searchConnectors.nativeConnectors.github.options.cloudLabel": "Cloud GitHub", + "searchConnectors.nativeConnectors.github.options.cloudServer": "Serveur GitHub", + "searchConnectors.nativeConnectors.github.options.organization": "Organisation", + "searchConnectors.nativeConnectors.github.options.other": "Autre", + "searchConnectors.nativeConnectors.github.org_name.label": "Nom de l'organisation", + "searchConnectors.nativeConnectors.github.repo_type": "La fonctionnalité de sécurité au niveau du document n'est pas disponible pour le type de référentiel \"autre\"", + "searchConnectors.nativeConnectors.github.repo_type.label": "Type de référentiel", + "searchConnectors.nativeConnectors.github.token.label": "Jeton GitHub", + "searchConnectors.nativeConnectors.github.url.label": "URL GitHub", + "searchConnectors.nativeConnectors.gmail.customer_id.label": "ID client Google", + "searchConnectors.nativeConnectors.gmail.customer_id.tooltip": "Console admin Google -> Compte -> Paramètres -> ID client", + "searchConnectors.nativeConnectors.gmail.include_spam_and_trash.label": "Inclure le spam et les e-mails indésirables", + "searchConnectors.nativeConnectors.gmail.include_spam_and_trash.tooltip": "Si réglé sur \"true\", inclura le spam et les e-mails indésirables.", + "searchConnectors.nativeConnectors.gmail.name": "Gmail", + "searchConnectors.nativeConnectors.gmail.service_account_credentials.label": "Compte de service JSON GMail", + "searchConnectors.nativeConnectors.gmail.subject.label": "E-mail administrateur Google Workspace", + "searchConnectors.nativeConnectors.gmail.subject.tooltip": "Adresse e-mail du compte admin", + "searchConnectors.nativeConnectors.gmail.use_document_level_security.label": "Activer la sécurité au niveau du document", + "searchConnectors.nativeConnectors.gmail.use_document_level_security.tooltip": "La sécurité au niveau du document permet de conserver dans Elasticsearch les identités et autorisations paramétrées dans GMail. Vous pouvez ainsi restreindre et personnaliser l'accès en lecture des utilisateurs pour les documents contenus dans cet index. La synchronisation de contrôle d'accès garantit que ces métadonnées sont correctement actualisées dans vos documents Elasticsearch.", + "searchConnectors.nativeConnectors.google_drive.name": "Google Drive", + "searchConnectors.nativeConnectors.googleCloudStorage.bucketNameLabel": "Liste des compartiments", + "searchConnectors.nativeConnectors.googleCloudStorage.label": "Compte de service JSON Google Cloud", + "searchConnectors.nativeConnectors.googleCloudStorage.retry.label": "Nombre maximum de nouvelles tentatives pour les requêtes ayant échoué", + "searchConnectors.nativeConnectors.jira.cloudApiTokenLabel": "Token d'API Jira Cloud", + "searchConnectors.nativeConnectors.jira.cloudServiceAccountLabel": "Id de compte service Jira Cloud", + "searchConnectors.nativeConnectors.jira.dataCenterPasswordLabel": "Mot de passe", + "searchConnectors.nativeConnectors.jira.dataCenterUsername": "Nom d'utilisateur", + "searchConnectors.nativeConnectors.jira.dataSourceLabel": "Source de données Jira", + "searchConnectors.nativeConnectors.jira.hostUrlLabel": "URL de l'hôte Jira", + "searchConnectors.nativeConnectors.jira.jiraCloudLabel": "Jira Cloud", + "searchConnectors.nativeConnectors.jira.jiraDataCenterLabel": "Centre de données Jira", + "searchConnectors.nativeConnectors.jira.jiraServerLabel": "Serveur Jira", + "searchConnectors.nativeConnectors.jira.name": "Jira", + "searchConnectors.nativeConnectors.jira.projectKeysLabel": "Clés de projet Jira", + "searchConnectors.nativeConnectors.jira.serverPasswordLabel": "Mot de passe serveur Jira", + "searchConnectors.nativeConnectors.jira.serverUsername": "Nom d'utilisateur serveur Jira", + "searchConnectors.nativeConnectors.mongodb.configuration.collectionLabel": "Collection", + "searchConnectors.nativeConnectors.mongodb.configuration.directConnectionLabel": "Connexion directe", + "searchConnectors.nativeConnectors.mongodb.configuration.hostLabel": "Nom d'hôte du serveur", + "searchConnectors.nativeConnectors.mongodb.configuration.sslCaLabel": "Autorité de certification (.pem)", + "searchConnectors.nativeConnectors.mongodb.configuration.sslCaTooltip": "Précise le certificat racine fourni par l'Autorité de certification. La valeur du certificat permet de valider le certificat présenté par l'instance MongoDB.", + "searchConnectors.nativeConnectors.mongodb.configuration.sslEnabledLabel": "Connexion SSL/TLS", + "searchConnectors.nativeConnectors.mongodb.configuration.sslEnabledTooltip": "Cette option établit une connexion sécurisée au serveur MongoDB grâce au chiffrement SSL/TLS. Assurez-vous que votre déploiement MongoDB prend en charge les connexions SSL/TLS. Activez cette option si le cluster MongoDB utilise des enregistrements DNS SRV.", + "searchConnectors.nativeConnectors.mongodb.configuration.tlsInsecureLabel": "Ignorer la vérification du certificat", + "searchConnectors.nativeConnectors.mongodb.configuration.tlsInsecureTooltip": "Cette option permet d'ignorer la validation du certificat pour les connexions TLS/SSL à votre serveur MongoDB. Nous vous recommandons fortement de la désactiver.", + "searchConnectors.nativeConnectors.mongodb.name": "MongoDB", + "searchConnectors.nativeConnectors.mssql.configuration.hostLabel": "Hôte", + "searchConnectors.nativeConnectors.mssql.configuration.passwordLabel": "Mot de passe", + "searchConnectors.nativeConnectors.mssql.configuration.retriesLabel": "Nouvelles tentatives par requête", + "searchConnectors.nativeConnectors.mssql.configuration.rowsFetchedLabel": "Lignes extraites par requête", + "searchConnectors.nativeConnectors.mssql.configuration.schemaLabel": "Schéma", + "searchConnectors.nativeConnectors.mssql.configuration.tablesLabel": "Liste de tables séparées par des virgules", + "searchConnectors.nativeConnectors.mssql.configuration.usernameLabel": "Nom d'utilisateur", + "searchConnectors.nativeConnectors.mssql.configuration.validateHostLabel": "Valider l’hôte", + "searchConnectors.nativeConnectors.mssql.name": "Microsoft SQL", + "searchConnectors.nativeConnectors.mysql.configuration.hostLabel": "Hôte", + "searchConnectors.nativeConnectors.mysql.configuration.passwordLabel": "Mot de passe", + "searchConnectors.nativeConnectors.mysql.configuration.retriesLabel": "Nouvelles tentatives par requête", + "searchConnectors.nativeConnectors.mysql.configuration.rowsFetchedLabel": "Lignes extraites par requête", + "searchConnectors.nativeConnectors.mysql.configuration.tablesLabel": "Liste de tables séparées par des virgules", + "searchConnectors.nativeConnectors.mysql.configuration.usernameLabel": "Nom d'utilisateur", + "searchConnectors.nativeConnectors.mysql.name": "MySQL", + "searchConnectors.nativeConnectors.nativeConnectors.maximumConcurrentLabel": "Téléchargement actuels maximaux", + "searchConnectors.nativeConnectors.networkDrive.ipAddressLabel": "Adresse IP", + "searchConnectors.nativeConnectors.networkDrive.name": "Lecteur réseau", + "searchConnectors.nativeConnectors.networkDrive.pathLabel": "Chemin", + "searchConnectors.nativeConnectors.oneDrive.azureClientId.label": "ID client application Azure", + "searchConnectors.nativeConnectors.oneDrive.azureClientSecret.label": "Identifiant client secret application Azure", + "searchConnectors.nativeConnectors.onedrive.name": "OneDrive", + "searchConnectors.nativeConnectors.oneDrive.tenantId.label": "ID locataire application Azure", + "searchConnectors.nativeConnectors.oracle.configuration.databaseLabel": "Base de données", + "searchConnectors.nativeConnectors.oracle.configuration.fetch_sizeLabel": "Lignes extraites par requête", + "searchConnectors.nativeConnectors.oracle.configuration.hostLabel": "Hôte", + "searchConnectors.nativeConnectors.oracle.configuration.oracle_homeLabel": "Chemin d'accès à la page d'accueil d'Oracle", + "searchConnectors.nativeConnectors.oracle.configuration.oracle_protocolLabel": "Protocole de connexion à Oracle", + "searchConnectors.nativeConnectors.oracle.configuration.passwordLabel": "Mot de passe", + "searchConnectors.nativeConnectors.oracle.configuration.portLabel": "Port", + "searchConnectors.nativeConnectors.oracle.configuration.retry_countLabel": "Nouvelles tentatives par requête", + "searchConnectors.nativeConnectors.oracle.configuration.tablesLabel": "Liste de tables séparées par des virgules", + "searchConnectors.nativeConnectors.oracle.configuration.usernameLabel": "Nom d'utilisateur", + "searchConnectors.nativeConnectors.oracle.configuration.wallet_configuration_pathLabel": "Chemin d'accès aux fichiers de configuration du portefeuille SSL", + "searchConnectors.nativeConnectors.oracle.name": "Oracle", + "searchConnectors.nativeConnectors.outlook.active_directory_server.label": "Serveur Active Directory", + "searchConnectors.nativeConnectors.outlook.active_directory_server.tooltip": "Adresse IP du serveur Active Directory. P. ex. 127.0.0.1", + "searchConnectors.nativeConnectors.outlook.client_id.label": "ID client", + "searchConnectors.nativeConnectors.outlook.client_secret.label": "Valeur de l'identifiant client secret", + "searchConnectors.nativeConnectors.outlook.data_source.label": "Source de données Outlook", + "searchConnectors.nativeConnectors.outlook.domain.label": "Nom de domaine du serveur Exchange", + "searchConnectors.nativeConnectors.outlook.domain.tooltip": "Nom de domaine, p. ex gmail.com ou outlook.com", + "searchConnectors.nativeConnectors.outlook.exchange_server.label": "Serveur Exchange", + "searchConnectors.nativeConnectors.outlook.exchange_server.tooltip": "Adresse IP du serveur Exchange. P. ex. 127.0.0.1", + "searchConnectors.nativeConnectors.outlook.name": "Outlook", + "searchConnectors.nativeConnectors.outlook.password.label": "Mot de passe du serveur Exchange", + "searchConnectors.nativeConnectors.outlook.ssl_ca.label": "Certificat SSL", + "searchConnectors.nativeConnectors.outlook.ssl_enabled.label": "Activer SSL", + "searchConnectors.nativeConnectors.outlook.tenant_id.label": "ID locataire", + "searchConnectors.nativeConnectors.outlook.use_text_extraction_service.label": "Utiliser un service d’extraction de texte", + "searchConnectors.nativeConnectors.outlook.use_text_extraction_service.toolip": "Nécessite un déploiement distinct du service d'extraction de texte d'Elastic. Nécessite que l'extraction de texte soit désactivée dans les paramètres du pipeline.", + "searchConnectors.nativeConnectors.outlook.username.label": "Nom d'utilisateur du serveur Exchange", + "searchConnectors.nativeConnectors.passwordLabel": "Mot de passe", + "searchConnectors.nativeConnectors.portLabel": "Port", + "searchConnectors.nativeConnectors.postgresql.configuration.hostLabel": "Hôte", + "searchConnectors.nativeConnectors.postgresql.configuration.retriesLabel": "Nouvelles tentatives par requête", + "searchConnectors.nativeConnectors.postgresql.configuration.rowsFetchedLabel": "Lignes extraites par requête", + "searchConnectors.nativeConnectors.postgresql.configuration.tablesLabel": "Liste de tables séparées par des virgules", + "searchConnectors.nativeConnectors.postgresql.name": "PostgreSQL", + "searchConnectors.nativeConnectors.retriesPerRequest.label": "Nouvelles tentatives par requête", + "searchConnectors.nativeConnectors.schemaLabel": "Schéma", + "searchConnectors.nativeConnectors.servicenow.configuration.useDocumentLevelSecurityTooltip": "La sécurité au niveau du document permet de conserver dans Elasticsearch les identités et autorisations paramétrées dans ServiceNow. Vous pouvez ainsi restreindre et personnaliser l'accès en lecture des utilisateurs et des groupes pour les documents dans cet index. La synchronisation de contrôle d'accès garantit que ces métadonnées sont correctement actualisées dans vos documents Elasticsearch.", + "searchConnectors.nativeConnectors.servicenow.name": "ServiceNow", + "searchConnectors.nativeConnectors.servicenow.password.label": "Mot de passe", + "searchConnectors.nativeConnectors.servicenow.services.label": "Liste des services séparés par des virgules", + "searchConnectors.nativeConnectors.servicenow.services.tooltip": "La liste des services est ignorée lorsque des règles de synchronisation avancées sont appliquées.", + "searchConnectors.nativeConnectors.servicenow.url.label": "URL des services", + "searchConnectors.nativeConnectors.servicenow.username.label": "Nom d'utilisateur", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.clientIdLabel": "ID client", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.enumerateAllSitesLabel": "Énumérer tous les sites ?", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.enumerateAllSitesTooltip": "Si cette fonctionnalité est activée, les sites seront recherchés en bloc, puis filtrés pour obtenir la liste de sites configurés. Cela est efficace pour synchroniser de nombreux sites. Si la fonctionnalité est désactivée, chaque site configuré sera recherché au moyen d'une requête individuelle. Cela est efficace pour synchroniser quelques sites.", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.fetchDriveItemPermissionsLabel": "Récupérer les autorisations d'un driveItem", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.fetchDriveItemPermissionsTooltip": "Activer cette option pour récupérer des autorisations spécifiques d'un driveItem. Ce paramètre est susceptible d'augmenter le délai de synchronisation.", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.fetchSubsitesLabel": "Rechercher les sous-sites des sites configurés ?", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.fetchSubsitesTooltip": "Si les sous-sites du ou des sites configurés doivent être automatiquement recherchés.", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.fetchUniqueListItemPermissionsLabel": "Récupérer les autorisations d'un élément de liste unique", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.fetchUniqueListItemPermissionsTooltip": "Activer cette option pour récupérer les autorisations d'un élément de liste unique. Ce paramètre est susceptible d'augmenter le délai de synchronisation. Si ce paramètre est désactivé, un élément de liste hérite des permissions de son site parent.", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.fetchUniqueListPermissionsLabel": "Récupérer les autorisations de liste unique", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.fetchUniqueListPermissionsTooltip": "Activer cette option pour récupérer les autorisations de liste unique. Ce paramètre est susceptible d'augmenter le délai de synchronisation. Si ce paramètre est désactivé, une liste hérite des permissions de son site parent.", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.fetchUniquePagePermissionsLabel": "Récupérer les autorisations de page unique", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.fetchUniquePagePermissionsTooltip": "Activer cette option pour récupérer les autorisations de page unique. Ce paramètre est susceptible d'augmenter le délai de synchronisation. Si ce paramètre est désactivé, une page hérite des permissions de son site parent.", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.secretValueLabel": "Valeur secrète", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.siteCollectionsLabel": "Liste de sites séparées par des virgules", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.siteCollectionsTooltip": "Une liste de sites séparés par des virgules dont les données doivent être ingérées. Utilisez \"*\" pour inclure tous les sites disponibles.", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.tenantIdLabel": "ID locataire", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.tenantNameLabel": "Nom du locataire", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.useDocumentLevelSecurityLabel": "Activer la sécurité au niveau du document", + "searchConnectors.nativeConnectors.sharepoint_online.configuration.useDocumentLevelSecurityTooltip": "La sécurité au niveau du document préserve dans Elasticsearch les identités et permissions paramétrées dans Sharepoint Online. Ces métadonnées sont ajoutées à votre document Elasticsearch afin que vous puissiez contrôler l'accès en lecture des utilisateurs et des groupes. La synchronisation de contrôle d'accès garantit que ces métadonnées sont correctement actualisées.", + "searchConnectors.nativeConnectors.sharepoint_online.name": "SharePoint en ligne", + "searchConnectors.nativeConnectors.sslCertificate.label": "Certificat SSL", + "searchConnectors.nativeConnectors.textExtractionService.label": "Utiliser un service d’extraction de texte", + "searchConnectors.nativeConnectors.textExtractionService.tooltip": "Nécessite un déploiement distinct du service d’extraction de données d’Elastic. Nécessite également que les paramètres de pipeline désactivent l’extraction de texte.", + "searchConnectors.nativeConnectors.usernameLabel": "Nom d'utilisateur", + "searchConnectors.searchIndices.addedDocs.columnTitle": "Documents ajoutés", + "searchConnectors.searchIndices.deletedDocs.columnTitle": "Documents supprimés", + "searchConnectors.searchIndices.identitySync.columnTitle": "Identités synchronisées", + "searchConnectors.searchIndices.syncJobType.columnTitle": "Type de synchronisation de contenu", + "searchConnectors.searchIndices.syncStatus.columnTitle": "Statut", + "searchConnectors.server.connectors.configuration.error": "Connecteur introuvable", + "searchConnectors.server.connectors.scheduling.error": "Document introuvable", + "searchConnectors.server.connectors.serviceType.error": "Document introuvable", + "searchConnectors.syncJobs.flyout.canceledTitle": "Synchronisation annulée", + "searchConnectors.syncJobs.flyout.completedTitle": "Synchronisation terminée", + "searchConnectors.syncJobs.flyout.failureTitle": "Échec de la synchronisation", + "searchConnectors.syncJobs.flyout.inProgressTitle": "En cours", + "searchConnectors.syncJobs.flyout.sync": "Sync", + "searchConnectors.syncJobs.flyout.sync.id": "ID", + "searchConnectors.syncJobs.flyout.syncStartedManually": "Synchronisation démarrée manuellement", + "searchConnectors.syncJobs.flyout.syncStartedScheduled": "Synchronisation démarrée par planification", + "searchConnectors.syncJobs.flyout.title": "Log d'événements", + "searchConnectors.syncJobs.lastSync.columnTitle": "Dernière synchronisation", + "searchConnectors.syncJobs.syncDuration.columnTitle": "Durée de synchronisation", + "searchConnectors.syncJobType.full": "Contenu entier", + "searchConnectors.syncJobType.incremental": "Contenu progressif", + "searchConnectors.syncStatus.canceled": "Annulation de la synchronisation", + "searchConnectors.syncStatus.canceling": "Synchronisation annulée", + "searchConnectors.syncStatus.completed": "Synchronisation terminée", + "searchConnectors.syncStatus.error": "Échec de la synchronisation", + "searchConnectors.syncStatus.inProgress": "Synchronisation en cours", + "searchConnectors.syncStatus.pending": "Synchronisation en attente", + "searchConnectors.syncStatus.suspended": "Synchronisation suspendue", + "searchErrors.painlessError.painlessScriptedFieldErrorMessage": "Erreur d'exécution du champ d'exécution ou du champ scripté sur la vue de données {indexPatternName}", + "searchErrors.tsdbError.message": "Le champ {field} du type de série temporelle [compteur] a été utilisé avec une opération {op} non prise en charge.", + "searchErrors.errors.fetchError": "Vérifiez votre connexion réseau et réessayez.", + "searchErrors.esError.unknownRootCause": "inconnue", + "searchErrors.esError.viewDetailsButtonLabel": "Afficher les détails", + "searchErrors.painlessError.buttonTxt": "Modifier le script", + "searchErrors.search.esErrorTitle": "Impossible d’extraire les résultats de recherche", + "searchErrors.search.httpErrorTitle": "Impossible de se connecter au serveur Kibana", + "searchErrors.tsdbError.tsdbCounterDocsLabel": "Pour en savoir plus sur les types de champs des séries temporelles et les agrégations compatibles [counter]", + "searchIndexDocuments.documentList.description": "Affichage de {results} sur {total}. Nombre maximal de résultats de recherche de {maximum} documents.", + "searchIndexDocuments.documentList.pagination.itemsPerPage": "Documents par page : {docPerPage}", + "searchIndexDocuments.documentList.paginationOptions.option": "{docCount} documents", + "searchIndexDocuments.documentList.resultLimit": "Seuls les {number} premiers résultats sont disponibles pour la pagination. Veuillez utiliser la barre de recherche pour filtrer vos résultats.", + "searchIndexDocuments.documentList.resultLimitTitle": "Les résultats sont limités à {number} documents", + "searchIndexDocuments.result.expandTooltip.showFewer": "Afficher {amount} champs en moins", + "searchIndexDocuments.result.expandTooltip.showMore": "Afficher {amount} champs en plus", + "searchIndexDocuments.result.header.metadata.icon.ariaLabel": "Métadonnées pour le document : {id}", + "searchIndexDocuments.result.title.id": "ID de document : {id}", + "searchIndexDocuments.documentList.docsPerPage": "Nombre de documents par page déroulée", + "searchIndexDocuments.documentList.paginationAriaLabel": "Pagination pour la liste de documents", + "searchIndexDocuments.documents.searchField.placeholder": "Rechercher des documents dans cet index", + "searchIndexDocuments.documents.title": "Parcourir des documents", + "searchIndexDocuments.result.expandTooltip.allVisible": "Tous les champs sont visibles", + "searchIndexDocuments.result.header.metadata.deleteDocument": "Supprimer le document", + "searchIndexDocuments.result.header.metadata.title": "Métadonnées du document", + "searchResponseWarnings.badgeButtonLabel": "{warningCount} {warningCount, plural, one {avertissement} other {avertissements}}", + "searchResponseWarnings.title.clustersClause": "Un problème est survenu avec {nonSuccessfulClustersCount} {nonSuccessfulClustersCount, plural, one {cluster} other {clusters}}", + "searchResponseWarnings.title.clustersClauseAndRequestsClause": "{clustersClause} pour {requestsCount} requêtes", + "searchResponseWarnings.description.multipleClusters": "Ces clusters ont rencontré des problèmes lors du renvoi des données et les résultats pourraient être incomplets.", + "searchResponseWarnings.description.singleCluster": "Ce cluster a rencontré des problèmes lors du renvoi des données et les résultats pourraient être incomplets.", "searchResponseWarnings.noResultsTitle": "Résultat introuvable", - "securitySolutionPackages.dataTable.eventsTab.unit": "{totalCount, plural, =1 {alerte} one {alertes} many {alertes} other {alertes}}", - "securitySolutionPackages.dataTable.unit": "{totalCount, plural, =1 {alerte} one {alertes} many {alertes} other {alertes}}", - "securitySolutionPackages.ecsDataQualityDashboard.allTab.allFieldsTableTitle": "Tous les champs – {indexName}", + "searchResponseWarnings.viewDetailsButtonLabel": "Afficher les détails", + "securitySolutionPackages.alertAssignments.upsell": "Passer à {requiredLicense} pour utiliser les affectations d'alertes", + "securitySolutionPackages.alertSuppressionRuleForm.upsell": "La suppression d'alertes est activée avec la licence {requiredLicense} ou supérieure", + "securitySolutionPackages.dataTable.eventsTab.unit": "{totalCount, plural, =1 {alerte} other {alertes}}", + "securitySolutionPackages.dataTable.unit": "{totalCount, plural, =1 {alerte} other {alertes}}", + "securitySolutionPackages.ecsDataQualityDashboard.allTab.allFieldsTableTitle": "Tous les champs - {indexName}", "securitySolutionPackages.ecsDataQualityDashboard.checkAllErrorCheckingIndexMessage": "Une erreur s'est produite lors de la vérification de l'index {indexName}", "securitySolutionPackages.ecsDataQualityDashboard.checkingLabel": "Vérification de {index}", - "securitySolutionPackages.ecsDataQualityDashboard.coldPatternTooltip": "{indices} {indices, plural, =1 {index} one {index système non migrés} many {index} other {index}} correspondant au modèle {pattern} {indices, plural, =1 {est} one {sont} many {sont} other {sont}} cold. Les index \"cold\" ne sont plus mis à jour et ne sont pas interrogés fréquemment. Les informations doivent toujours être interrogeables, mais il est acceptable que ces requêtes soient plus lentes.", + "securitySolutionPackages.ecsDataQualityDashboard.coldPatternTooltip": "{indices} {indices, plural, =1 {L'index correspondant} other {Les index correspondants}} au modèle {pattern} {indices, plural, =1 {est} other {sont}} \"cold\". Les index \"cold\" ne sont plus mis à jour et ne sont pas interrogés fréquemment. Les informations doivent toujours être interrogeables, mais il est acceptable que ces requêtes soient plus lentes.", "securitySolutionPackages.ecsDataQualityDashboard.createADataQualityCaseForIndexHeaderText": "Créer un cas de qualité des données pour l'index {indexName}", - "securitySolutionPackages.ecsDataQualityDashboard.customTab.customFieldsTableTitle": "Champs personnalisés – {indexName}", - "securitySolutionPackages.ecsDataQualityDashboard.customTab.ecsComplaintFieldsTableTitle": "Champs de plainte ECS – {indexName}", + "securitySolutionPackages.ecsDataQualityDashboard.customTab.customFieldsTableTitle": "Champs personnalisés - {indexName}", + "securitySolutionPackages.ecsDataQualityDashboard.customTab.ecsComplaintFieldsTableTitle": "Champs de plainte ECS - {indexName}", "securitySolutionPackages.ecsDataQualityDashboard.dataQualityPromptContextPill": "Qualité des données ({indexName})", "securitySolutionPackages.ecsDataQualityDashboard.emptyErrorPrompt.errorLoadingMappingsBody": "Un problème est survenu lors du chargement des mappings : {error}", "securitySolutionPackages.ecsDataQualityDashboard.emptyErrorPrompt.errorLoadingMetadataTitle": "Les index correspondant au modèle {pattern} ne seront pas vérifiés", @@ -5094,21 +5970,21 @@ "securitySolutionPackages.ecsDataQualityDashboard.errorLoadingMappingsLabel": "Erreur lors du chargement des mappings pour {patternOrIndexName} : {details}", "securitySolutionPackages.ecsDataQualityDashboard.errorLoadingStatsLabel": "Erreur lors du chargement des statistiques : {details}", "securitySolutionPackages.ecsDataQualityDashboard.errorLoadingUnallowedValuesLabel": "Erreur lors du chargement des valeurs non autorisées pour l'index {indexName} : {details}", - "securitySolutionPackages.ecsDataQualityDashboard.frozenPatternTooltip": "{indices} {indices, plural, =1 {index} one {index système non migrés} many {index} other {index}} correspondant au modèle {pattern} {indices, plural, =1 {est} one {sont} many {sont} other {sont}} frozen. Les index gelés ne sont plus mis à jour et sont rarement interrogés. Les informations doivent toujours être interrogeables, mais il est acceptable que ces requêtes soient extrêmement lentes.", - "securitySolutionPackages.ecsDataQualityDashboard.hotPatternTooltip": "{indices} {indices, plural, =1 {index} one {index système non migrés} many {index} other {index}} correspondant au modèle {pattern} {indices, plural, =1 {est} one {sont} many {sont} other {sont}} hot. Les index \"hot\" sont mis à jour et interrogés de façon active.", + "securitySolutionPackages.ecsDataQualityDashboard.frozenPatternTooltip": "{indices} {indices, plural, =1 {L'index correspondant} other {Les index correspondants}} au modèle {pattern} {indices, plural, =1 {est} other {sont}} \"frozen\". Les index gelés ne sont plus mis à jour et sont rarement interrogés. Les informations doivent toujours être interrogeables, mais il est acceptable que ces requêtes soient extrêmement lentes.", + "securitySolutionPackages.ecsDataQualityDashboard.hotPatternTooltip": "{indices} {indices, plural, =1 {L'index correspondant} other {Les index correspondants}} au modèle {pattern} {indices, plural, =1 {est} other {sont}} \"hot\". Les index \"hot\" sont mis à jour et interrogés de façon active.", "securitySolutionPackages.ecsDataQualityDashboard.incompatibleTab.incompatibleFieldMappingsTableTitle": "Mappings de champ incompatibles – {indexName}", "securitySolutionPackages.ecsDataQualityDashboard.incompatibleTab.incompatibleFieldValuesTableTitle": "Valeurs de champ incompatibles – {indexName}", "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.allCallout": "Tous les mappings relatifs aux champs de cet index, y compris ceux qui sont conformes à la version {version} d'Elastic Common Schema (ECS) et ceux qui ne le sont pas", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.allCalloutTitle": "Tous les {fieldCount} {fieldCount, plural, =1 {mapping de champ} one {mappings de champ} many {mappings de champ} other {mappings de champ}}", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.customCallout": "{fieldCount, plural, =1 {Ce champ n''est pas défini} one {Ce champ n''est pas défini} many {Ces champs ne sont pas définis} other {Ces champs ne sont pas définis}} par l'Elastic Common Schema (ECS), version {version}.", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.customCalloutTitle": "{fieldCount} {fieldCount, plural, =1 {mapping de champ} one {mappings de champ} many {mappings de champ} other {mappings de champ}} personnalisé(s)", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.ecsCompliantCallout": "{fieldCount, plural, =1 {Le type de mapping d''index et les valeurs de document pour ce champ sont conformes} one {Le type de mapping d''index et les valeurs de document pour ce champ sont conformes} many {Les types de mapping d''index et les valeurs de document pour ce champ sont conformes} other {Les types de mapping d''index et les valeurs de document pour ce champ sont conformes}} avec la version {version} d'Elastic Common Schema (ECS)", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.ecsCompliantCalloutTitle": "{fieldCount} {fieldCount, plural, =1 {champ} one {champs} many {champs} other {champs}} conforme(s) à ECS", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.allCalloutTitle": "L'ensemble {fieldCount} {fieldCount, plural, =1 {du mapping de champs} other {des mappings de champs}}", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.customCallout": "{fieldCount, plural, =1 {Ce champ n'est pas défini} other {Ces champs ne sont pas définis}} par la version {version} d'Elastic Common Schema (ECS).", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.customCalloutTitle": "{fieldCount} {fieldCount, plural, =1 {Mapping de champs personnalisé} other {Mappings de champ personnalisés}}", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.ecsCompliantCallout": "{fieldCount, plural, =1 {Le type de mapping d'index et les valeurs de document de ce champ sont conformes} other {Les types de mapping d'index et les valeurs de document de ces champs sont conformes}} à la version {version} d'Elastic Common Schema (ECS)", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.ecsCompliantCalloutTitle": "{fieldCount} {fieldCount, plural, =1 {Champ conforme} other {Champs conformes}} à ECS", "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.incompatibleCallout": "Les champs sont incompatibles avec ECS lorsque les mappings d'index, ou les valeurs des champs de l'index, ne sont pas conformes à la version {version} d'Elastic Common Schema (ECS).", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.incompatibleCalloutTitle": "{fieldCount} {fieldCount, plural, =1 {champ} one {champs} many {champs} other {champs}} incompatible(s)", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.sameFamilyCallout": "{fieldCount, plural, =1 {Ce champ est défini} one {Ces champs sont définis} many {Ces champs sont définis} other {Ces champs sont définis}} par l'Elastic Common Schema (ECS), version {version}, toutefois {fieldCount, plural, =1 {son type de mapping ne correspond pas} one {leurs types de mapping ne correspondent pas} many {leurs types de mapping ne correspondent pas} other {leurs types de mapping ne correspondent pas}} correspondent parfaitement.", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.sameFamilyCalloutTitle": "{fieldCount} Même famille de {fieldCount, plural, =1 {mapping de champ} one {mappings de champ} many {mappings de champ} other {mappings de champ}}", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.summaryMarkdownDescription": "L'index \"{indexName}\" contient des [mappings]({mappingUrl}) ou des valeurs de champs différents des [définitions]({ecsFieldReferenceUrl}) de la version \"{version}\" d'[Elastic Common Schema]({ecsReferenceUrl}) (ECS).", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.incompatibleCalloutTitle": "{fieldCount} {fieldCount, plural, =1 {Champ incompatible} other {Champs incompatibles}}", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.sameFamilyCallout": "{fieldCount, plural, =1 {Ce champ est défini} other {Ces champs sont définis}} par Elastic Common Schema (ECS), version {version}, mais {fieldCount, plural, =1 {son type de mapping de ne correspond} other {leurs types de mapping ne correspondent}} pas exactement.", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.sameFamilyCalloutTitle": "{fieldCount} {fieldCount, plural, =1 {Mapping de champs} other {Mappings de champ}} de même famille", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.summaryMarkdownDescription": "L'index `{indexName}` a des [mappings]({mappingUrl}) ou des valeurs de champ différentes de l'[Elastic Common Schema]({ecsReferenceUrl}) (ECS), [définitions]({ecsFieldReferenceUrl}).de version `{version}`.", "securitySolutionPackages.ecsDataQualityDashboard.sameFamilyTab.sameFamilyFieldMappingsTableTitle": "Mêmes familles de mappings de champ – {indexName}", "securitySolutionPackages.ecsDataQualityDashboard.statLabels.customIndexToolTip": "Décompte des mappings d'index personnalisés dans l'index {indexName}", "securitySolutionPackages.ecsDataQualityDashboard.statLabels.customPatternToolTip": "Nombre total de mappings d'index personnalisés, dans les index correspondant au modèle {pattern}", @@ -5116,18 +5992,19 @@ "securitySolutionPackages.ecsDataQualityDashboard.statLabels.incompatiblePatternToolTip": "Nombre total de champs incompatibles avec ECS, dans les index correspondant au modèle {pattern}", "securitySolutionPackages.ecsDataQualityDashboard.statLabels.indexDocsCountToolTip": "Nombre de documents dans l'index {indexName}", "securitySolutionPackages.ecsDataQualityDashboard.statLabels.indexDocsPatternToolTip": "Nombre total de documents, dans les index correspondant au modèle {pattern}", - "securitySolutionPackages.ecsDataQualityDashboard.statLabels.indicesSizePatternToolTip": "Taille totale de tous les index principaux correspondant au modèle {pattern} (n'inclut pas de répliques)", + "securitySolutionPackages.ecsDataQualityDashboard.statLabels.indicesSizePatternToolTip": "Taille totale de tous les index principaux correspondant au modèle {pattern} (n'inclut pas les répliques)", "securitySolutionPackages.ecsDataQualityDashboard.statLabels.sameFamilyPatternToolTip": "Le nombre total de champs de la même famille tel que le type spécifié par l'ECS, dans les index correspondant au modèle {pattern}", "securitySolutionPackages.ecsDataQualityDashboard.statLabels.totalCountOfIndicesCheckedMatchingPatternToolTip": "Nombre total d'index vérifiés correspondant au modèle {pattern}", "securitySolutionPackages.ecsDataQualityDashboard.statLabels.totalCountOfIndicesMatchingPatternToolTip": "Nombre total d'index correspondant au modèle {pattern}", "securitySolutionPackages.ecsDataQualityDashboard.storageTreemap.noDataReasonLabel": "Le champ {stackByField1} n'était présent dans aucun groupe", "securitySolutionPackages.ecsDataQualityDashboard.summaryTable.indexToolTip": "Cet index correspond au nom d'index ou de modèle : {pattern}", - "securitySolutionPackages.ecsDataQualityDashboard.unmanagedPatternTooltip": "{indices} {indices, plural, =1 {index} one {index système non migrés} many {index} other {index}} correspondant au modèle {pattern} {indices, plural, =1 {est} one {sont} many {sont} other {ne sont pas gérés}} par Index Lifecycle Management (ILM)", - "securitySolutionPackages.ecsDataQualityDashboard.warmPatternTooltip": "{indices} {indices, plural, =1 {index} one {index système non migrés} many {index} other {index}} correspondant au modèle {pattern} {indices, plural, =1 {est} one {sont} many {sont} other {sont}} warm. Les index \"warm\" ne sont plus mis à jour, mais ils sont toujours interrogés.", - "securitySolutionPackages.entityAnalytics.paywall.upgradeButton": "Mise à niveau vers {requiredLicenseOrProduct}", + "securitySolutionPackages.ecsDataQualityDashboard.unmanagedPatternTooltip": "{indices} {indices, plural, =1 {L'index correspondant} other {Les index correspondants}} au modèle {pattern} {indices, plural, =1 {n'est pas géré} other {ne sont pas gérés}} par la gestion du cycle de vie des index (ILM)", + "securitySolutionPackages.ecsDataQualityDashboard.warmPatternTooltip": "{indices} {indices, plural, =1 {L'index correspondant} other {Les index correspondants}} au modèle {pattern} {indices, plural, =1 {est} other {sont}} \"warm\". Les index \"warm\" ne sont plus mis à jour, mais ils sont toujours interrogés.", + "securitySolutionPackages.entityAnalytics.paywall.upgradeButton": "Passer à {requiredLicenseOrProduct}", "securitySolutionPackages.entityAnalytics.paywall.upgradeLicenseMessage": "Cette fonctionnalité est disponible avec l'abonnement {requiredLicense} ou supérieur", "securitySolutionPackages.entityAnalytics.paywall.upgradeProductMessage": "La capacité d'évaluation du risque des entités est disponible dans notre niveau de licence {requiredProduct}", - "securitySolutionPackages.markdown.insight.upsell": "Passez au niveau {requiredLicense} pour pouvoir utiliser les informations exploitables dans des guides d'investigation", + "securitySolutionPackages.markdown.insight.upsell": "Passez au niveau {requiredLicense} pour pouvoir utiliser les informations des guides d'investigation", + "securitySolutionPackages.alertSuppressionRuleDetails.upsell": "La suppression d'alertes est configurée mais elle ne sera pas appliquée en raison d'une licence insuffisante", "securitySolutionPackages.beta.label": "Bêta", "securitySolutionPackages.dataTable.ariaLabel": "Alertes", "securitySolutionPackages.dataTable.columnHeaders.flyout.pane.removeColumnButtonLabel": "Supprimer la colonne", @@ -5135,7 +6012,7 @@ "securitySolutionPackages.dataTable.eventRenderedView.ruleTitle.column": "Règle", "securitySolutionPackages.dataTable.eventRenderedView.timestampTitle.column": "Horodatage", "securitySolutionPackages.dataTable.loadingEventsDataLabel": "Chargement des événements", - "securitySolutionPackages.ecsDataQualityDashboard.addToCaseSuccessToast": "Résultats de qualité des données ajoutés avec succès au cas", + "securitySolutionPackages.ecsDataQualityDashboard.addToCaseSuccessToast": "Résultats de qualité des données ajoutés au cas", "securitySolutionPackages.ecsDataQualityDashboard.addToNewCaseButton": "Ajouter au nouveau cas", "securitySolutionPackages.ecsDataQualityDashboard.cancelButton": "Annuler", "securitySolutionPackages.ecsDataQualityDashboard.checkAllButton": "Tout vérifier", @@ -5180,6 +6057,7 @@ "securitySolutionPackages.ecsDataQualityDashboard.errorsViewerTable.patternColumn": "Modèle", "securitySolutionPackages.ecsDataQualityDashboard.fieldsLabel": "Champs", "securitySolutionPackages.ecsDataQualityDashboard.frozenDescription": "L'index n'est plus mis à jour et il est rarement interrogé. Les informations doivent toujours être interrogeables, mais il est acceptable que ces requêtes soient extrêmement lentes.", + "securitySolutionPackages.ecsDataQualityDashboard.getResultErrorTitle": "Erreur lors de la lecture des résultats d'examen qualité des données sauvegardées", "securitySolutionPackages.ecsDataQualityDashboard.hotDescription": "L'index est mis à jour et interrogé de façon active", "securitySolutionPackages.ecsDataQualityDashboard.ilmPhaseLabel": "Phase ILM", "securitySolutionPackages.ecsDataQualityDashboard.ilmPhasesEmptyPromptBody": "La qualité des données sera vérifiée pour les index comprenant ces phases de gestion du cycle de vie des index (ILM, Index Lifecycle Management)", @@ -5215,8 +6093,8 @@ "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.ecsVersionMarkdownComment": "Version Elastic Common Schema (ECS)", "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.incompatibleCallout.fieldsWithMappingsSameFamilyLabel": "Les champs avec des mappings dans la même famille ont exactement le même comportement de recherche que le type défini par ECS, mais ils peuvent avoir une utilisation de l'espace différente ou différentes caractéristiques de performances.", "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.incompatibleCallout.whenAFieldIsIncompatibleLabel": "Lorsqu'un champ est incompatible :", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.incompatibleEmptyContent": "Tous les mappings de champs et valeurs de documents de cet index sont conformes à Elastic Common Schema (ECS).", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.incompatibleEmptyTitle": "Tous les mappings et valeurs de champs sont conformes à ECS", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.incompatibleEmptyContent": "Tous les mappings de champs et toutes les valeurs de documents de cet index sont conformes à Elastic Common Schema (ECS).", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.incompatibleEmptyTitle": "Toutes les valeurs et tous les mappings de champs sont conformes à ECS", "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.incompatibleFieldsTab": "Champs incompatibles", "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.indexMarkdown": "Index", "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.mappingThatConflictWithEcsMessage": "❌ Les mappings ou valeurs de champs qui ne sont pas conformes à ECS ne sont pas pris en charge", @@ -5227,8 +6105,8 @@ "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.pagesMayNotDisplayEventsMessage": "❌ Les pages peuvent ne pas afficher certains événements ou champs en raison de mappings ou valeurs de champs inattendus", "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.pagesMayNotDisplayFieldsMessage": "🌕 Certaines pages et fonctionnalités peuvent ne pas afficher ces champs", "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.preBuiltDetectionEngineRulesWorkMessage": "✅ Les règles de moteur de détection préconstruites fonctionnent", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.sameFamilyEmptyContent": "Tous les mappings de champs et valeurs de documents de cet index sont conformes à Elastic Common Schema (ECS).", - "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.sameFamilyEmptyTitle": "Tous les mappings et valeurs de champs sont conformes à ECS", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.sameFamilyEmptyContent": "Tous les mappings de champs et toutes les valeurs de documents de cet index sont conformes à Elastic Common Schema (ECS).", + "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.sameFamilyEmptyTitle": "Toutes les valeurs et tous les mappings de champs sont conformes à ECS", "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.sameFamilyTab": "Même famille", "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.sometimesIndicesCreatedByOlderDescription": "Parfois, les index créés par des intégrations plus anciennes comporteront des mappings ou des valeurs qui étaient conformes, mais ne le sont plus.", "securitySolutionPackages.ecsDataQualityDashboard.indexProperties.summaryMarkdownTitle": "Qualité des données", @@ -5242,6 +6120,7 @@ "securitySolutionPackages.ecsDataQualityDashboard.patternSummary.docsLabel": "Documents", "securitySolutionPackages.ecsDataQualityDashboard.patternSummary.indicesLabel": "Index", "securitySolutionPackages.ecsDataQualityDashboard.patternSummary.patternOrIndexTooltip": "Modèle, ou index spécifique", + "securitySolutionPackages.ecsDataQualityDashboard.postResultErrorTitle": "Erreur lors de l'écriture des résultats d'examen qualité des données sauvegardées", "securitySolutionPackages.ecsDataQualityDashboard.remoteClustersCallout.title": "Les clusters distants ne seront pas vérifiés", "securitySolutionPackages.ecsDataQualityDashboard.remoteClustersCallout.toCheckIndicesOnRemoteClustersLabel": "Pour vérifier les index sur des clusters distants prenant en charge la recherche dans différents clusters, connectez-vous à l'instance Kibana du cluster distant", "securitySolutionPackages.ecsDataQualityDashboard.sameFamilyBadgeLabel": "même famille", @@ -5275,6 +6154,7 @@ "securitySolutionPackages.ecsDataQualityDashboard.summaryTable.indexesNameLabel": "Nom de l'index", "securitySolutionPackages.ecsDataQualityDashboard.summaryTable.indicesCheckedColumn": "Index vérifiés", "securitySolutionPackages.ecsDataQualityDashboard.summaryTable.indicesColumn": "Index", + "securitySolutionPackages.ecsDataQualityDashboard.summaryTable.lastCheckColumn": "Dernière vérification", "securitySolutionPackages.ecsDataQualityDashboard.summaryTable.passedTooltip": "Approuvé", "securitySolutionPackages.ecsDataQualityDashboard.summaryTable.resultColumn": "Résultat", "securitySolutionPackages.ecsDataQualityDashboard.summaryTable.sizeColumn": "Taille", @@ -5288,6 +6168,8 @@ "securitySolutionPackages.entityAnalytics.pageDesc": "Détecter les menaces des utilisateurs et des hôtes de votre réseau avec l'Analyse des entités", "securitySolutionPackages.features.featureRegistry.assistant.createConversationSubFeatureDetails": "Créer des conversations", "securitySolutionPackages.features.featureRegistry.assistant.createConversationSubFeatureName": "Créer des Conversations", + "securitySolutionPackages.features.featureRegistry.casesSettingsSubFeatureDetails": "Modifier les paramètres du cas", + "securitySolutionPackages.features.featureRegistry.casesSettingsSubFeatureName": "Paramètres du cas", "securitySolutionPackages.features.featureRegistry.deleteSubFeatureDetails": "Supprimer les cas et les commentaires", "securitySolutionPackages.features.featureRegistry.deleteSubFeatureName": "Supprimer", "securitySolutionPackages.features.featureRegistry.linkSecuritySolutionAssistantTitle": "Assistant d’intelligence artificielle d’Elastic", @@ -5307,7 +6189,7 @@ "securitySolutionPackages.features.featureRegistry.subFeatures.eventFilters.description": "Excluez les événements de point de terminaison dont vous n'avez pas besoin ou que vous ne souhaitez pas stocker dans Elasticsearch.", "securitySolutionPackages.features.featureRegistry.subFeatures.eventFilters.privilegesTooltip": "\"Tous les espaces\" est requis pour l'accès aux filtres d'événements.", "securitySolutionPackages.features.featureRegistry.subFeatures.executeOperations": "Exécuter les opérations", - "securitySolutionPackages.features.featureRegistry.subFeatures.executeOperations.description": "Effectuez l'exécution de script sur le point de terminaison.", + "securitySolutionPackages.features.featureRegistry.subFeatures.executeOperations.description": "Effectuez les actions de réponse d'exécution de script dans la console de réponse.", "securitySolutionPackages.features.featureRegistry.subFeatures.executeOperations.privilegesTooltip": "\"Tous les espaces\" est requis pour l'accès aux opérations d'exécution.", "securitySolutionPackages.features.featureRegistry.subFeatures.fileOperations": "Opérations de fichier", "securitySolutionPackages.features.featureRegistry.subFeatures.fileOperations.description": "Effectuez les actions de réponse liées aux fichiers dans la console de réponse.", @@ -5333,10 +6215,10 @@ "securitySolutionPackages.sideNav.betaBadge.label": "Bêta", "securitySolutionPackages.sideNav.togglePanel": "Activer/Désactiver le panneau de navigation", "share.contextMenuTitle": "Partager ce {objectType}", - "share.urlPanel.canNotShareAsSavedObjectHelpText": "Pour le partager comme objet partagé, enregistrez le {objectType}.", + "share.urlPanel.canNotShareAsSavedObjectHelpText": "Pour le partager comme objet enregistré, enregistrez le {objectType}.", "share.urlPanel.savedObjectDescription": "Vous pouvez partager cette URL avec des personnes pour leur permettre de charger la version enregistrée la plus récente de ce {objectType}.", - "share.urlPanel.snapshotDescription": "Les URL de snapshot encodent l'état actuel de {objectType} dans l'URL proprement dite. Les modifications apportées au {objectType} enregistré ne seront pas visibles via cette URL.", - "share.urlPanel.unableCreateShortUrlErrorMessage": "Impossible de créer une URL courte. Erreur : {errorMessage}", + "share.urlPanel.snapshotDescription": "Les URL de snapshot encodent l'état actuel de {objectType} dans l'URL elle-même. Les modifications apportées au {objectType} enregistré ne seront pas visibles via cette URL.", + "share.urlPanel.unableCreateShortUrlErrorMessage": "Impossible de créer une URL courte. Erreur : {errorMessage}.", "share.urlService.redirect.RedirectManager.locatorNotFound": "Le localisateur [ID = {id}] n'existe pas.", "share.advancedSettings.csv.quoteValuesText": "Les valeurs doivent-elles être mises entre guillemets dans les exportations CSV ?", "share.advancedSettings.csv.quoteValuesTitle": "Mettre les valeurs CSV entre guillemets", @@ -5356,22 +6238,27 @@ "share.urlPanel.shortUrlLabel": "URL courte", "share.urlPanel.snapshotLabel": "Snapshot", "share.urlPanel.urlGroupTitle": "URL", - "share.urlService.redirect.components.Error.title": "Erreur de redirection", + "share.urlService.redirect.components.docTitle": "Introuvable", + "share.urlService.redirect.components.Error.body": "Désolé, l'objet que vous recherchez est introuvable à cet URL. Il a peut-être été supprimé ou renommé, ou peut-être qu'il n'a jamais existé.", + "share.urlService.redirect.components.Error.homeButton": "Retour à l'accueil", + "share.urlService.redirect.components.Error.title": "Impossible d'ouvrir l'URL", "share.urlService.redirect.components.Spinner.label": "Redirection…", "share.urlService.redirect.RedirectManager.invalidParamParams": "Impossible d'analyser les paramètres du localisateur. Les paramètres du localisateur doivent être sérialisés en tant que JSON et définis au paramètre de recherche d'URL \"p\".", "share.urlService.redirect.RedirectManager.missingParamLocator": "ID du localisateur non spécifié. Spécifiez le paramètre de recherche \"l\" dans l'URL ; ce devrait être un ID de localisateur existant.", "share.urlService.redirect.RedirectManager.missingParamParams": "Paramètres du localisateur non spécifiés. Spécifiez le paramètre de recherche \"p\" dans l'URL ; ce devrait être un objet sérialisé JSON des paramètres du localisateur.", "share.urlService.redirect.RedirectManager.missingParamVersion": "Version des paramètres du localisateur non spécifiée. Spécifiez le paramètre de recherche \"v\" dans l'URL ; ce devrait être la version de Kibana au moment de la génération des paramètres du localisateur.", - "sharedUXPackages.codeEditor.startEditing": "Appuyez sur {key} pour démarrer la modification.", - "sharedUXPackages.codeEditor.startEditingReadOnly": "Appuyez sur {key} pour commencer à interagir avec le code.", + "sharedUXPackages.codeEditor.startEditing": "Appuyez sur {key} pour modifier.", + "sharedUXPackages.codeEditor.startEditingReadOnly": "Appuyez sur {key} pour interagir avec le code.", "sharedUXPackages.codeEditor.stopEditing": "Appuyez sur {key} pour arrêter la modification.", - "sharedUXPackages.codeEditor.stopEditingReadOnly": "Appuyez sur {key} pour arrêter d'interagir avec le code.", + "sharedUXPackages.codeEditor.stopEditingReadOnly": "Appuyez sur {key} pour arrêter l'interaction.", + "sharedUXPackages.error_boundary.fatal.prompt.details": "L'erreur ci-dessus a eu lieu dans {name} :", "sharedUXPackages.filePicker.deleteFileQuestion": "Voulez-vous vraiment supprimer \"{fileName}\" ?", - "sharedUXPackages.filePicker.selectFilesButtonLable": "Sélectionner {nrOfFiles} fichiers", - "sharedUXPackages.fileUpload.fileTooLargeErrorMessage": "Le fichier est trop volumineux. La taille maximale est de {expectedSize, plural, one {# octet} many {# octets} other {# octets}}.", - "sharedUXPackages.fileUpload.mimeTypeNotSupportedErrorMessage": "Le type de fichier mime \"{mimeType}\" n’est pas pris en charge. Les types mime pris en charge sont : {supportedMimeTypes}.", + "sharedUXPackages.filePicker.selectFilesButtonLable": "Sélectionner {nrOfFiles} fichiers", + "sharedUXPackages.fileUpload.fileTooLargeErrorMessage": "Le fichier est trop volumineux. La taille maximale est de {expectedSize, plural, one {# octet} other {# octets} }.", + "sharedUXPackages.fileUpload.mimeTypeNotSupportedErrorMessage": "Le type de fichier mime \"{mimeType}\" n'est pas pris en charge. Les types de fichiers mime pris en charge sont : {supportedMimeTypes}.", + "sharedUXPackages.no_data_views.esqlMessage": "Vous pouvez aussi rechercher vos données en utilisant directement ES|QL (version d'évaluation technique). {docsLink}", "sharedUXPackages.noDataPage.intro": "Ajoutez vos données pour commencer, ou {link} sur {solution}.", - "sharedUXPackages.noDataPage.welcomeTitle": "Bienvenue dans Elastic {solution} !", + "sharedUXPackages.noDataPage.welcomeTitle": "Bienvenue dans Elastic {solution}.", "sharedUXPackages.solutionNav.mobileTitleText": "{solutionName} {menuText}", "sharedUXPackages.buttonToolbar.buttons.addFromLibrary.libraryButtonLabel": "Ajouter depuis la bibliothèque", "sharedUXPackages.buttonToolbar.toolbar.errorToolbarText": "Il y a plus de 120 boutons supplémentaires. Nous vous invitons à limiter le nombre de boutons.", @@ -5379,10 +6266,23 @@ "sharedUXPackages.card.noData.noPermission.description": "Cette intégration n'est pas encore activée. Votre administrateur possède les autorisations requises pour l'activer.", "sharedUXPackages.card.noData.noPermission.title": "Contactez votre administrateur", "sharedUXPackages.card.noData.title": "Ajouter Elastic Agent", + "sharedUXPackages.chrome.sideNavigation.betaBadge.label": "Bêta", "sharedUXPackages.chrome.sideNavigation.recentlyAccessed.title": "Récent", + "sharedUXPackages.chrome.sideNavigation.togglePanel": "Afficher/Masquer le panneau de navigation", "sharedUXPackages.codeEditor.ariaLabel": "Éditeur de code", "sharedUXPackages.codeEditor.enterKeyLabel": "Entrée", "sharedUXPackages.codeEditor.escapeKeyLabel": "Échap", + "sharedUXPackages.codeEditor.readOnlyMessage": "Modification impossible dans l'éditeur en lecture seule", + "sharedUXPackages.error_boundary.fatal.prompt.body": "Essayez d'actualiser la page pour résoudre le problème.", + "sharedUXPackages.error_boundary.fatal.prompt.detailButton": "Afficher les détails", + "sharedUXPackages.error_boundary.fatal.prompt.details.close": "Fermer", + "sharedUXPackages.error_boundary.fatal.prompt.details.copyToClipboard": "Copier l'erreur dans le presse-papiers", + "sharedUXPackages.error_boundary.fatal.prompt.details.title": "Détails de l'erreur", + "sharedUXPackages.error_boundary.fatal.prompt.pageReloadButton": "Actualiser la page", + "sharedUXPackages.error_boundary.fatal.prompt.title": "Impossible de charger la page", + "sharedUXPackages.error_boundary.recoverable.prompt.body": "Cela devrait résoudre les problèmes de chargement de la page.", + "sharedUXPackages.error_boundary.recoverable.prompt.pageReloadButton": "Actualiser la page", + "sharedUXPackages.error_boundary.recoverable.prompt.title": "Actualiser la page", "sharedUXPackages.exitFullScreenButton.exitFullScreenModeButtonText": "Quitter le plein écran", "sharedUXPackages.exitFullScreenButton.fullScreenModeDescription": "En mode Plein écran, appuyez sur Échap pour quitter.", "sharedUXPackages.filePicker.cancel": "Annuler", @@ -5407,6 +6307,8 @@ "sharedUXPackages.fileUpload.uploadCompleteButtonLabel": "Chargement terminé", "sharedUXPackages.fileUpload.uploadDoneToolTipContent": "Votre fichier a bien été chargé !", "sharedUXPackages.fileUpload.uploadingButtonLabel": "Chargement", + "sharedUXPackages.no_data_views.esqlButtonLabel": "Essayer ES|QL", + "sharedUXPackages.no_data_views.esqlDocsLink": "En savoir plus.", "sharedUXPackages.noDataConfig.addIntegrationsDescription": "Utilisez Elastic Agent pour collecter des données et créer des solutions Analytics.", "sharedUXPackages.noDataConfig.addIntegrationsTitle": "Ajouter des intégrations", "sharedUXPackages.noDataConfig.analytics": "Analyse", @@ -5414,7 +6316,12 @@ "sharedUXPackages.noDataConfig.elasticsearch": "Elasticsearch", "sharedUXPackages.noDataConfig.elasticsearchDescription": "Configurez votre client de langage de programmation, ingérez des données et lancez vos recherches.", "sharedUXPackages.noDataConfig.elasticsearchPageTitle": "Bienvenue dans Elasticsearch !", - "sharedUXPackages.noDataConfig.elasticsearchTitle": "Démarrer", + "sharedUXPackages.noDataConfig.elasticsearchTitle": "Ajouter des données", + "sharedUXPackages.noDataConfig.observability": "Observabilité", + "sharedUXPackages.noDataConfig.observabilityDescription": "Commencez par collecter les données en utilisant une de nos nombreuses intégrations.", + "sharedUXPackages.noDataConfig.observabilityPageDescription": "Combinez les indicateurs, les logs et les traces pour surveiller la santé de vos applications.", + "sharedUXPackages.noDataConfig.observabilityPageTitle": "Bienvenue dans Elastic Observability !", + "sharedUXPackages.noDataConfig.observabilityTitle": "Ajouter des données", "sharedUXPackages.noDataPage.intro.link": "en savoir plus", "sharedUXPackages.noDataPage.introNoDocLink": "Ajoutez vos données pour commencer.", "sharedUXPackages.noDataViewsPrompt.addDataViewText": "Créer une vue de données", @@ -5432,9 +6339,9 @@ "sharedUXPackages.solutionNav.menuText": "menu", "sharedUXPackages.solutionNav.openLabel": "Ouvrir la navigation latérale", "telemetry.callout.appliesSettingTitle": "Les modifications apportées à ce paramètre s'appliquent dans {allOfKibanaText} et sont enregistrées automatiquement.", - "telemetry.dataManagementDisclaimerPrivacy": "{optInStatus} Ceci nous permet de savoir ce qui intéresse le plus nos utilisateurs, afin d’améliorer nos produits et services. Consultez notre {privacyStatementLink}.", - "telemetry.seeExampleOfClusterDataAndEndpointSecuity": "Découvrez des exemples des {clusterData} et {securityData} que nous collectons.", - "telemetry.telemetryConfigAndLinkDescription": "Activer la collecte de données d’utilisation nous permet de savoir ce qui intéresse le plus nos utilisateurs, afin de pouvoir améliorer nos produits et services. Consultez notre {privacyStatementLink}.", + "telemetry.dataManagementDisclaimerPrivacy": "{optInStatus} Ceci nous permet de savoir ce qui intéresse le plus nos utilisateurs, afin d'améliorer nos produits et services. Veuillez vous référer à notre {privacyStatementLink}.", + "telemetry.seeExampleOfClusterDataAndEndpointSecuity": "Découvrez des exemples de {clusterData} et de {securityData} que nous collectons.", + "telemetry.telemetryConfigAndLinkDescription": "Activer la collecte de données d’utilisation nous permet de savoir ce qui intéresse le plus nos utilisateurs, afin de pouvoir améliorer nos produits et services. Veuillez vous référer à notre {privacyStatementLink}.", "telemetry.callout.appliesSettingTitle.allOfKibanaText": "tout Kibana", "telemetry.callout.clusterStatisticsDescription": "Voici un exemple des statistiques de cluster de base que nous collecterons. Cela comprend le nombre d'index, de partitions et de nœuds. Cela comprend également des statistiques d'utilisation de niveau élevé, comme l'état d'activation du monitoring.", "telemetry.callout.clusterStatisticsTitle": "Statistiques du cluster", @@ -5462,104 +6369,117 @@ "telemetry.telemetryOptedInNoticeTitle": "Aidez-nous à améliorer la Suite Elastic.", "telemetry.usageCollectionConstant": "collecte de données d’utilisation", "telemetry.usageDataTitle": "Collecte de données d’utilisation", - "textBasedEditor.query.textBasedLanguagesEditor.errorCount": "{count} {count, plural, one {erreur} many {erreurs} other {erreurs}}", - "textBasedEditor.query.textBasedLanguagesEditor.lineCount": "{count} {count, plural, one {ligne} many {lignes} other {lignes}}", + "textBasedEditor.query.textBasedLanguagesEditor.errorCount": "{count} {count, plural, one {erreur} other {erreurs}}", + "textBasedEditor.query.textBasedLanguagesEditor.lineCount": "{count} {count, plural, one {ligne} other {lignes}}", "textBasedEditor.query.textBasedLanguagesEditor.lineNumber": "Ligne {lineNumber}", - "textBasedEditor.query.textBasedLanguagesEditor.warningCount": "{count} {count, plural, one {avertissement} many {avertissements} other {avertissements}}", + "textBasedEditor.query.textBasedLanguagesEditor.warningCount": "{count} {count, plural, one {avertissement} other {avertissements}}", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.absFunction.markdown": "### ABS\nRenvoie la valeur absolue.\n\n```\nFROM employees\n| KEEP first_name, last_name, height\n| EVAL abs_height = ABS(0.0 - height)\n```\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.acosFunction.markdown": "### ACOS\nFonction trigonométrique cosinus inverse.\n\n```\nROW a=.9\n| EVAL acos=ACOS(a)\n```\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.asinFunction.markdown": "### ASIN\nFonction trigonométrique sinus inverse.\n\n```\nROW a=.9\n| EVAL asin=ASIN(a)\n```\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.atan2Function.markdown": "### ATAN2\nL'angle entre l'axe positif des x et le rayon allant de l'origine au point (x , y) dans le plan cartésien.\n\n```\nROW y=12.9, x=.6\n| EVAL atan2=ATAN2(y, x)\n```\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.atanFunction.markdown": "### ATAN\nFonction trigonométrique tangente inverse.\n\n```\nROW a=.12.9\n| EVAL atan=ATAN(a)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.autoBucketFunction.markdown": "### AUTO_BUCKET\nCrée des compartiments ergonomiques et renvoie une valeur `datetime` pour chaque ligne qui correspond au compartiment dans lequel la ligne est classée. Associer `AUTO_BUCKET` à `STATS... BY` pour créer un histogramme des dates.\n\nIndiquez un nombre cible de compartiments, une date de début et une date de fin, et le système choisit une taille de compartiment appropriée afin de générer le nombre cible de compartiments ou moins. Par exemple, cette fonction demande un maximum de 20 compartiments sur une année entière, permettant de sélectionner des compartiments mensuels :\n\n```\nROW date=TO_DATETIME(\"1985-07-09T00:00:00.000Z\")\n| EVAL bucket=AUTO_BUCKET(date, 20, \"1985-01-01T00:00:00Z\", \"1986-01-01T00:00:00Z\")\n```\n\nRenvoi :\n```\n1985-07-09T00:00:00.000Z | 1985-07-01T00:00:00.000Z\n```\n\nL'objectif n'est pas de fournir le nombre cible *exact* de compartiments, mais de choisir\nune fourchette avec laquelle chacun se sent à l'aise et qui fournit au maximum le nombre cible de\ncompartiments.\n\nSi vous demandez plus de compartiments, `AUTO_BUCKET` peut choisir une fourchette moins élevée. Par exemple,\nsi vous demandez un maximum de 100 compartiments par an, vous obtiendrez des compartiments d'une semaine :\n\n```\nROW date=TO_DATETIME(\"1985-07-09T00:00:00.000Z\")\n| EVAL bucket=AUTO_BUCKET(date, 100, \"1985-01-01T00:00:00Z\", \"1986-01-01T00:00:00Z\")\n```\n\nRenvoi :\n```\n1985-07-09T00:00:00.000Z | 1985-07-08T00:00:00.000Z\n```\n\n`AUTO_BUCKET` ne filtre aucune ligne. Il n'utilise que la plage temporelle fournie pour choisir une taille de compartiment appropriée. Pour les lignes dont la date se situe en dehors de la plage, il renvoie une date qui correspond à un compartiment situé en dehors de la plage. Associez `AUTO_BUCKET` à `WHERE` pour filtrer les lignes.\n\nVoici un exemple plus exhaustif :\n\n```\nFROM employees\n| WHERE hire_date >= \"1985-01-01T00:00:00Z\" AND hire_date < \"1986-01-01T00:00:00Z\"\n| EVAL bucket = AUTO_BUCKET(hire_date, 20, \"1985-01-01T00:00:00Z\", \"1986-01-01T00:00:00Z\")\n| STATS AVG(salary) BY bucket\n| SORT bucket\n```\n\nRenvoi :\n```\n46305.0 | 1985-02-01T00:00:00.000Z\n44817.0 | 1985-05-01T00:00:00.000Z\n62405.0 | 1985-07-01T00:00:00.000Z\n49095.0 | 1985-09-01T00:00:00.000Z\n51532.0 | 1985-10-01T00:00:00.000Z\n54539.75 | 1985-11-01T00:00:00.000\n```\n\nREMARQUE : `AUTO_BUCKET` ne crée pas de compartiments qui ne correspondent à aucun document. C'est pourquoi, dans l'exemple ci-dessus, il manque 1985-03-01 ainsi que d'autres dates.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.avgFunction.markdown": "### AVG\nLa moyenne d'un champ numérique.\n\n```\nFROM employees\n| STATS AVG(height)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.binaryOperators.markdown": "### Opérateurs binaires\nLes opérateurs de comparaison binaire suivants sont pris en charge :\n\n* égalité : `==`\n* inégalité : `!=`\n* inférieur à : `<`\n* inférieur ou égal à : `<=`\n* supérieur à : `>`\n* supérieur ou égal à : `>=`\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.autoBucketFunction.markdown": "### AUTO_BUCKET\nCrée des compartiments ergonomiques et renvoie une valeur `datetime` pour chaque ligne qui correspond au compartiment dans lequel la ligne est classée. Associer `AUTO_BUCKET` à \"=`STATS... BY` pour créer un histogramme des dates.\n\nIndiquez un nombre cible de compartiments, une date de début et une date de fin, et le système choisit une taille de compartiment appropriée afin de générer le nombre cible de compartiments ou moins. Par exemple, cette fonction demande un maximum de 20 compartiments sur une année entière, permettant de sélectionner des compartiments mensuels :\n\n```\nROW date=TO_DATETIME(\"1985-07-09T00:00:00.000Z\")\n| EVAL bucket=AUTO_BUCKET(date, 20, \"1985-01-01T00:00:00Z\", \"1986-01-01T00:00:00Z\")\n```\n\nRenvoi :\n```\n1985-07-09T00:00:00.000Z | 1985-07-01T00:00:00.000Z\n```\n\nL'objectif n'est pas de fournir le nombre cible *exact* de compartiments, mais de choisir\nune fourchette avec laquelle chacun se sent à l'aise et qui fournit au maximum le nombre cible de\ncompartiments.\n\nSi vous demandez plus de compartiments, `AUTO_BUCKET` peut choisir une fourchette moins élevée. Par exemple,\nsi vous demandez un maximum de 100 compartiments par an, vous obtiendrez des compartiments d'une semaine :\n\n```\nROW date=TO_DATETIME(\"1985-07-09T00:00:00.000Z\")\n| EVAL bucket=AUTO_BUCKET(date, 100, \"1985-01-01T00:00:00Z\", \"1986-01-01T00:00:00Z\")\n```\n\nRenvoi :\n```\n1985-07-09T00:00:00.000Z | 1985-07-08T00:00:00.000Z\n```\n\n`AUTO_BUCKET` ne filtre aucune ligne. Il n'utilise que la plage temporelle fournie pour choisir une taille de compartiment appropriée. Pour les lignes dont la date se situe en dehors de la plage, il renvoie une date qui correspond à un compartiment situé en dehors de la plage. Associez `AUTO_BUCKET` à `WHERE` pour filtrer les lignes.\n\nVoici un exemple plus exhaustif :\n\n```\nFROM employees\n| WHERE hire_date >= \"1985-01-01T00:00:00Z\" AND hire_date < \"1986-01-01T00:00:00Z\"\n| EVAL bucket = AUTO_BUCKET(hire_date, 20, \"1985-01-01T00:00:00Z\", \"1986-01-01T00:00:00Z\")\n| STATS AVG(salary) BY bucket\n| SORT bucket\n```\n\nRenvoi :\n```\n46305.0 | 1985-02-01T00:00:00.000Z\n44817.0 | 1985-05-01T00:00:00.000Z\n62405.0 | 1985-07-01T00:00:00.000Z\n49095.0 | 1985-09-01T00:00:00.000Z\n51532.0 | 1985-10-01T00:00:00.000Z\n54539.75 | 1985-11-01T00:00:00.000\n```\n\nREMARQUE : `AUTO_BUCKET` ne crée pas de compartiments qui ne correspondent à aucun document. C'est pourquoi, dans l'exemple ci-dessus, il manque 1985-03-01 ainsi que d'autres dates.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.avgFunction.markdown": "### AVG\nRenvoie la moyenne d'un champ numérique.\n\n````\nFROM employees\n| STATS AVG(height)\n````\n\nCette expression peut utiliser des fonctions alignées. Par exemple, pour calculer la moyenne sur une colonne multivaluée, il faut d'abord utiliser`MV_AVG` pour faire la moyenne des multiples valeurs par ligne et utiliser le résultat avec la fonction `AVG` :\n\n````\nFROM employees\n| STATS avg_salary_change = AVG(MV_AVG(salary_change))\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.binaryOperators.markdown": "### Opérateurs binaires\nLes opérateurs de comparaison binaire suivants sont pris en charge :\n\n* égalité : `==`\n* inégalité insensible à la casse `=~`\n* inégalité : `!=`\n* inférieur à : `<`\n* inférieur ou égal à : `<=`\n* supérieur à : `>`\n* supérieur ou égal à : `>=`\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.booleanOperators.markdown": "### Opérateurs booléens\nLes opérateurs booléens suivants sont pris en charge :\n\n* `AND`\n* `OR`\n* `NOT`\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.caseFunction.markdown": "### CASE\nAccepte des paires de conditions et de valeurs. La fonction renvoie la valeur correspondant à la première condition évaluée à `true`. Si le nombre d'arguments est impair, le dernier argument est la valeur par défaut qui est renvoyée si aucune condition ne correspond.\n\n```\nFROM employees\n| EVAL type = CASE(\n languages <= 1, \"monolingual\",\n languages <= 2, \"bilingual\",\n \"polyglot\")\n| KEEP first_name, last_name, type\n```\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.caseFunction.markdown": "### CASE\nAccepte des paires de conditions et de valeurs. La fonction renvoie la valeur correspondant à la première condition évaluée à `true` (vraie). Si le nombre d'arguments est impair, le dernier argument est la valeur par défaut qui est renvoyée si aucune condition ne correspond.\n\n```\nFROM employees\n| EVAL type = CASE(\n languages <= 1, \"monolingual\",\n languages <= 2, \"bilingual\",\n \"polyglot\")\n| KEEP first_name, last_name, type\n```\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.ceilFunction.markdown": "### CEIL\nArrondir un nombre à l'entier supérieur.\n\n```\nROW a=1.8\n| EVAL a=CEIL(a)\n```\n\nRemarque : Il s'agit d'un noop pour `long` (y compris non signé) et `integer`. Pour `double`, la fonction choisit la valeur `double` la plus proche de l'entier, de manière similaire à la méthode `Math.ceil` de Java.\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.cidrMatchFunction.markdown": "### CIDR_MATCH\nRenvoie `true` si l'IP fournie est contenue dans l'un des blocs CIDR fournis. \n\nLa fonction `CIDR_MATCH` accepte deux arguments ou plus. Le premier argument est l'adresse IP de type `ip` (les adresses IPv4 et IPv6 sont prises en charge). Les arguments suivants correspondent aux blocs CIDR pour tester l'adresse IP.\n\n```\nFROM hosts\n| WHERE CIDR_MATCH(ip, \"127.0.0.2/32\", \"127.0.0.3/32\")\n```\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.coalesceFunction.markdown": "### COALESCE\nRenvoie la première valeur non nulle.\n\n```\nROW a=null, b=\"b\"\n| EVAL COALESCE(a, b)\n```\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.concatFunction.markdown": "### CONCAT\nConcatène deux ou plusieurs chaînes.\n\n```\nFROM employees\n| KEEP first_name, last_name, height\n| EVAL fullname = CONCAT(first_name, \" \", last_name)\n```\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.cosFunction.markdown": "### COS\nFonction trigonométrique cosinus.\n\n```\nROW a=1.8\n| EVAL cos=COS(a)\n```\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.coshFunction.markdown": "### COSH\nFonction hyperbolique cosinus.\n\n```\nROW a=1.8\n| EVAL cosh=COSH(a)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.countDistinctFunction.markdown": "### COUNT_DISTINCT\n Nombre approximatif de valeurs distinctes.\n\n ```\n FROM hosts\n | STATS COUNT_DISTINCT(ip0), COUNT_DISTINCT(ip1)\n ```\n\n La fonction `COUNT_DISTINCT` est approximative, basée sur l'algorithme HyperLogLog++. Pour en savoir plus, consultez la [documentation](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-metrics-cardinality-aggregation.html#_counts_are_approximate). La précision est configurable à l'aide d'un second paramètre facultatif :\n\n ```\n FROM hosts\n | STATS COUNT_DISTINCT(ip0, 80000), COUNT_DISTINCT(ip1, 5)\n ```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.countFunction.markdown": "### COUNT\nComptabilise les valeurs des champs.\n\n```\nFROM employees\n| STATS COUNT(height)\n```\n\nAccepte n'importe quel type de champ en tant qu'entrée ; le résultat sera toujours `long` quel que soit le type d'entrée.\n\nREMARQUE : Il n'existe pas encore de `COUNT(*)`. Veuillez comptabiliser un champ à valeur unique si vous souhaitez obtenir un nombre de lignes.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateExtractFunction.markdown": "### DATE_EXTRACT\nExtrait des parties d'une date, telles que l'année, le mois, le jour, l'heure. Les types de champs pris en charge sont ceux fournis par la fonction `java.time.temporal.ChronoField` de Java.\n\n```\nROW date = DATE_PARSE(\"2022-05-06\", \"yyyy-MM-dd\")\n| EVAL year = DATE_EXTRACT(date, \"year\")\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateFormatFunction.markdown": "### DATE_FORMAT\nRenvoie une représentation sous forme de chaîne d'une date dans le format fourni. Si aucun format n'est indiqué, le format `yyyy-MM-dd'T'HH:mm:ss.SSSZ` est utilisé.\n\n```\nFROM employees\n| KEEP first_name, last_name, hire_date\n| EVAL hired = DATE_FORMAT(hire_date, \"YYYY-MM-dd\")\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateParseFunction.markdown": "### DATE_PARSE\nConvertit une chaîne en date, dans le format fourni. Si aucun format n'est indiqué, le format `yyyy-MM-dd'T'HH:mm:ss.SSSZ` est utilisé.\n\n```\nROW date_string = \"2022-05-06\"\n| EVAL date = DATE_PARSE(date_string, \"yyyy-MM-dd\")\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateTruncFunction.markdown": "### DATE_TRUNC\nArrondit une date à l'intervalle le plus proche.\n\n```\nFROM employees\n| EVAL year_hired = DATE_TRUNC(hire_date, 1 year)\n| STATS count(emp_no) BY year_hired\n| SORT year_hired\n```\n\nLes intervalles peuvent être exprimés à l'aide de la syntaxe littérale timespan. Les littéraux au format timespan sont représentés par une combinaison d'un nombre et d'un qualificatif. Les qualificatifs suivants sont pris en charge :\n\n* `millisecond`/`milliseconds`\n* `second`/`seconds`\n* `minute`/`minutes`\n* `hour`/`hours`\n* `day`/`days`\n* `week`/`weeks`\n* `month`/`months`\n* `year`/`years`\n\nLes littéraux au format timespan ne sont pas sensibles à l'espacement. Les expressions suivantes sont toutes valides :\n\n* `1day`\n* `1 day`\n* `1      day`\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dissect.markdown": "### DISSECT\n`DISSECT` vous permet d'extraire des données structurées d'une chaîne. `DISSECT` compare la chaîne à un modèle basé sur les délimiteurs, et extrait les clés indiquées en tant que colonnes.\n\nPour obtenir la syntaxe des modèles `dissect`, consultez [la documentation relative au processeur `dissect`](https://www.elastic.co/guide/en/elasticsearch/reference/current/dissect-processor.html).\n\n```\nROW a = \"1953-01-23T12:15:00Z - some text - 127.0.0.1\"\n| DISSECT a \"%\\{Y\\}-%\\{M\\}-%\\{D\\}T%\\{h\\}:%\\{m\\}:%\\{s\\}Z - %\\{msg\\} - %\\{ip\\}\"\n```\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.countDistinctFunction.markdown": "### COUNT_DISTINCT\nDécompte le nombre approximatif de valeurs distinctes.\n\n````\nFROM hosts\n| STATS COUNT_DISTINCT(ip0), COUNT_DISTINCT(ip1)\n```\n\nLa fonction `COUNT_DISTINCT` est approximative, basée sur l'algorithme HyperLogLog++. Pour en savoir plus, consultez la [documentation](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-metrics-cardinality-aggregation.html#_counts_are_approximate). La précision est configurable à l'aide d'un deuxième paramètre facultatif. La valeur maximale compatible est 40000. Les seuils supérieurs à ce nombre auront le même effet qu'un seuil de 40000. La valeur par défaut est 3000.\n\n````\nFROM hosts\n| STATS COUNT_DISTINCT(ip0, 80000), COUNT_DISTINCT(ip1, 5)\n````\n\nCette expression peut utiliser des fonctions alignées. Cet exemple divise une chaîne en plusieurs valeurs à l'aide de la fonction `SPLIT` et compte les valeurs uniques :\n\n````\nROW words=\"foo;bar;baz;qux;quux;foo\"\n| STATS distinct_word_count = COUNT_DISTINCT(SPLIT(words, \";\"))\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.countFunction.markdown": "### COUNT\nRenvoie le nombre total de valeurs en entrée.\n\n````\nFROM employees\n| STATS COUNT(height)\n````\n\nPeut prendre n'importe quel type de champ en entrée.\n\nPour compter le nombre de lignes, utiliser `COUNT()` ou `COUNT(*)` :\n\n````\nFROM employees\n| STATS count = COUNT(*) BY languages\n| SORT languages DESC\n````\n\nCette expression peut utiliser des fonctions alignées. Cet exemple divise une chaîne en plusieurs valeurs à l'aide de la fonction `SPLIT` et compte les valeurs :\n\n````\nROW words=\"foo;bar;baz;qux;quux;foo\"\n| STATS word_count = COUNT(SPLIT(words, \";\"))\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateDiffFunction.markdown": "### DATE_DIFF\nSoustrait le `startTimestamp` du `endTimestamp` et renvoie la différence en multiples d'unité. Si `startTimestamp` est postérieur à `endTimestamp`, des valeurs négatives sont renvoyées.\n \n````\nROW date1 = TO_DATETIME(\"2023-12-02T11:00:00.000Z\"), date2 = TO_DATETIME(\"2023-12-02T11:00:00.001Z\")\n| EVAL dd_ms = DATE_DIFF(\"microseconds\", date1, date2)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateExtractFunction.markdown": "### DATE_EXTRACT\nExtrait des parties d'une date, telles que l'année, le mois, le jour, l'heure. Les types de champs pris en charge sont ceux fournis par la fonction `java.time.temporal.ChronoField` de Java.\n\n```\nROW date = DATE_PARSE(\"yyyy-MM-dd\", \"2022-05-06\")\n| EVAL year = DATE_EXTRACT(\"year\", date)\n````\n\nPar exemple, pour trouver tous les événements qui ont eu lieu en dehors des heures de bureau (avant 9 h et après 17 h) à une date donnée :\n\n````\nFROM sample_data\n| WHERE DATE_EXTRACT(\"hour_of_day\", @timestamp) < 9 AND DATE_EXTRACT(\"hour_of_day\", @timestamp) >= 17\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateFormatFunction.markdown": "### DATE_FORMAT\nRenvoie une représentation sous forme de chaîne d'une date dans le format fourni. Si aucun format n'est indiqué, le format `yyyy-MM-dd'T'HH:mm:ss.SSSZ` est utilisé.\n\n```\nFROM employees\n| KEEP first_name, last_name, hire_date\n| EVAL hired = DATE_FORMAT(\"YYYY-MM-dd\", hire_date)\n```\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateParseFunction.markdown": "### DATE_PARSE\nRenvoie une date en analysant le deuxième argument selon le format spécifié dans le premier argument. Si aucun format n'est indiqué, le format `yyyy-MM-dd'T'HH:mm:ss.SSSZ` est utilisé.\nVeuillez vous référer à la documentation [`DateTimeFormatter` ](https://docs.oracle.com/en/java/javase/14/docs/api/java.base/java/time/format/DateTimeFormatter.html) pour la syntaxe.\n````\nROW date_string = \"2022-05-06\"\n| EVAL date = DATE_PARSE(\"yyyy-MM-dd\", date_string)\n```\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateTruncFunction.markdown": "### DATE_TRUNC\nArrondit une date à l'intervalle le plus proche.\n\n```\nFROM employees\n| EVAL year_hired = DATE_TRUNC(1 year, hire_date)\n| STATS count(emp_no) BY year_hired\n| SORT year_hired\n```\n\nLes intervalles peuvent être exprimés à l'aide de la syntaxe littérale timespan. Les littéraux au format timespan sont représentés par une combinaison d'un nombre et d'un qualificatif. Les qualificatifs suivants sont pris en charge :\n\n* `millisecond`/`milliseconds`\n* `second`/`seconds`\n* `minute`/`minutes`\n* `hour`/`hours`\n* `day`/`days`\n* `week`/`weeks`\n* `month`/`months`\n* `year`/`years`\n\nLes littéraux au format timespan ne sont pas sensibles à l'espacement. Les expressions suivantes sont toutes valides :\n\n* `1day`\n* `1 day`\n* `1 day`\n\nCombiner `DATE_TRUNC` avec `STATS ... BY` pour créer des histogrammes des dates. Par exemple, pour renvoyer le nombre d'embauches par an :\n\n````\nFROM employees\n| EVAL year = DATE_TRUNC(1 year, hire_date)\n| STATS hires = COUNT(emp_no) BY year\n| SORT year\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dissect.markdown": "### DISSECT\n`DISSECT` vous permet d'extraire des données structurées d'une chaîne. `DISSECT` compare la chaîne à un modèle basé sur les délimiteurs, et extrait les clés indiquées en tant que colonnes.\n\nPour obtenir la syntaxe des modèles \"dissect\", consultez [la documentation relative au processeur \"dissect\"](https://www.elastic.co/guide/en/elasticsearch/reference/current/dissect-processor.html).\n\n```\nROW a = \"1953-01-23T12:15:00Z - some text - 127.0.0.1\"\n| DISSECT a \"%\\{Y\\}-%\\{M\\}-%\\{D\\}T%\\{h\\}:%\\{m\\}:%\\{s\\}Z - %\\{msg\\} - %\\{ip\\}\"\n```\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.drop.markdown": "### DROP\nAfin de supprimer certaines colonnes d'un tableau, utilisez `DROP` :\n \n```\nFROM employees\n| DROP height\n```\n\nPlutôt que de spécifier chaque colonne par son nom, vous pouvez utiliser des caractères génériques pour supprimer toutes les colonnes dont le nom correspond à un modèle :\n\n```\nFROM employees\n| DROP height*\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.eFunction.markdown": "### E\nNombre d'Euler.\n\n```\nROW E()\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.enrich.markdown": "### ENRICH\nVous pouvez utiliser `ENRICH` pour ajouter les données de vos index existants aux enregistrements entrants. Une fonction similaire à l'[enrichissement par ingestion](https://www.elastic.co/guide/en/elasticsearch/reference/current/ingest-enriching-data.html), mais qui fonctionne au moment de la requête.\n\n```\nROW language_code = \"1\"\n| ENRICH languages_policy\n```\n\n`ENRICH` requiert l'exécution d'une [politique d'enrichissement](https://www.elastic.co/guide/en/elasticsearch/reference/current/ingest-enriching-data.html#enrich-policy). La politique d'enrichissement définit un champ de correspondance (un champ clé) et un ensemble de champs d'enrichissement.\n\n`ENRICH` recherche les enregistrements dans l'[index d'enrichissement](https://www.elastic.co/guide/en/elasticsearch/reference/current/ingest-enriching-data.html#enrich-index) en se basant sur la valeur du champ de correspondance. La clé de correspondance dans l'ensemble de données d'entrée peut être définie en utilisant `ON `. Si elle n'est pas spécifiée, la correspondance sera effectuée sur un champ portant le même nom que le champ de correspondance défini dans la politique d'enrichissement.\n\n```\nROW a = \"1\"\n| ENRICH languages_policy ON a\n```\n\nVous pouvez indiquer quels attributs (parmi ceux définis comme champs d'enrichissement dans la politique) doivent être ajoutés au résultat, en utilisant la syntaxe `WITH , ...`.\n\n```\nROW a = \"1\"\n| ENRICH languages_policy ON a WITH language_name\n```\n\nLes attributs peuvent également être renommés à l'aide de la syntaxe `WITH new_name=`\n\n```\nROW a = \"1\"\n| ENRICH languages_policy ON a WITH name = language_name\n```\n\nPar défaut (si aucun `WITH` n'est défini), `ENRICH` ajoute au résultat tous les champs d'enrichissement définis dans la politique d'enrichissement.\n\nEn cas de collision de noms, les champs nouvellement créés remplacent les champs existants.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.eval.markdown": "### EVAL\n`EVAL` permet d'ajouter des colonnes :\n\n```\nFROM employees\n| KEEP first_name, last_name, height\n| EVAL height_feet = height * 3.281, height_cm = height * 100\n```\n\nSi la colonne indiquée existe déjà, la colonne existante sera supprimée et la nouvelle colonne sera ajoutée au tableau :\n\n```\nFROM employees\n| KEEP first_name, last_name, height\n| EVAL height = height * 3.281\n```\n\n#### Fonctions\n`EVAL` prend en charge diverses fonctions de calcul des valeurs. Pour en savoir plus, consultez les fonctions.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.floorFunction.markdown": "### FLOOR\nArrondir un nombre à l'entier inférieur.\n\n```\nROW a=1.8\n| EVAL a=FLOOR(a)\n```\n\nIl s'agit d'un noop pour `long` (y compris non connecté) et `integer`. Pour `double`, la fonction choisit la valeur `double` la plus proche de l'entier, de manière similaire à la méthode `Math.floor` de Java.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.from.markdown": "### FROM\nLa commande source `FROM` renvoie un tableau contenant jusqu'à 10 000 documents issus d'un flux de données, d'un index ou d'un alias. Chaque ligne du tableau obtenu correspond à un document. Chaque colonne correspond à un champ et est accessible par le nom de ce champ.\n\n```\nFROM employees\n```\n\nVous pouvez utiliser des [calculs impliquant des dates](https://www.elastic.co/guide/en/elasticsearch/reference/current/api-conventions.html#api-date-math-index-names) pour désigner les indices, les alias et les flux de données. Cela peut s'avérer utile pour les données temporelles.\n\nUtilisez des listes séparées par des virgules ou des caractères génériques pour rechercher plusieurs flux de données, indices ou alias :\n\n```\nFROM employees-00001,employees-*\n```\n\n#### Métadonnées\n\nES|QL peut accéder aux champs de métadonnées suivants :\n\n* `_index` : l'index auquel appartient le document. Le champ est du type `keyword`.\n* `_id` : l'identifiant du document source. Le champ est du type `keyword`.\n* `_id` : la version du document source. Le champ est du type `long`.\n\nUtilisez la directive `METADATA` pour activer les champs de métadonnées :\n\n```\nFROM index [METADATA _index, _id]\n```\n\nLes champs de métadonnées ne sont disponibles que si la source des données est un index. Par conséquent, `FROM` est la seule commande source qui prend en charge la directive `METADATA`.\n\nUne fois activés, les champs sont disponibles pour les commandes de traitement suivantes, tout comme les autres champs de l'index :\n\n```\nFROM ul_logs, apps [METADATA _index, _version]\n| WHERE id IN (13, 14) AND _version == 1\n| EVAL key = CONCAT(_index, \"_\", TO_STR(id))\n| SORT id, _index\n| KEEP id, _index, _version, key\n```\n\nDe même, comme pour les champs d'index, une fois l'agrégation effectuée, un champ de métadonnées ne sera plus accessible aux commandes suivantes, sauf s'il est utilisé comme champ de regroupement :\n\n```\nFROM employees [METADATA _index, _id]\n| STATS max = MAX(emp_no) BY _index\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.greatestFunction.markdown": "### GREATEST\nRenvoie la valeur maximale de plusieurs colonnes. Cette fonction est similaire à `MV_MAX`. Toutefois, elle est destinée à être exécutée sur plusieurs colonnes à la fois.\n\n```\nROW a = 10, b = 20\n| EVAL g = GREATEST(a, b);\n```\n\nRemarque : lorsque cette fonction est exécutée sur les champs `keyword` ou `text`, elle renvoie la dernière chaîne dans l'ordre alphabétique. Lorsqu'elle est exécutée sur des colonnes `boolean`, elle renvoie `true` si l'une des valeurs l'est.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.grok.markdown": "### GROK\n`GROK` vous permet d'extraire des données structurées d'une chaîne. `GROK` compare la chaîne à des modèles,sur la base d’expressions régulières, et extrait les modèles indiqués en tant que colonnes.\n\nPour obtenir la syntaxe des modèles `grok`, consultez [la documentation relative au processeur `grok`](https://www.elastic.co/guide/en/elasticsearch/reference/current/grok-processor.html).\n\n```\nROW a = \"12 15.5 15.6 true\"\n| GROK a \"%\\{NUMBER:b:int\\} %\\{NUMBER:c:float\\} %\\{NUMBER:d:double\\} %\\{WORD:e:boolean\\}\"\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.inOperator.markdown": "### IN\nL'opérateur `IN` permet de tester si un champ ou une expression est égal à un élément d'une liste de littéraux, de champs ou d'expressions :\n\n```\nROW a = 1, b = 4, c = 3\n| WHERE c-a IN (3, b / 2, a)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.keep.markdown": "### KEEP\nLa commande `KEEP` permet de définir les colonnes qui seront renvoyées et l'ordre dans lequel elles le seront.\n\nPour limiter les colonnes retournées, utilisez une liste de noms de colonnes séparés par des virgules. Les colonnes sont renvoyées dans l'ordre indiqué :\n \n```\nFROM employees\n| KEEP first_name, last_name, height\n```\n\nPlutôt que de spécifier chaque colonne par son nom, vous pouvez utiliser des caractères génériques pour renvoyer toutes les colonnes dont le nom correspond à un modèle :\n\n```\nFROM employees\n| KEEP h*\n```\n\nLe caractère générique de l'astérisque (`*`) placé de manière isolée transpose l'ensemble des colonnes qui ne correspondent pas aux autres arguments. La requête suivante renverra en premier lieu toutes les colonnes dont le nom commence par un h, puis toutes les autres colonnes :\n\n```\nFROM employees\n| KEEP h*, *\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.leastFunction.markdown": "### LEAST\nRenvoie la valeur minimale de plusieurs colonnes. Cette fonction est similaire à `MV_MIN`. Toutefois, elle est destinée à être exécutée sur plusieurs colonnes à la fois.\n\n```\nROW a = 10, b = 20\n| EVAL l = LEAST(a, b)\n```\n\nRemarque : lorsque cette fonction est exécutée sur les champs `keyword` ou `text`, elle renvoie la première chaîne dans l'ordre alphabétique. Lorsqu'elle est exécutée sur des colonnes `boolean`, elle renvoie `false` si l'une des valeurs l'est.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.leftFunction.markdown": "### LEFT\nRenvoie la sous-chaîne qui extrait la longueur des caractères de la chaîne en partant de la gauche.\n\n```\nFROM employees\n| KEEP last_name\n| EVAL left = LEFT(last_name, 3)\n| SORT last_name ASC\n| LIMIT 5\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.lengthFunction.markdown": "### LENGTH\nRenvoie la longueur des caractères d'une chaîne.\n\n```\nFROM employees\n| KEEP first_name, last_name, height\n| EVAL fn_length = LENGTH(first_name)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.limit.markdown": "### LIMIT\nLa commande de traitement `LIMIT` permet de restreindre le nombre de lignes :\n \n```\nFROM employees\n| LIMIT 5\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.log10Function.markdown": "### LOG10\nRenvoie le log de base 10. La valeur de renvoi est toujours un double, quelle que soit la valeur numérique de l'entrée.\n\nLes logs des nombres négatifs affichent une valeur NaN. Les logs des infinis et de 0 sont infinis.\n\n```\nROW d = 1000.0\n| EVAL s = LOG10(d)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.ltrimFunction.markdown": "### LTRIM\nRetire les espaces au début des chaînes.\n\n```\nROW message = \" some text \", color = \" red \"\n| EVAL message = LTRIM(message)\n| EVAL color = LTRIM(color)\n| EVAL message = CONCAT(\"'\", message, \"'\")\n| EVAL color = CONCAT(\"'\", color, \"'\")\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.markdown": "## ES|QL\n\nUne requête ES|QL (langage de requête Elasticsearch) se compose d'une série de commandes, séparées par une barre verticale : `|`. Chaque requête commence par une **commande source**, qui produit un tableau, habituellement avec des données issues d'Elasticsearch. \n\nUne commande source peut être suivie d'une ou plusieurs **commandes de traitement**. Les commandes de traitement peuvent modifier le tableau de sortie de la commande précédente en ajoutant, supprimant et modifiant les lignes et les colonnes.\n\n```\nsource-command\n| processing-command1\n| processing-command2\n```\n\nLe résultat d'une requête est le tableau produit par la dernière commande de traitement. \n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.maxFunction.markdown": "### MAX\nValeur maximale d'un champ numérique.\n\n```\nFROM employees\n| STATS MAX(languages)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.medianAbsoluteDeviationFunction.markdown": "### MEDIAN_ABSOLUTE_DEVIATION\nÉcart absolu médian, une mesure de la variabilité. Il s'agit d'un indicateur robuste, ce qui signifie qu'il est utile pour décrire des données qui peuvent présenter des valeurs aberrantes ou ne pas être normalement distribuées. Pour de telles données, il peut être plus descriptif que l'écart type.\n\nIl est calculé comme la médiane de chaque écart de point de données par rapport à la médiane de l'ensemble de l'échantillon. Autrement dit, pour une variable aléatoire X, l'écart absolu médian est `médian(|médian(X) - Xi|)`.\n\n```\nFROM employees\n| STATS MEDIAN(salary), MEDIAN_ABSOLUTE_DEVIATION(salary)\n```\n\nREMARQUE : Comme la fonction `PERCENTILE`, la fonction `MEDIAN_ABSOLUTE_DEVIATION` est généralement approximative, et basée sur l'algorithme TDigest. Elle est également non déterministe. Cela signifie que vous pouvez obtenir des résultats légèrement différents en utilisant les mêmes données.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.medianFunction.markdown": "### MEDIAN\nLa médiane est la valeur qui est supérieure à la moitié de toutes les valeurs et inférieure à la moitié de toutes les valeurs, également connue sous le nom de percentile 50.\n\n```\nFROM employees\n| STATS MEDIAN(salary)\n```\n\nREMARQUE : Comme la fonction `PERCENTILE`, la fonction `MEDIAN` est généralement approximative, et basée sur l'algorithme TDigest. Elle est également non déterministe. Cela signifie que vous pouvez obtenir des résultats légèrement différents en utilisant les mêmes données.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.minFunction.markdown": "### MIN\nValeur minimale d'un champ numérique.\n\n```\nFROM employees\n| STATS MIN(languages)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvAvgFunction.markdown": "### MV_AVG\nConvertit un champ multivalué en un champ à valeur unique comprenant la moyenne de toutes les valeurs. Par exemple :\n\n```\nROW a=[3, 5, 1, 6]\n| EVAL avg_a = MV_AVG(a)\n```\n\nRenvoi :\n\n```\n[3, 5, 1, 6] | 3.75\n```\n\nREMARQUE : Le type de sortie est toujours un double et le type d'entrée peut être n'importe quel nombre.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvConcatFunction.markdown": "### MV_CONCAT\nConvertit un champ de type chaîne multivalué en un champ à valeur unique comprenant la concaténation de toutes les valeurs séparées par un délimiteur :\n\n```\nROW a=[\"foo\", \"zoo\", \"bar\"]\n| EVAL j = MV_CONCAT(a, \", \")\n```\n\nRenvoi :\n\n```\n[\"foo\", \"zoo\", \"bar\"] | \"foo, zoo, bar\"\n```\n\nSi vous voulez lier des champs qui ne sont pas des chaînes, appelez en premier lieu `TO_STRING` sur ces champs :\n\n```\nROW a=[10, 9, 8]\n| EVAL j = MV_CONCAT(TO_STRING(a), \", \")\n```\n\nRenvoi :\n\n```\n[10, 9, 8] | \"10, 9, 8\"\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvCountFunction.markdown": "### MV_COUNT\nConvertit un champ multivalué en un champ à valeur unique comprenant un décompte du nombre de valeurs :\n\n```\nROW a=[\"foo\", \"zoo\", \"bar\"]\n| EVAL count_a = MV_COUNT(a)\n```\n\nRenvoi :\n\n```\n[\"foo\", \"zoo\", \"bar\"] | 3\n```\n\nREMARQUE : Cette fonction accepte tous les types de valeurs et renvoie toujours un nombre entier.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvDedupeFunction.markdown": "### MV_DEDUPE\nSupprime les doublons d'un champ multivalué. Par exemple :\n\n```\nROW a=[\"foo\", \"foo\", \"bar\", \"foo\"]\n| EVAL dedupe_a = MV_DEDUPE(a)\n```\n\nRenvoi :\n\n```\n[\"foo\", \"foo\", \"bar\", \"foo\"] | [\"foo\", \"bar\"]\n```\n\nREMARQUE : la fonction `MV_DEDUPE` est en mesure de trier les valeurs du champ, mais ne le fait pas systématiquement.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvExpand.markdown": "### MV_EXPAND\nLa commande de traitement `MV_EXPAND` développe les champs multivalués en indiquant une valeur par ligne et en dupliquant les autres champs : \n```\nROW a=[1,2,3], b=\"b\", j=[\"a\",\"b\"]\n| MV_EXPAND a\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvMaxFunction.markdown": "### MV_MAX\nConvertit un champ multivalué en un champ à valeur unique comprenant la valeur maximale. Par exemple :\n\n```\nROW a=[3, 5, 1]\n| EVAL max_a = MV_MAX(a)\n```\n\nRenvoi :\n\n```\n[3, 5, 1] | 5\n```\n\nElle peut être utilisée par n'importe quel type de champ, y compris les champs de type `keyword`. Dans ce cas, elle choisit la dernière chaîne, en comparant leur représentation utf-8 octet par octet :\n\n```\nROW a=[\"foo\", \"zoo\", \"bar\"]\n| EVAL max_a = MV_MAX(a)\n```\n\nRenvoi :\n\n```\n[\"foo\", \"zoo\", \"bar\"] | \"zoo\"\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvMedianFunction.markdown": "### MV_MEDIAN\nConvertit un champ multivalué en un champ à valeur unique comprenant la valeur médiane. Par exemple :\n\n```\nROW a=[3, 5, 1]\n| EVAL median_a = MV_MEDIAN(a)\n```\n\nRenvoi :\n\n```\n[3, 5, 1] | 3\n```\n\nElle peut être utilisée par n'importe quel type de champ numérique et renvoie une valeur du même type. Si la ligne comprend un nombre pair de valeurs pour une colonne, le résultat sera la moyenne des deux entrées du milieu. Si le champ n'inclut pas une valeur en virgule flottante, la moyenne est arrondie à la valeur **inférieure** :\n\n```\nROW a=[3, 7, 1, 6]\n| EVAL median_a = MV_MEDIAN(a)\n```\n\nRenvoi :\n\n```\n[3, 7, 1, 6] | 4\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvMinFunction.markdown": "### MV_MIN\nConvertit un champ multivalué en un champ à valeur unique comprenant la valeur minimale. Par exemple :\n\n```\nROW a=[2, 1]\n| EVAL min_a = MV_MIN(a)\n```\n\nRenvoi :\n\n```\n[2, 1] | 1\n```\n\nElle peut être utilisée par n'importe quel type de champ, y compris les champs de type `keyword`. Dans ce cas, elle choisit la dernière chaîne, en comparant leur représentation utf-8 octet par octet :\n\n```\nROW a=[\"foo\", \"bar\"]\n| EVAL min_a = MV_MIN(a)\n```\n\nRenvoi :\n\n```\n[\"foo\", \"bar\"] | \"bar\"\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvSumFunction.markdown": "### MV_SUM\nConvertit un champ multivalué en un champ à valeur unique comprenant la somme de toutes les valeurs. Par exemple :\n```\nROW a=[3, 5, 6]\n| EVAL sum_a = MV_SUM(a)\n```\n\nRenvoi :\n\n```\n[3, 5, 6] | 14\n```\n\nREMARQUE : Le type d'entrée peut être n'importe quel nombre et le type de sortie est identique au type d'entrée.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.nowFunction.markdown": "### NOW\nRenvoie la date et l'heure actuelles.\n\n```\nROW current_date = NOW()\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.percentileFunction.markdown": "### PERCENTILE\nValeur à laquelle un certain pourcentage des valeurs observées se produit. Par exemple, le 95e percentile est la valeur qui est supérieure à 95 % des valeurs observées et le 50percentile est la médiane (`MEDIAN`).\n\n```\nFROM employees\n| STATS p0 = PERCENTILE(salary, 0)\n , p50 = PERCENTILE(salary, 50)\n , p99 = PERCENTILE(salary, 99)\n```\n\nREMARQUE : la fonction `PERCENTILE` est généralement approximative, et basée sur l'algorithme TDigest. Elle est également non déterministe. Cela signifie que vous pouvez obtenir des résultats légèrement différents en utilisant les mêmes données.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.piFunction.markdown": "### PI\nRapport entre la circonférence et le diamètre d'un cercle.\n\n```\nROW PI()\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.powFunction.markdown": "### POW\nRenvoie la valeur d'une base (premier argument) élevée à une puissance (deuxième argument). Les deux arguments doivent être numériques.\n\n```\nROW base = 2.0, exponent = 2.0 \n| EVAL s = POW(base, exponent)\n```\n\n#### Règles de type\n\nLe type de la valeur renvoyée est défini par les types de la base et de l'exposant. Les règles suivantes sont appliquées pour définir le type du résultat :\n\n* Si la base ou l'exposant sont de type virgule flottante, le résultat sera un double\n* Si la base ou l'exposant sont de type 64 bits (long ou long non signé), le résultat sera un long\n* Sinon, le résultat sera un entier de 32 bits (cela couvre tous les autres types numériques, y compris `int`, `short` et `byte`).\n\nPar exemple, l'utilisation d'entiers simples en tant qu'arguments conduira à un résultat entier :\n\n```\nROW base = 2, exponent = 2\n| EVAL s = POW(base, exponent)\n```\n\nRemarque : la fonction de puissance réelle est exécutée à l'aide de valeurs à double précision dans tous les cas. Cela signifie que pour les valeurs très élevées à virgule fixe, le risque que l'opération conduise à des réponses légèrement différentes de celles attendues est faible. Cependant, le résultat le plus probable pour des valeurs très élevées en virgule flottante est un dépassement numérique.\n\n#### Erreurs arithmétiques\n\nLes erreurs arithmétiques et les dépassements numériques n'entraînent pas d'erreur. Au lieu de cela, le résultat sera `null`, et un avertissement pour l'exception `ArithmeticException` sera ajouté. Par exemple :\n\n```\nROW x = POW(9223372036854775808, 2)\n```\n\nAfin de se protéger contre les dépassements numériques, utilisez la fonction `TO_DOUBLE` sur l'un ou l'autre des arguments :\n\n```\nROW x = POW(9223372036854775808, TO_DOUBLE(1))\n```\n\n#### Exposants fractionnaires\n\nL'exposant peut être un nombre fractionnaire, ce qui revient à effectuer une racine. Par exemple, l'exposant de 0,5 donnera la racine carrée de la base :\n\n```\nROW base = 4, exponent = 0.5\n| EVAL s = POW(base, exponent)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.predicates.markdown": "### Valeurs NULL\nPour une comparaison avec une valeur NULL, utilisez les attributs `IS NULL` et `IS NOT NULL` :\n\n```\nFROM employees\n| WHERE birth_date IS NULL\n| KEEP first_name, last_name\n| SORT first_name\n| LIMIT 3\n```\n\n```\nFROM employees\n| WHERE is_rehired IS NOT NULL\n| STATS count(emp_no)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.rename.markdown": "### RENAME\nUtilisez `RENAME` pour renommer une colonne en utilisant la syntaxe suivante :\n\n```\nRENAME AS \n```\n\nPar exemple :\n\n```\nFROM employees\n| KEEP first_name, last_name, still_hired\n| RENAME still_hired AS employed\n```\n\nSi une colonne portant le nouveau nom existe déjà, elle sera remplacée par la nouvelle colonne.\n\nPlusieurs colonnes peuvent être renommées à l'aide d'une seule commande `RENAME` :\n\n```\nFROM employees\n| KEEP first_name, last_name\n| RENAME first_name AS fn, last_name AS ln\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.rightFunction.markdown": "### RIGHT\nRenvoie la sous-chaîne qui extrait la longueur (`length`) des caractères de la chaîne en partant de la droite (`right`).\n\n```\nFROM employees\n| KEEP last_name\n| EVAL right = RIGHT(last_name, 3)\n| SORT last_name ASC\n| LIMIT 5\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.roundFunction.markdown": "### ROUND\nArrondit un nombre à un certain nombre de décimales spécifié. Si le nombre de décimales n'est pas spécifié, la fonction arrondit par défaut au nombre entier le plus proche. Si le nombre de décimales spécifié est négatif, la fonction arrondit au nombre de décimales à gauche de la virgule.\n\n```\nFROM employees\n| KEEP first_name, last_name, height\n| EVAL height = ROUND(height * 3.281, 1)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.row.markdown": "### ROW\nLa commande source `ROW` renvoie une ligne contenant une ou plusieurs colonnes avec les valeurs que vous spécifiez. Cette commande peut s'avérer utile pour les tests.\n \n```\nROW a = 1, b = \"two\", c = null\n```\n\nUtilisez des crochets pour créer des colonnes à valeurs multiples :\n\n```\nROW a = [2, 1]\n```\n\nROW permet d'utiliser des fonctions :\n\n```\nROW a = ROUND(1.23, 0)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.rtrimFunction.markdown": "### RTRIM\nSupprime les espaces à la fin des chaînes.\n\n```\nROW message = \" some text \", color = \" red \"\n| EVAL message = RTRIM(message)\n| EVAL color = RTRIM(color)\n| EVAL message = CONCAT(\"'\", message, \"'\")\n| EVAL color = CONCAT(\"'\", color, \"'\")\n```\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.eFunction.markdown": "### E\nNombre d'Euler.\n\n```\nROW E()\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.endsWithFunction.markdown": "### ENDS_WITH\nRenvoie un booléen qui indique si une chaîne de mots-clés débute par une autre chaîne :\n\n````\nFROM employees\n| KEEP last_name\n| EVAL ln_E = ENDS_WITH(last_name, \"d\")\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.enrich.markdown": "### ENRICH\nVous pouvez utiliser `ENRICH` pour ajouter les données de vos index existants aux enregistrements entrants. Une fonction similaire à l'[enrichissement par ingestion](https://www.elastic.co/guide/en/elasticsearch/reference/current/ingest-enriching-data.html), mais qui fonctionne au moment de la requête.\n\n```\nROW language_code = \"1\"\n| ENRICH languages_policy\n```\n\n`ENRICH` requiert l'exécution d'une [politique d'enrichissement](https://www.elastic.co/guide/en/elasticsearch/reference/current/ingest-enriching-data.html#enrich-policy). La politique d'enrichissement définit un champ de correspondance (un champ clé) et un ensemble de champs d'enrichissement.\n\n`ENRICH` recherche les enregistrements dans l'[index d'enrichissement](https://www.elastic.co/guide/en/elasticsearch/reference/current/ingest-enriching-data.html#enrich-index) en se basant sur la valeur du champ de correspondance. La clé de correspondance dans l'ensemble de données d'entrée peut être définie en utilisant `ON `. Si elle n'est pas spécifiée, la correspondance sera effectuée sur un champ portant le même nom que le champ de correspondance défini dans la politique d'enrichissement.\n\n```\nROW a = \"1\"\n| ENRICH languages_policy ON a\n```\n\nVous pouvez indiquer quels attributs (parmi ceux définis comme champs d'enrichissement dans la politique) doivent être ajoutés au résultat, en utilisant la syntaxe `WITH , ...`.\n\n```\nROW a = \"1\"\n| ENRICH languages_policy ON a WITH language_name\n```\n\nLes attributs peuvent également être renommés à l'aide de la syntaxe `WITH new_name=`\n\n```\nROW a = \"1\"\n| ENRICH languages_policy ON a WITH name = language_name\n````\n\nPar défaut (si aucun `WITH` n'est défini), `ENRICH` ajoute au résultat tous les champs d'enrichissement définis dans la politique d'enrichissement.\n\nEn cas de collision de noms, les champs nouvellement créés remplacent les champs existants.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.eval.markdown": "### EVAL\n`EVAL` permet d'ajouter des colonnes :\n\n````\nFROM employees\n| KEEP first_name, last_name, height\n| EVAL height_feet = height * 3.281, height_cm = height * 100\n````\n\nSi la colonne indiquée existe déjà, la colonne existante sera supprimée et la nouvelle colonne sera ajoutée au tableau :\n\n````\nFROM employees\n| KEEP first_name, last_name, height\n| EVAL height = height * 3.281\n````\n\n#### Fonctions\n`EVAL` prend en charge diverses fonctions de calcul des valeurs. Pour en savoir plus, consultez les fonctions.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.floorFunction.markdown": "### FLOOR\nArrondir un nombre à l'entier inférieur.\n\n````\nROW a=1.8\n| EVAL a=FLOOR(a)\n````\n\nIl s'agit d'un noop pour `long` (y compris non connecté) et `integer`. Pour `double`, la fonction choisit la valeur `double` la plus proche de l'entier, de manière similaire à la méthode `Math.floor` de Java.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.from.markdown": "### FROM\nLa commande source `FROM` renvoie un tableau contenant jusqu'à 10 000 documents issus d'un flux de données, d'un index ou d'un alias. Chaque ligne du tableau obtenu correspond à un document. Chaque colonne correspond à un champ et est accessible par le nom de ce champ.\n\n````\nFROM employees\n````\n\nVous pouvez utiliser des [calculs impliquant des dates](https://www.elastic.co/guide/en/elasticsearch/reference/current/api-conventions.html#api-date-math-index-names) pour désigner les indices, les alias et les flux de données. Cela peut s'avérer utile pour les données temporelles.\n\nUtilisez des listes séparées par des virgules ou des caractères génériques pour rechercher plusieurs flux de données, indices ou alias :\n\n````\nFROM employees-00001,employees-*\n````\n\n#### Métadonnées\n\nES|QL peut accéder aux champs de métadonnées suivants :\n\n* `_index` : l'index auquel appartient le document. Le champ est du type `keyword`.\n* `_id` : l'identifiant du document source. Le champ est du type `keyword`.\n* `_id` : la version du document source. Le champ est du type `long`.\n\nUtilisez la directive `METADATA` pour activer les champs de métadonnées :\n\n````\nFROM index [METADATA _index, _id]\n````\n\nLes champs de métadonnées ne sont disponibles que si la source des données est un index. Par conséquent, `FROM` est la seule commande source qui prend en charge la directive `METADATA`.\n\nUne fois activés, les champs sont disponibles pour les commandes de traitement suivantes, tout comme les autres champs de l'index :\n\n````\nFROM ul_logs, apps [METADATA _index, _version]\n| WHERE id IN (13, 14) AND _version == 1\n| EVAL key = CONCAT(_index, \"_\", TO_STR(id))\n| SORT id, _index\n| KEEP id, _index, _version, key\n````\n\nDe même, comme pour les champs d'index, une fois l'agrégation effectuée, un champ de métadonnées ne sera plus accessible aux commandes suivantes, sauf s'il est utilisé comme champ de regroupement :\n\n````\nFROM employees [METADATA _index, _id]\n| STATS max = MAX(emp_no) BY _index\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.greatestFunction.markdown": "### GREATEST\nRenvoie la valeur maximale de plusieurs colonnes. Cette fonction est similaire à `MV_MAX`. Toutefois, elle est destinée à être exécutée sur plusieurs colonnes à la fois.\n\n````\nROW a = 10, b = 20\n| EVAL g = GREATEST(a, b);\n````\n\nRemarque : lorsque cette fonction est exécutée sur les champs `keyword` ou `text`, elle renvoie la dernière chaîne dans l'ordre alphabétique. Lorsqu'elle est exécutée sur des colonnes `boolean`, elle renvoie `true` si l'une des valeurs l'est.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.grok.markdown": "### GROK\n`GROK` vous permet d'extraire des données structurées d'une chaîne. `GROK` compare la chaîne à des modèles, sur la base d’expressions régulières, et extrait les modèles indiqués en tant que colonnes.\n\nPour obtenir la syntaxe des modèles \"grok\", consultez [la documentation relative au processeur \"grok\"](https://www.elastic.co/guide/en/elasticsearch/reference/current/grok-processor.html).\n\n````\nROW a = \"12 15.5 15.6 true\"\n| GROK a \"%\\{NUMBER:b:int\\} %\\{NUMBER:c:float\\} %\\{NUMBER:d:double\\} %\\{WORD:e:boolean\\}\"\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.inOperator.markdown": "### IN\nL'opérateur `IN` permet de tester si un champ ou une expression est égal à un élément d'une liste de littéraux, de champs ou d'expressions :\n\n````\nROW a = 1, b = 4, c = 3\n| WHERE c-a IN (3, b / 2, a)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.keep.markdown": "### KEEP\nLa commande `KEEP` permet de définir les colonnes qui seront renvoyées et l'ordre dans lequel elles le seront.\n\nPour limiter les colonnes retournées, utilisez une liste de noms de colonnes séparés par des virgules. Les colonnes sont renvoyées dans l'ordre indiqué :\n \n````\nFROM employees\n| KEEP first_name, last_name, height\n````\n\nPlutôt que de spécifier chaque colonne par son nom, vous pouvez utiliser des caractères génériques pour renvoyer toutes les colonnes dont le nom correspond à un modèle :\n\n````\nFROM employees\n| KEEP h*\n````\n\nLe caractère générique de l'astérisque (\"*\") placé de manière isolée transpose l'ensemble des colonnes qui ne correspondent pas aux autres arguments. La requête suivante renverra en premier lieu toutes les colonnes dont le nom commence par un h, puis toutes les autres colonnes :\n\n````\nFROM employees\n| KEEP h*, *\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.leastFunction.markdown": "### LEAST\nRenvoie la valeur minimale de plusieurs colonnes. Cette fonction est similaire à `MV_MIN`. Toutefois, elle est destinée à être exécutée sur plusieurs colonnes à la fois.\n\n````\nROW a = 10, b = 20\n| EVAL l = LEAST(a, b)\n````\n\nRemarque : lorsque cette fonction est exécutée sur les champs `keyword` ou `text`, elle renvoie la première chaîne dans l'ordre alphabétique. Lorsqu'elle est exécutée sur des colonnes `boolean`, elle renvoie `false` si l'une des valeurs l'est.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.leftFunction.markdown": "### LEFT\nRenvoie la sous-chaîne qui extrait la longueur des caractères de la chaîne en partant de la gauche.\n\n````\nFROM employees\n| KEEP last_name\n| EVAL left = LEFT(last_name, 3)\n| SORT last_name ASC\n| LIMIT 5\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.lengthFunction.markdown": "### LENGTH\nRenvoie la longueur des caractères d'une chaîne.\n\n````\nFROM employees\n| KEEP first_name, last_name, height\n| EVAL fn_length = LENGTH(first_name)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.limit.markdown": "### LIMIT\nLa commande de traitement `LIMIT` permet de restreindre le nombre de lignes :\n \n````\nFROM employees\n| LIMIT 5\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.log10Function.markdown": "### LOG10\nRenvoie le log de base 10. La valeur de renvoi est toujours un double, quelle que soit la valeur numérique de l'entrée.\n\nLes logs des nombres négatifs affichent une valeur NaN. Les logs des infinis et de 0 sont infinis.\n\n````\nROW d = 1000.0\n| EVAL s = LOG10(d)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.ltrimFunction.markdown": "### LTRIM\nRetire les espaces au début des chaînes.\n\n````\nROW message = \" some text \", color = \" red \"\n| EVAL message = LTRIM(message)\n| EVAL color = LTRIM(color)\n| EVAL message = CONCAT(\"'\", message, \"'\")\n| EVAL color = CONCAT(\"'\", color, \"'\")\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.markdown": "## ES|QL\n\nUne requête ES|QL (langage de requête Elasticsearch) se compose d'une série de commandes, séparées par une barre verticale : `|`. Chaque requête commence par une **commande source**, qui produit un tableau, habituellement avec des données issues d'Elasticsearch. \n\nUne commande source peut être suivie d'une ou plusieurs **commandes de traitement**. Les commandes de traitement peuvent modifier le tableau de sortie de la commande précédente en ajoutant, supprimant ou modifiant les lignes et les colonnes.\n\n````\nsource-command\n| processing-command1\n| processing-command2\n````\n\nLe résultat d'une requête est le tableau produit par la dernière commande de traitement. \n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.maxFunction.markdown": "### MAX\nRenvoie la valeur maximale d'une expression numérique.\n\n````\nFROM employees\n| STATS MAX(languages)\n````\n\nCette expression peut utiliser des fonctions alignées. Par exemple, pour calculer le maximum sur une moyenne d'une colonne multivaluée, il faut utiliser `MV_AVG` pour faire la moyenne des multiples valeurs par ligne et utiliser le résultat avec la fonction `MAX` :\n\n````\nFROM employees\n| STATS max_avg_salary_change = MAX(MV_AVG(salary_change))\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.medianAbsoluteDeviationFunction.markdown": "### MEDIAN_ABSOLUTE_DEVIATION\nRenvoie l'écart absolu médian, une mesure de la variabilité. Il s'agit d'un indicateur robuste, ce qui signifie qu'il est utile pour décrire des données qui peuvent présenter des valeurs aberrantes ou ne pas être normalement distribuées. Pour de telles données, il peut être plus descriptif que l'écart-type.\n\nIl est calculé comme la médiane de chaque écart de point de données par rapport à la médiane de l'ensemble de l'échantillon. Autrement dit, pour une variable aléatoire X, l'écart absolu médian est `median(|median(X) - X|)`.\n\n````\nFROM employees\n| STATS MEDIAN(salary), MEDIAN_ABSOLUTE_DEVIATION(salary)\n````\n\nREMARQUE : Comme la fonction `PERCENTILE`, la fonction `MEDIAN_ABSOLUTE_DEVIATION` est généralement approximative, et basée sur l'algorithme TDigest. Elle est également non déterministe. Cela signifie que vous pouvez obtenir des résultats légèrement différents en utilisant les mêmes données.\n\nCette expression peut utiliser des fonctions alignées. Par exemple, pour calculer l'écart absolu médian des valeurs maximales d'une colonne multivaluée, il faut d'abord utiliser `MV_MAX` pour obtenir la valeur maximale par ligne, et utiliser le résultat avec la fonction `MEDIAN_ABSOLUTE_DEVIATION` :\n\n````\nFROM employees\n| STATS m_a_d_max_salary_change = MEDIAN_ABSOLUTE_DEVIATION(MV_MAX(salary_change))\n````\n\n", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.medianFunction.markdown": "### MEDIAN\nRenvoie la valeur qui est supérieure à la moitié de toutes les valeurs et inférieure à la moitié de toutes les valeurs, également connue sous le nom de `PERCENTILE` 50 %.\n\n**REMARQUE :** Comme la fonction `PERCENTILE`, la fonction `MEDIAN` est généralement approximative et basée sur l'algorithme TDigest.\n\n**AVERTISSEMENT :** `MEDIAN` est également [non déterministe](https://en.wikipedia.org/wiki/Nondeterministic_algorithm). Cela signifie que vous pouvez obtenir des résultats légèrement différents en utilisant les mêmes données.\n\nExemple :\n\n````\nFROM employees\n| STATS MEDIAN(salary), PERCENTILE(salary, 50)\n````\n\nCette expression peut utiliser des fonctions alignées. Par exemple, pour calculer le médian des valeurs maximales d'une colonne multivaluée, il faut d'abord utiliser `MV_MAX` pour obtenir la valeur maximale par ligne et utiliser le résultat avec la fonction `MEDIAN` :\n\n````\nFROM employees\n| STATS median_max_salary_change = MEDIAN(MV_MAX(salary_change))\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.minFunction.markdown": "### MIN\nRenvoie la valeur minimale d'un champ numérique.\n\n````\nFROM employees\n| STATS MIN(languages)\n````\n\nCette expression peut utiliser des fonctions alignées. Par exemple, pour calculer le minimum sur une moyenne d'une colonne multivaluée, il faut utiliser `MV_AVG` pour faire la moyenne des valeurs multiples par ligne et utiliser le résultat avec la fonction `MIN` :\n\n````\nFROM employees\n| STATS min_avg_salary_change = MIN(MV_AVG(salary_change))\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvAvgFunction.markdown": "### MV_AVG\nConvertit un champ multivalué en un champ à valeur unique comprenant la moyenne de toutes les valeurs. Par exemple :\n\n````\nROW a=[3, 5, 1, 6]\n| EVAL avg_a = MV_AVG(a)\n````\n\nRenvoi :\n\n````\n[3, 5, 1, 6] | 3.75\n````\n\nREMARQUE : Le type de sortie est toujours un double et le type d'entrée peut être n'importe quel nombre.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvConcatFunction.markdown": "### MV_CONCAT\nConvertit un champ de type chaîne multivalué en un champ à valeur unique comprenant la concaténation de toutes les valeurs séparées par un délimiteur :\n\n````\nROW a=[\"foo\", \"zoo\", \"bar\"]\n| EVAL j = MV_CONCAT(a, \", \")\n````\n\nRenvoi :\n\n````\n[\"foo\", \"zoo\", \"bar\"] | \"foo, zoo, bar\"\n````\n\nSi vous voulez lier des champs qui ne sont pas des chaînes, appelez en premier lieu `TO_STRING` sur ces champs :\n\n````\nROW a=[10, 9, 8]\n| EVAL j = MV_CONCAT(TO_STRING(a), \", \")\n````\n\nRenvoi :\n\n````\n[10, 9, 8] | \"10, 9, 8\"\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvCountFunction.markdown": "### MV_COUNT\nConvertit un champ multivalué en un champ à valeur unique comprenant un décompte du nombre de valeurs :\n\n````\nROW a=[\"foo\", \"zoo\", \"bar\"]\n| EVAL count_a = MV_COUNT(a)\n````\n\nRenvoi :\n\n````\n[\"foo\", \"zoo\", \"bar\"] | 3\n````\n\nREMARQUE : Cette fonction accepte tous les types de valeurs et renvoie toujours un nombre entier.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvDedupeFunction.markdown": "### MV_DEDUPE\nSupprime les doublons d'un champ multivalué. Par exemple :\n\n````\nROW a=[\"foo\", \"foo\", \"bar\", \"foo\"]\n| EVAL dedupe_a = MV_DEDUPE(a)\n````\n\nRenvoi :\n\n````\n[\"foo\", \"foo\", \"bar\", \"foo\"] | [\"foo\", \"bar\"]\n````\n\nREMARQUE : la fonction `MV_DEDUPE` est en mesure de trier les valeurs du champ, mais ne le fait pas systématiquement.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvExpand.markdown": "### MV_EXPAND\nLa commande de traitement `MV_EXPAND` développe les champs multivalués en indiquant une valeur par ligne et en dupliquant les autres champs : \n````\nROW a=[1,2,3], b=\"b\", j=[\"a\",\"b\"]\n| MV_EXPAND a\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvFirstFunction.markdown": "### MV_FIRST\nConvertit un champ multivalué en un champ à valeur unique contenant la première valeur. Ceci est particulièrement utile pour lire une fonction qui émet des champs multivalués dans un ordre connu, comme `SPLIT`.\n\nPar exemple :\n\n````\nROW a=\"foo;bar;baz\" \n| EVAL first_a = MV_FIRST(SPLIT(a, \";\"))\n````\n\nRenvoi :\n\n````\nfoo;bar;baz | foo\n````\n\nL'ordre dans lequel [les champs multivalués](https://www.elastic.co/guide/en/elasticsearch/reference/current/esql-multivalued-fields.html) sont lus à partir du stockage sous-jacent n'est pas garanti. Il est souvent ascendant, mais ne vous y fiez pas. Si vous avez besoin de la valeur minimale d'un champ, utilisez `MV_MIN` au lieu de `MV_FIRST`. `MV_MIN` a des optimisations pour les valeurs triées, donc il n'y a pas d'avantage de performance à utiliser `MV_FIRST`. `MV_FIRST` est surtout utile avec les fonctions qui créent des champs multivalués comme `SPLIT`.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvLastFunction.markdown": "### MV_LAST\nConvertit un champ multivalué en un champ à valeur unique comprenant la dernière valeur. Ceci est particulièrement utile pour lire une fonction qui émet des champs multivalués dans un ordre connu, comme `SPLIT` :\n \n````\nROW a=\"foo;bar;baz\" \n| EVAL first_a = MV_FIRST(SPLIT(a, \";\"))\n````\n\nRenvoi :\n\n````\nfoo;bar;baz | baz\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvMaxFunction.markdown": "### MV_MAX\nConvertit un champ multivalué en un champ à valeur unique comprenant la valeur maximale. Par exemple :\n\n````\nROW a=[3, 5, 1]\n| EVAL max_a = MV_MAX(a)\n````\n\nRenvoi :\n\n````\n[3, 5, 1] | 5\n````\n\nElle peut être utilisée par n'importe quel type de champ, y compris les champs de type `keyword`. Dans ce cas, elle choisit la dernière chaîne, en comparant leur représentation utf-8 octet par octet :\n\n````\nROW a=[\"foo\", \"zoo\", \"bar\"]\n| EVAL max_a = MV_MAX(a)\n````\n\nRenvoi :\n\n````\n[\"foo\", \"zoo\", \"bar\"] | \"zoo\"\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvMedianFunction.markdown": "### MV_MEDIAN\nConvertit un champ multivalué en un champ à valeur unique comprenant la valeur médiane. Par exemple :\n\n````\nROW a=[3, 5, 1]\n| EVAL median_a = MV_MEDIAN(a)\n````\n\nRenvoi :\n\n````\n[3, 5, 1] | 3\n````\n\nElle peut être utilisée par n'importe quel type de champ numérique et renvoie une valeur du même type. Si la ligne comprend un nombre pair de valeurs pour une colonne, le résultat sera la moyenne des deux entrées du milieu. Si le champ n'inclut pas une valeur en virgule flottante, la moyenne est arrondie à la valeur **inférieure** :\n\n````\nROW a=[3, 7, 1, 6]\n| EVAL median_a = MV_MEDIAN(a)\n````\n\nRenvoi :\n\n````\n[3, 7, 1, 6] | 4\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvMinFunction.markdown": "### MV_MIN\nConvertit un champ multivalué en un champ à valeur unique comprenant la valeur minimale. Par exemple :\n\n````\nROW a=[2, 1]\n| EVAL min_a = MV_MIN(a)\n````\n\nRenvoi :\n\n````\n[2, 1] | 1\n````\n\nElle peut être utilisée par n'importe quel type de champ, y compris les champs de type `keyword`. Dans ce cas, elle choisit la dernière chaîne, en comparant leur représentation utf-8 octet par octet :\n\n````\nROW a=[\"foo\", \"bar\"]\n| EVAL min_a = MV_MIN(a)\n````\n\nRenvoi :\n\n````\n[\"foo\", \"bar\"] | \"bar\"\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvSumFunction.markdown": "### MV_SUM\nConvertit un champ multivalué en un champ à valeur unique comprenant la somme de toutes les valeurs. Par exemple :\n````\nROW a=[3, 5, 6]\n| EVAL sum_a = MV_SUM(a)\n````\n\nRenvoi :\n\n````\n[3, 5, 6] | 14\n````\n\nREMARQUE : Le type d'entrée peut être n'importe quel nombre et le type de sortie est identique au type d'entrée.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.nowFunction.markdown": "### NOW\nRenvoie la date et l'heure actuelles.\n\n````\nROW current_date = NOW()\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.percentileFunction.markdown": "### PERCENTILE\nValeur à laquelle un certain pourcentage des valeurs observées se produit. Par exemple, le 95e percentile est la valeur qui est supérieure à 95 % des valeurs observées et le 50percentile est la médiane (`MEDIAN`).\n\n````\nFROM employees\n| STATS p0 = PERCENTILE(salary, 0)\n , p50 = PERCENTILE(salary, 50)\n , p99 = PERCENTILE(salary, 99)\n````\n\n**REMARQUE** : La fonction `PERCENTILE` est généralement approximative et basée sur l'algorithme TDigest. \n\n**AVERTISSEMENT :** `PERCENTILE` est aussi [non déterministe](https://en.wikipedia.org/wiki/Nondeterministic_algorithm). Cela signifie que vous pouvez obtenir des résultats légèrement différents en utilisant les mêmes données.\n\nCette expression peut utiliser des fonctions alignées. Par exemple, pour calculer un percentile des valeurs maximales d'une colonne multivaluée, il faut d'abord utiliser `MV_MAX` pour obtenir la valeur maximale par ligne et utiliser le résultat avec la fonction `PERCENTILE` :\n\n````\nFROM employees\n| STATS p80_max_salary_change = PERCENTILE(MV_MAX(salary_change), 80)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.piFunction.markdown": "### PI\nRapport entre la circonférence et le diamètre d'un cercle.\n\n````\nROW PI()\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.powFunction.markdown": "### POW\nRenvoie la valeur d'une base (premier argument) élevée à la puissance d'un exposant (deuxième argument). Les deux arguments doivent être numériques. La sortie est toujours un double. Veuillez noter qu'il est toujours possible de dépasser un résultat double ici ; dans ce cas, la valeur `null` sera renvoyée.\n\n````\nROW base = 2.0, exponent = 2.0 \n| EVAL s = POW(base, exponent)\n````\n\n#### Exposants fractionnaires\n\nL'exposant peut être un nombre fractionnaire, ce qui revient à effectuer une racine. Par exemple, l'exposant de 0,5 donnera la racine carrée de la base :\n\n````\nROW base = 4, exponent = 0.5\n| EVAL s = POW(base, exponent)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.predicates.markdown": "### Valeurs NULL\nPour une comparaison avec une valeur NULL, utilisez les attributs `IS NULL` et `IS NOT NULL` :\n\n````\nFROM employees\n| WHERE birth_date IS NULL\n| KEEP first_name, last_name\n| SORT first_name\n| LIMIT 3\n````\n\n````\nFROM employees\n| WHERE is_rehired IS NOT NULL\n| STATS count(emp_no)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.rename.markdown": "### RENAME\nUtilisez `RENAME` pour renommer une colonne en utilisant la syntaxe suivante :\n\n````\nRENAME AS \n````\n\nPar exemple :\n\n````\nFROM employees\n| KEEP first_name, last_name, still_hired\n| RENAME still_hired AS employed\n````\n\nSi une colonne portant le nouveau nom existe déjà, elle sera remplacée par la nouvelle colonne.\n\nPlusieurs colonnes peuvent être renommées à l'aide d'une seule commande `RENAME` :\n\n````\nFROM employees\n| KEEP first_name, last_name\n| RENAME first_name AS fn, last_name AS ln\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.rightFunction.markdown": "### RIGHT\nRenvoie la sous-chaîne qui extrait la longueur (`length`) des caractères de la chaîne en partant de la droite (`right`).\n\n````\nFROM employees\n| KEEP last_name\n| EVAL right = RIGHT(last_name, 3)\n| SORT last_name ASC\n| LIMIT 5\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.roundFunction.markdown": "### ROUND\nArrondit un nombre à un certain nombre de décimales spécifié. Si le nombre de décimales n'est pas spécifié, la fonction arrondit par défaut au nombre entier le plus proche. Si le nombre de décimales spécifié est négatif, la fonction arrondit au nombre de décimales à gauche de la virgule.\n\n````\nFROM employees\n| KEEP first_name, last_name, height\n| EVAL height = ROUND(height * 3.281, 1)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.row.markdown": "### ROW\nLa commande source `ROW` renvoie une ligne contenant une ou plusieurs colonnes avec les valeurs que vous spécifiez. Cette commande peut s'avérer utile pour les tests.\n \n````\nROW a = 1, b = \"two\", c = null\n````\n\nUtilisez des crochets pour créer des colonnes à valeurs multiples :\n\n````\nROW a = [2, 1]\n````\n\nROW permet d'utiliser des fonctions :\n\n````\nROW a = ROUND(1.23, 0)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.rtrimFunction.markdown": "### RTRIM\nSupprime les espaces à la fin des chaînes.\n\n````\nROW message = \" some text \", color = \" red \"\n| EVAL message = RTRIM(message)\n| EVAL color = RTRIM(color)\n| EVAL message = CONCAT(\"'\", message, \"'\")\n| EVAL color = CONCAT(\"'\", color, \"'\")\n````\n ", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.show.markdown": "### SHOW\nLa commande source `SHOW ` renvoie des informations sur le déploiement et ses capacités :\n\n* Utilisez `SHOW INFO` pour renvoyer la version du déploiement, la date de compilation et le hachage.\n* Utilisez `SHOW FUNCTIONS` pour renvoyer une liste de toutes les fonctions prises en charge et un résumé de chaque fonction.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.sinFunction.markdown": "### SIN\nFonction trigonométrique sinus.\n\n```\nROW a=1.8\n| EVAL sin=SIN(a)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.sinhFunction.markdown": "### SINH\nFonction hyperbolique sinus.\n\n```\nROW a=1.8\n| EVAL sinh=SINH(a)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.sort.markdown": "### SORT\nUtilisez la commande `SORT` pour trier les lignes sur un ou plusieurs champs :\n\n```\nFROM employees\n| KEEP first_name, last_name, height\n| SORT height\n```\n\nL'ordre de tri par défaut est croissant. Définissez un ordre de tri explicite en utilisant `ASC` ou `DESC` :\n\n```\nFROM employees\n| KEEP first_name, last_name, height\n| SORT height DESC\n```\n\nSi deux lignes disposent de la même clé de tri, l'ordre original sera préservé. Vous pouvez ajouter des expressions de tri pour départager les deux lignes :\n\n```\nFROM employees\n| KEEP first_name, last_name, height\n| SORT height DESC, first_name ASC\n```\n\n#### valeurs `null`\nPar défaut, les valeurs `null` sont considérées comme étant supérieures à toutes les autres valeurs. Selon un ordre de tri croissant, les valeurs `null` sont classées en dernier. Selon un ordre de tri décroissant, les valeurs `null` sont classées en premier. Pour modifier cet ordre, utilisez `NULLS FIRST` ou `NULLS LAST` :\n\n```\nFROM employees\n| KEEP first_name, last_name, height\n| SORT first_name ASC NULLS FIRST\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.splitFunction.markdown": "### SPLIT\nDivise une chaîne de valeur unique en plusieurs chaînes. Par exemple :\n\n```\nROW words=\"foo;bar;baz;qux;quux;corge\"\n| EVAL word = SPLIT(words, \";\")\n```\n\nQui divise `\"foo;bar;baz;qux;quux;corge\"` sur `;` et renvoie un tableau :\n\n```\nfoo;bar;baz;qux;quux;corge | [foo,bar,baz,qux,quux,corge]\n```\n\nREMARQUE : Seuls les délimiteurs d'un seul octet sont actuellement pris en charge.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.sqrtFunction.markdown": "### SQRT\nRenvoie la racine carrée d'un nombre. La valeur de renvoi est toujours un double, quelle que soit la valeur numérique de l'entrée.\n\nLes racines carrées des nombres négatifs affichent une valeur NaN. La racine carrée de l'infini est égale à l'infini.\n\n```\nROW d = 100.0\n| EVAL s = SQRT(d)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.startsWithFunction.markdown": "### STARTS_WITH\nRenvoie un booléen qui indique si une chaîne de mots-clés débute par une autre chaîne.\n\n```\nFROM employees\n| KEEP first_name, last_name, height\n| EVAL ln_S = STARTS_WITH(last_name, \"S\")\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.statsby.markdown": "### STATS ... BY\nUtilisez `STATS ... BY` pour regrouper les lignes en fonction d'une valeur commune et calculer une ou plusieurs valeurs agrégées sur les lignes regroupées.\n\n```\nFROM employees\n| STATS count = COUNT(languages) BY languages\n```\n\nSi `BY` est omis, le tableau de sortie contient exactement une ligne avec les agrégations appliquées sur l'ensemble des données :\n\n```\nFROM employees\n| STATS avg_lang = AVG(languages)\n```\n\nIl est possible de calculer plusieurs valeurs :\n\n```\nFROM employees\n| STATS avg_lang = AVG(languages), max_lang = MAX(languages)\n```\n\nIl est également possible d'effectuer des regroupements en fonction de plusieurs valeurs (uniquement pour les champs longs et les champs de la famille de mots-clés) :\n\n```\nFROM employees\n| EVAL hired = DATE_FORMAT(hire_date, \"YYYY\")\n| STATS avg_salary = AVG(salary) BY hired, languages.long\n| EVAL avg_salary = ROUND(avg_salary)\n| SORT hired, languages.long\n```\n\nConsultez la rubrique **Fonctions d'agrégation** pour obtenir la liste des fonctions pouvant être utilisées avec `STATS ... BY`.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.stringOperators.markdown": "### LIKE et RLIKE\nPour comparer des chaînes en utilisant des caractères génériques ou des expressions régulières, utilisez `LIKE` ou `RLIKE` :\n\nUtilisez `LIKE` pour faire correspondre des chaînes à l'aide de caractères génériques. Les caractères génériques suivants sont pris en charge :\n\n* `*` correspond à zéro caractère ou plus.\n* `?` correspond à un seul caractère.\n\n```\nFROM employees\n| WHERE first_name LIKE \"?b*\"\n| KEEP first_name, last_name\n```\n\nUtilisez `RLIKE` pour faire correspondre des chaînes à l'aide d'expressions régulières :\n\n```\nFROM employees\n| WHERE first_name RLIKE \".leja.*\"\n| KEEP first_name, last_name\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.substringFunction.markdown": "### SUBSTRING\nRenvoie la sous-chaîne d'une chaîne, délimitée en fonction d'une position de départ et d'une longueur facultative. L'exemple suivant renvoie les trois premières lettres de chaque nom de famille :\n\n```\nFROM employees\n| KEEP last_name\n| EVAL ln_sub = SUBSTRING(last_name, 1, 3)\n```\n\nUne position de départ négative est interprétée comme étant relative à la fin de la chaîne. L'exemple suivant renvoie les trois dernières lettres de chaque nom de famille :\n\n```\nFROM employees\n| KEEP last_name\n| EVAL ln_sub = SUBSTRING(last_name, -3, 3)\n```\n\nSi la longueur n'est pas spécifiée, la sous-chaîne renvoie le reste de la chaîne. L'exemple suivant renvoie toutes les lettres à l'exception de la première :\n\n```\nFROM employees\n| KEEP last_name\n| EVAL ln_sub = SUBSTRING(last_name, 2)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.sumFunction.markdown": "### SUM\nSomme d'un champ numérique.\n\n```\nFROM employees\n| STATS SUM(languages)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.tanFunction.markdown": "### TAN\nFonction trigonométrique tangente.\n\n```\nROW a=1.8\n| EVAL tan=TAN(a)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.tanhFunction.markdown": "### TANH\nFonction hyperbolique tangente.\n\n```\nROW a=1.8\n| EVAL tanh=TANH(a)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.tauFunction.markdown": "### TAU\nRapport entre la circonférence et le rayon d'un cercle.\n\n```\nROW TAU()\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toBooleanFunction.markdown": "### TO_BOOLEAN\nConvertit une valeur d'entrée en une valeur booléenne.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type chaîne ou numérique.\n\nUne chaîne de valeur **\"true\"** sera convertie, sans tenir compte de la casse, en une valeur booléenne **true**. Pour toute autre valeur, y compris une chaîne vide, la fonction renverra **false**. Par exemple :\n\n```\nROW str = [\"true\", \"TRuE\", \"false\", \"\", \"yes\", \"1\"]\n| EVAL bool = TO_BOOLEAN(str)\n```\n\nRenvoi :\n\n```\n[\"true\", \"TRuE\", \"false\", \"\", \"yes\", \"1\"] | [true, true, false, false, false, false]\n```\n\nLa valeur numérique **0** sera convertie en **false**, toute autre valeur sera convertie en **true**.\n\nAlias : TO_BOOL\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toDatetimeFunction.markdown": "### TO_DATETIME\nConvertit une valeur d'entrée en une valeur de date.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type chaîne ou numérique.\n\nUne chaîne ne sera convertie efficacement que si elle respecte le format `yyyy-MM-dd'T'HH:mm:ss.SSS'Z'`. Par exemple :\n\n```\nROW string = [\"1953-09-02T00:00:00.000Z\", \"1964-06-02T00:00:00.000Z\", \"1964-06-02 00:00:00\"]\n| EVAL datetime = TO_DATETIME(string)\n```\n\nRenvoi :\n\n```\n[\"1953-09-02T00:00:00.000Z\", \"1964-06-02T00:00:00.000Z\", \"1964-06-02 00:00:00\"] | [1953-09-02T00:00:00.000Z, 1964-06-02T00:00:00.000Z]\n```\n\nNotez que, dans cet exemple, la dernière valeur du champ source multivalué n'a pas été convertie. En effet, si le format de la date n'est pas respecté, la conversion aboutira à une valeur **null**.\n\nSi le paramètre d'entrée est de type numérique, sa valeur sera interprétée en millisecondes depuis l'heure Unix. Par exemple :\n\n```\nROW int = [0, 1]\n| EVAL dt = TO_DATETIME(int)\n```\n\nRenvoi :\n\n```\n[0, 1] | [1970-01-01T00:00:00.000Z, 1970-01-01T00:00:00.001Z]\n```\n\nAlias : TO_DT\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toDegreesFunction.markdown": "### TO_DEGREES\nConvertit un nombre en radians en degrés.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type numérique et le résultat est toujours `double`.\n\n```\nROW rad = [1.57, 3.14, 4.71]\n| EVAL deg = TO_DEGREES(rad)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toDoubleFunction.markdown": "### TO_DOUBLE\nConvertit une valeur d'entrée en une valeur double.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type booléen, date, chaîne ou numérique.\n\nExemple :\n\n```\nROW str1 = \"5.20128E11\", str2 = \"foo\"\n| EVAL dbl = TO_DOUBLE(\"520128000000\"), dbl1 = TO_DOUBLE(str1), dbl2 = TO_DOUBLE(str2)\n```\n\nRenvoi :\n\n```\n5.20128E11 | foo | 5.20128E11 | 5.20128E11 | null\n```\n\nNotez que, dans cet exemple, la dernière conversion de la chaîne n'est pas possible. Dans ce cas, le résultat est une valeur **null**.\n\nSi le paramètre d'entrée est de type date, sa valeur sera interprétée en millisecondes depuis l'heure Unix, convertie en double.\n\nLe booléen **true** sera converti en double **1.0**, et **false** en **0.0**.\n\nAlias : TO_DBL\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toIntegerFunction.markdown": "### TO_INTEGER\nConvertit une valeur d'entrée en une valeur entière.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type booléen, date, chaîne ou numérique.\n\nExemple :\n\n```\nROW long = [5013792, 2147483647, 501379200000]\n| EVAL int = TO_INTEGER(long)\n```\n\nRenvoi :\n\n```\n[5013792, 2147483647, 501379200000] | [5013792, 2147483647]\n```\n\nNotez que, dans cet exemple, la dernière valeur du champ multivalué ne peut pas être convertie en un nombre entier. Dans ce cas, le résultat est une valeur **null**.\n\nSi le paramètre d'entrée est de type date, sa valeur sera interprétée en millisecondes depuis l'heure Unix, convertie en nombre entier.\n\nLe booléen **true** sera converti en entier **1**, et **false** en **0**.\n\nAlias : TO_INT\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toIpFunction.markdown": "### TO_IP\nConvertit une chaîne d'entrée en valeur IP.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression.\n\nExemple :\n\n```\nROW str1 = \"1.1.1.1\", str2 = \"foo\"\n| EVAL ip1 = TO_IP(str1), ip2 = TO_IP(str2)\n| WHERE CIDR_MATCH(ip1, \"1.0.0.0/8\")\n```\n\nRenvoi :\n\n```\n1.1.1.1 | foo | 1.1.1.1 | null\n```\n\nNotez que, dans l'exemple ci-dessus, la dernière conversion de la chaîne n'est pas possible. Dans ce cas, le résultat est une valeur **null**.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toLongFunction.markdown": "### TO_LONG\nConvertit une valeur d'entrée en une valeur longue.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type booléen, date, chaîne ou numérique.\n\nExemple :\n\n```\nROW str1 = \"2147483648\", str2 = \"2147483648.2\", str3 = \"foo\"\n| EVAL long1 = TO_LONG(str1), long2 = TO_LONG(str2), long3 = TO_LONG(str3)\n```\n\nRenvoi :\n\n```\n2147483648 | 2147483648.2 | foo | 2147483648 | 2147483648 | null\n```\n\nNotez que, dans cet exemple, la dernière conversion de la chaîne n'est pas possible. Dans ce cas, le résultat est une valeur **null**. \n\nSi le paramètre d'entrée est de type date, sa valeur sera interprétée en millisecondes depuis l'heure Unix, convertie en nombre entier.\n\nLe booléen **true** sera converti en valeur longue **1**, et **false** en **0**.\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toRadiansFunction.markdown": "### TO_RADIANS\nConvertit un nombre en degrés en radians.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type numérique et le résultat est toujours `double`.\n\n```\nROW deg = [90.0, 180.0, 270.0]\n| EVAL rad = TO_RADIANS(deg)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toStringFunction.markdown": "### TO_STRING\nConvertit un champ en une chaîne. Par exemple :\n\n```\nROW a=10\n| EVAL j = TO_STRING(a)\n```\n\nCela fonctionne également pour les champs multivalués :\n\n```\nROW a=[10, 9, 8]\n| EVAL j = TO_STRING(a)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toUnsignedLongFunction.markdown": "### TO_UNSIGNED_LONG\nConvertit une valeur d'entrée en une valeur longue non signée.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type booléen, date, chaîne ou numérique.\n\n```\nROW str1 = \"2147483648\", str2 = \"2147483648.2\", str3 = \"foo\"\n| EVAL long1 = TO_UNSIGNED_LONG(str1), long2 = TO_ULONG(str2), long3 = TO_UL(str3)\n```\n\nNotez que, dans cet exemple, la dernière conversion de la chaîne n'est pas possible. Dans ce cas, le résultat est une valeur **null**. La réponse est accompagnée d'un champ d'avertissement. L’en-tête indiquera l'origine de l'échec :\n\n```\n\"Line 1:133: evaluation of [TO_UL(str3)] failed, treating result as null. Only first 20 failures recorded.\"\n```\n\nUn autre en-tête indiquera la raison de l'échec et la valeur incriminée :\n\n```\n\"java.lang.NumberFormatException: Character f is neither a decimal digit number, decimal point, nor \"e\" notation exponential mark.\"\n```\n\nSi le paramètre d'entrée est de type date, sa valeur sera interprétée en millisecondes depuis l'heure Unix, convertie en valeur longue non signée.\n\nLe booléen **true** sera converti en valeur longue non signée **1**, et **false** en **0**.\n\nAlias : TO_ULONG, TO_UL\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toVersionFunction.markdown": "### TO_VERSION\nConvertit une chaîne d'entrée en une valeur de version. Par exemple :\n\n```\nROW v = TO_VERSION(\"1.2.3\")\n```\n\nRenvoi :\n\n```\n1.2.3\n```\n\nAlias : TO_VER\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.trimFunction.markdown": "### TRIM\nSupprime les espaces de début et de fin d'une chaîne.\n\n```\nROW message = \" some text \", color = \" red \"\n| EVAL message = TRIM(message)\n| EVAL color = TRIM(color)\n```\n ", - "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.where.markdown": "### WHERE\nUtilisez `WHERE` afin d'obtenir un tableau qui comprend toutes les lignes du tableau d'entrée pour lesquelles la condition fournie est évaluée à `true` :\n \n```\nFROM employees\n| KEEP first_name, last_name, still_hired\n| WHERE still_hired == true\n```\n\n#### Opérateurs\n\nPour obtenir un aperçu des opérateurs pris en charge, consultez la section **Opérateurs**.\n\n#### Fonctions\n`WHERE` prend en charge diverses fonctions de calcul des valeurs. Pour en savoir plus, consultez la section **Fonctions**.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.sinFunction.markdown": "### SIN\nFonction trigonométrique sinus.\n\n````\nROW a=1.8\n| EVAL sin=SIN(a)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.sinhFunction.markdown": "### SINH\nFonction hyperbolique sinus.\n\n````\nROW a=1.8\n| EVAL sinh=SINH(a)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.sort.markdown": "### SORT\nUtilisez la commande `SORT` pour trier les lignes sur un ou plusieurs champs :\n\n````\nFROM employees\n| KEEP first_name, last_name, height\n| SORT height\n````\n\nL'ordre de tri par défaut est croissant. Définissez un ordre de tri explicite en utilisant `ASC` ou `DESC` :\n\n````\nFROM employees\n| KEEP first_name, last_name, height\n| SORT height DESC\n````\n\nSi deux lignes disposent de la même clé de tri, l'ordre original sera préservé. Vous pouvez ajouter des expressions de tri pour départager les deux lignes :\n\n````\nFROM employees\n| KEEP first_name, last_name, height\n| SORT height DESC, first_name ASC\n````\n\n#### valeurs `null`\nPar défaut, les valeurs `null` sont considérées comme étant supérieures à toutes les autres valeurs. Selon un ordre de tri croissant, les valeurs `null` sont classées en dernier. Selon un ordre de tri décroissant, les valeurs `null` sont classées en premier. Pour modifier cet ordre, utilisez `NULLS FIRST` ou `NULLS LAST` :\n\n````\nFROM employees\n| KEEP first_name, last_name, height\n| SORT first_name ASC NULLS FIRST\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.splitFunction.markdown": "### SPLIT\nDivise une chaîne de valeur unique en plusieurs chaînes. Par exemple :\n\n````\nROW words=\"foo;bar;baz;qux;quux;corge\"\n| EVAL word = SPLIT(words, \";\")\n````\n\nQui divise `\"foo;bar;baz;qux;quux;corge\"` sur `;` et renvoie un tableau :\n\n````\nfoo;bar;baz;qux;quux;corge | [foo,bar,baz,qux,quux,corge]\n````\n\nREMARQUE : Seuls les délimiteurs d'un seul octet sont actuellement pris en charge.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.sqrtFunction.markdown": "### SQRT\nRenvoie la racine carrée d'un nombre. La valeur de renvoi est toujours un double, quelle que soit la valeur numérique de l'entrée.\n\nLes racines carrées des nombres négatifs affichent une valeur NaN. La racine carrée de l'infini est égale à l'infini.\n\n````\nROW d = 100.0\n| EVAL s = SQRT(d)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.startsWithFunction.markdown": "### STARTS_WITH\nRenvoie un booléen qui indique si une chaîne de mots-clés débute par une autre chaîne :\n\n````\nFROM employees\n| KEEP first_name, last_name, height\n| EVAL ln_S = STARTS_WITH(last_name, \"S\")\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.statsby.markdown": "### STATS ... BY\nUtilisez `STATS ... BY` pour regrouper les lignes en fonction d'une valeur commune et calculer une ou plusieurs valeurs agrégées sur les lignes regroupées.\n\n**Exemples** :\n\n````\nFROM employees\n| STATS count = COUNT(emp_no) BY languages\n| SORT languages\n````\n\nSi `BY` est omis, le tableau de sortie contient exactement une ligne avec les agrégations appliquées sur l'ensemble des données :\n\n````\nFROM employees\n| STATS avg_lang = AVG(languages)\n````\n\nIl est possible de calculer plusieurs valeurs :\n\n````\nFROM employees\n| STATS avg_lang = AVG(languages), max_lang = MAX(languages)\n````\n\nIl est également possible d'effectuer des regroupements en fonction de plusieurs valeurs (uniquement pour les champs longs et les champs de la famille de mots-clés) :\n\n````\nFROM employees\n| EVAL hired = DATE_FORMAT(hire_date, \"YYYY\")\n| STATS avg_salary = AVG(salary) BY hired, languages.long\n| EVAL avg_salary = ROUND(avg_salary)\n| SORT hired, languages.long\n````\n\nConsultez la rubrique **Fonctions d'agrégation** pour obtenir la liste des fonctions pouvant être utilisées avec `STATS ... BY`.\n\nLes fonctions d'agrégation et les expressions de regroupement acceptent toutes deux d'autres fonctions. Ceci est utile pour utiliser `STATS...BY` sur des colonnes à valeur multiple. Par exemple, pour calculer l'évolution moyenne du salaire, vous pouvez utiliser `MV_AVG` pour faire la moyenne des multiples valeurs par employé, et utiliser le résultat avec la fonction `AVG` :\n\n````\nFROM employees\n| STATS avg_salary_change = AVG(MV_AVG(salary_change))\n````\n\nLe regroupement par expression est par exemple le regroupement des employés en fonction de la première lettre de leur nom de famille :\n\n````\nFROM employees\n| STATS my_count = COUNT() BY LEFT(last_name, 1)\n| SORT \"LEFT(last_name, 1)\"\n````\n\nIl n'est pas obligatoire d'indiquer le nom de la colonne de sortie. S'il n'est pas spécifié, le nouveau nom de la colonne est égal à l'expression. La requête suivante renvoie une colonne appelée `AVG(salary)` :\n\n````\nFROM employees\n| STATS AVG(salary)\n````\n\nComme ce nom contient des caractères spéciaux, il doit être placé entre deux caractères (`) lorsqu'il est utilisé dans des commandes suivantes :\n\n````\nFROM employees\n| STATS AVG(salary)\n| EVAL avg_salary_rounded = ROUND(\"AVG(salary)\")\n````\n\n**Remarque** : `STATS` sans aucun groupe est beaucoup plus rapide que l'ajout d'un groupe.\n\n**Remarque** : Le regroupement sur une seule expression est actuellement beaucoup plus optimisé que le regroupement sur plusieurs expressions.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.stCentroidFunction.markdown": "### ST_CENTROID\nCalcule le centroïde spatial sur un champ avec un type de géométrie de point spatial.\n\n````\nAéroports FROM\n| STATS centroid=ST_CENTROID(location)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.stringOperators.markdown": "### LIKE et RLIKE\nPour comparer des chaînes en utilisant des caractères génériques ou des expressions régulières, utilisez `LIKE` ou `RLIKE` :\n\nUtilisez `LIKE` pour faire correspondre des chaînes à l'aide de caractères génériques. Les caractères génériques suivants sont pris en charge :\n\n* `*` correspond à zéro caractère ou plus.\n* `?` correspond à un seul caractère.\n\n````\nFROM employees\n| WHERE first_name LIKE \"?b*\"\n| KEEP first_name, last_name\n````\n\nUtilisez `RLIKE` pour faire correspondre des chaînes à l'aide d'expressions régulières :\n\n````\nFROM employees\n| WHERE first_name RLIKE \".leja.*\"\n| KEEP first_name, last_name\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.substringFunction.markdown": "### SUBSTRING\nRenvoie la sous-chaîne d'une chaîne, délimitée en fonction d'une position de départ et d'une longueur facultative. L'exemple suivant renvoie les trois premières lettres de chaque nom de famille :\n\n````\nFROM employees\n| KEEP last_name\n| EVAL ln_sub = SUBSTRING(last_name, 1, 3)\n````\n\nUne position de départ négative est interprétée comme étant relative à la fin de la chaîne. L'exemple suivant renvoie les trois dernières lettres de chaque nom de famille :\n\n````\nFROM employees\n| KEEP last_name\n| EVAL ln_sub = SUBSTRING(last_name, -3, 3)\n````\n\nSi la longueur n'est pas spécifiée, la sous-chaîne renvoie le reste de la chaîne. L'exemple suivant renvoie toutes les lettres à l'exception de la première :\n\n````\nFROM employees\n| KEEP last_name\n| EVAL ln_sub = SUBSTRING(last_name, 2)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.sumFunction.markdown": "### SUM\nRenvoie la somme d'un champ numérique.\n\n````\nFROM employees\n| STATS SUM(languages)\n````\n\nCette expression peut utiliser des fonctions alignées. Par exemple, pour calculer la somme de l'évolution de salaire maximale de chaque employé, appliquez la fonction `MV_MAX` à chaque ligne et additionnez les résultats (`SUM`) :\n\n````\nFROM employees\n| STATS total_salary_changes = SUM(MV_MAX(salary_change))\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.tanFunction.markdown": "### TAN\nFonction trigonométrique tangente.\n\n````\nROW a=1.8\n| EVAL tan=TAN(a)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.tanhFunction.markdown": "### TANH\nFonction hyperbolique tangente.\n\n````\nROW a=1.8\n| EVAL tanh=TANH(a)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.tauFunction.markdown": "### TAU\nRapport entre la circonférence et le rayon d'un cercle.\n\n````\nROW TAU()\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toBooleanFunction.markdown": "### TO_BOOLEAN\nConvertit une valeur d'entrée en une valeur booléenne.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type chaîne ou numérique.\n\nUne chaîne de valeur **\"true\"** sera convertie, sans tenir compte de la casse, en une valeur booléenne **true**. Pour toute autre valeur, y compris une chaîne vide, la fonction renverra **false**. Par exemple :\n\n````\nROW str = [\"true\", \"TRuE\", \"false\", \"\", \"yes\", \"1\"]\n| EVAL bool = TO_BOOLEAN(str)\n````\n\nRenvoi :\n\n````\n[\"true\", \"TRuE\", \"false\", \"\", \"yes\", \"1\"] | [true, true, false, false, false, false]\n````\n\nLa valeur numérique **0** sera convertie en **false**, toute autre valeur sera convertie en **true**.\n\nAlias : TO_BOOL\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toCartesianpointFunction.markdown": "### TO_CARTESIANPOINT\nConvertit une valeur d'entrée en une valeur de `point`.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être une chaîne ou un point cartésien.\n\nUne chaîne ne sera convertie avec succès que si elle respecte le format [WKT Point](https://en.wikipedia.org/wiki/Well-known_text_representation_of_geometry) :\n\n````\nROW wkt = [\"POINT(4297.11 -1475.53)\", \"POINT(7580.93 2272.77)\"]\n| MV_EXPAND wkt\n| EVAL pt = TO_CARTESIANPOINT(wkt)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toCartesianShapeFunction.markdown": "### TO_CARTESIANSHAPE\nConvertit une valeur d'entrée en une valeur `cartesian_shape`.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être une chaîne ou un `cartesian_shape`.\n \nUne chaîne ne sera convertie avec succès que si elle respecte le format [WKT](https://en.wikipedia.org/wiki/Well-known_text_representation_of_geometry) :\n \nPar exemple :\n \n````\nROW wkt = [\"POINT(4297.11 -1475.53)\", \"POLYGON ((3339584.72 1118889.97, 4452779.63 4865942.27, 2226389.81 4865942.27, 1113194.90 2273030.92, 3339584.72 1118889.97))\"]\n| MV_EXPAND wkt\n| EVAL geom = TO_CARTESIANSHAPE(wkt)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toDatetimeFunction.markdown": "### TO_DATETIME\nConvertit une valeur d'entrée en une valeur de date.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type chaîne ou numérique.\n\nUne chaîne ne sera convertie efficacement que si elle respecte le format `yyyy-MM-dd'T'HH:mm:ss.SSS'Z'`. Par exemple :\n\n````\nROW string = [\"1953-09-02T00:00:00.000Z\", \"1964-06-02T00:00:00.000Z\", \"1964-06-02 00:00:00\"]\n| EVAL datetime = TO_DATETIME(string)\n````\n\nRenvoi :\n\n````\n[\"1953-09-02T00:00:00.000Z\", \"1964-06-02T00:00:00.000Z\", \"1964-06-02 00:00:00\"] | [1953-09-02T00:00:00.000Z, 1964-06-02T00:00:00.000Z]\n````\n\nNotez que, dans cet exemple, la dernière valeur du champ source multivalué n'a pas été convertie. En effet, si le format de la date n'est pas respecté, la conversion aboutira à une valeur **null**.\n\nSi le paramètre d'entrée est de type numérique, sa valeur sera interprétée en millisecondes depuis l'heure Unix. Par exemple :\n\n````\nROW int = [0, 1]\n| EVAL dt = TO_DATETIME(int)\n````\n\nRenvoi :\n\n````\n[0, 1] | [1970-01-01T00:00:00.000Z, 1970-01-01T00:00:00.001Z]\n````\n\nAlias : TO_DT\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toDegreesFunction.markdown": "### TO_DEGREES\nConvertit un nombre en radians en degrés.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type numérique et le résultat est toujours `double`.\n\n````\nROW rad = [1.57, 3.14, 4.71]\n| EVAL deg = TO_DEGREES(rad)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toDoubleFunction.markdown": "### TO_DOUBLE\nConvertit une valeur d'entrée en une valeur double.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type booléen, date, chaîne ou numérique.\n\nExemple :\n\n````\nROW str1 = \"5.20128E11\", str2 = \"foo\"\n| EVAL dbl = TO_DOUBLE(\"520128000000\"), dbl1 = TO_DOUBLE(str1), dbl2 = TO_DOUBLE(str2)\n````\n\nRenvoi :\n\n````\n5.20128E11 | foo | 5.20128E11 | 5.20128E11 | null\n````\n\nNotez que, dans cet exemple, la dernière conversion de la chaîne n'est pas possible. Dans ce cas, le résultat est une valeur **null**.\n\nSi le paramètre d'entrée est de type date, sa valeur sera interprétée en millisecondes depuis l'heure Unix, convertie en double.\n\nLe booléen **true** sera converti en double **1.0**, et **false** en **0.0**.\n\nAlias : TO_DBL\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toGeopointFunction.markdown": "### TO_GEOPOINT\nConvertit une valeur d'entrée en une valeur `geo_point`.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être une chaîne ou un `geo_point`.\n\nUne chaîne ne sera convertie avec succès que si elle respecte le format [WKT Point](https://en.wikipedia.org/wiki/Well-known_text_representation_of_geometry) :\n\n````\nROW wkt = \"POINT(42.97109630194 14.7552534413725)\"\n| EVAL pt = TO_GEOPOINT(wkt)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toGeoshapeFunction.markdown": "### TO_GEOSHAPE\nConvertit une valeur d'entrée en une valeur `geo_shape`.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être une chaîne ou un `geo_shape`.\n\nUne chaîne ne sera convertie avec succès que si elle respecte le [format WKT](https://en.wikipedia.org/wiki/Well-known_text_representation_of_geometry).\n\nPar exemple :\n\n````\nROW wkt = \"POLYGON ((30 10, 40 40, 20 40, 10 20, 30 10))\"\n| EVAL geom = TO_GEOSHAPE(wkt)\n````\n\nRenvoi :\n\n````\nPOLYGON ((30 10, 40 40, 20 40, 10 20, 30 10)) | POLYGON ((30 10, 40 40, 20 40, 10 20, 30 10))\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toIntegerFunction.markdown": "### TO_INTEGER\nConvertit une valeur d'entrée en une valeur entière.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type booléen, date, chaîne ou numérique.\n\nExemple :\n\n````\nROW long = [5013792, 2147483647, 501379200000]\n| EVAL int = TO_INTEGER(long)\n````\n\nRenvoi :\n\n````\n[5013792, 2147483647, 501379200000] | [5013792, 2147483647]\n````\n\nNotez que, dans cet exemple, la dernière valeur du champ multivalué ne peut pas être convertie en un nombre entier. Dans ce cas, le résultat est une valeur **null**.\n\nSi le paramètre d'entrée est de type date, sa valeur sera interprétée en millisecondes depuis l'heure Unix, convertie en nombre entier.\n\nLe booléen **true** sera converti en entier **1**, et **false** en **0**.\n\nAlias : TO_INT\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toIpFunction.markdown": "### TO_IP\nConvertit une chaîne d'entrée en valeur IP.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression.\n\nExemple :\n\n````\nROW str1 = \"1.1.1.1\", str2 = \"foo\"\n| EVAL ip1 = TO_IP(str1), ip2 = TO_IP(str2)\n| WHERE CIDR_MATCH(ip1, \"1.0.0.0/8\")\n````\n\nRenvoi :\n\n````\n1.1.1.1 | foo | 1.1.1.1 | null\n````\n\nNotez que, dans l'exemple ci-dessus, la dernière conversion de la chaîne n'est pas possible. Dans ce cas, le résultat est une valeur **null**.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toLongFunction.markdown": "### TO_LONG\nConvertit une valeur d'entrée en une valeur longue.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type booléen, date, chaîne ou numérique.\n\nExemple :\n\n````\nROW str1 = \"2147483648\", str2 = \"2147483648.2\", str3 = \"foo\"\n| EVAL long1 = TO_LONG(str1), long2 = TO_LONG(str2), long3 = TO_LONG(str3)\n````\n\nRenvoi :\n\n````\n2147483648 | 2147483648.2 | foo | 2147483648 | 2147483648 | null\n````\n\nNotez que, dans cet exemple, la dernière conversion de la chaîne n'est pas possible. Dans ce cas, le résultat est une valeur **null**. \n\nSi le paramètre d'entrée est de type date, sa valeur sera interprétée en millisecondes depuis l'heure Unix, convertie en nombre entier.\n\nLe booléen `true` sera converti en valeur longue `1`, et `false` en `0`.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toLowerFunction.markdown": "### TO_LOWER\nRenvoie une nouvelle chaîne représentant la chaîne d'entrée convertie en minuscules.\nPar exemple :\n \n````\nROW message = \"Some Text\" \n| EVAL message_lower = TO_LOWER(message)\n````\n\nRenvoi :\n\n````\nSome Text | some text\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toRadiansFunction.markdown": "### TO_RADIANS\nConvertit un nombre en degrés en radians.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type numérique et le résultat est toujours `double`.\n\n````\nROW deg = [90.0, 180.0, 270.0]\n| EVAL rad = TO_RADIANS(deg)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toStringFunction.markdown": "### TO_STRING\nConvertit un champ en une chaîne. Par exemple :\n\n````\nROW a=10\n| EVAL j = TO_STRING(a)\n````\n\nCela fonctionne également pour les champs multivalués :\n\n````\nROW a=[10, 9, 8]\n| EVAL j = TO_STRING(a)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toUnsignedLongFunction.markdown": "### TO_UNSIGNED_LONG\nConvertit une valeur d'entrée en une valeur longue non signée.\n\nL'entrée peut être un champ à une ou plusieurs valeurs, ou une expression. Le type d'entrée doit être de type booléen, date, chaîne ou numérique.\n\n````\nROW str1 = \"2147483648\", str2 = \"2147483648.2\", str3 = \"foo\"\n| EVAL long1 = TO_UNSIGNED_LONG(str1), long2 = TO_ULONG(str2), long3 = TO_UL(str3)\n````\n\nNotez que, dans cet exemple, la dernière conversion de la chaîne n'est pas possible. Dans ce cas, le résultat est une valeur **null**. La réponse est accompagnée d'un champ d'avertissement. L’en-tête indiquera l'origine de l'échec :\n\n````\n\"Line 1:133: evaluation of [TO_UL(str3)] failed, treating result as null. Only first 20 failures recorded.\"\n````\n\nUn autre en-tête indiquera la raison de l'échec et la valeur incriminée :\n\n````\n\"java.lang.NumberFormatException: Character f is neither a decimal digit number, decimal point, nor \"e\" notation exponential mark.\"\n````\n\nSi le paramètre d'entrée est de type date, sa valeur sera interprétée en millisecondes depuis l'heure Unix, convertie en valeur longue non signée.\n\nLe booléen `true` sera converti en valeur longue non signée `1`, et `false` en `0`.\n\nAlias : TO_ULONG, TO_UL\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toUpperFunction.markdown": "### TO_UPPER\nRenvoie une nouvelle chaîne représentant la chaîne d'entrée convertie en majuscules.\n\nPar exemple :\n\n````\nROW message = \"Some Text\" \n| EVAL message_upper = TO_UPPER(message)\n````\n\nRenvoi :\n\n````\nSome Text | SOME TEXT\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toVersionFunction.markdown": "### TO_VERSION\nConvertit une chaîne d'entrée en une valeur de version. Par exemple :\n\n````\nROW v = TO_VERSION(\"1.2.3\")\n````\n\nRenvoi :\n\n````\n1.2.3\n````\n\nAlias : TO_VER\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.trimFunction.markdown": "### TRIM\nSupprime les espaces de début et de fin d'une chaîne.\n\n````\nROW message = \" some text \", color = \" red \"\n| EVAL message = TRIM(message)\n| EVAL color = TRIM(color)\n````\n ", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.where.markdown": "### WHERE\nUtilisez `WHERE` afin d'obtenir un tableau qui comprend toutes les lignes du tableau d'entrée pour lesquelles la condition fournie est évaluée à `true` :\n \n````\nFROM employees\n| KEEP first_name, last_name, still_hired\n| WHERE still_hired == true\n````\n\n#### Opérateurs\n\nPour obtenir un aperçu des opérateurs pris en charge, consultez la section **Opérateurs**.\n\n#### Fonctions\n`WHERE` prend en charge diverses fonctions de calcul des valeurs. Pour en savoir plus, consultez la section **Fonctions**.\n ", + "textBasedEditor.query.textBasedLanguagesEditor.aborted": "La demande a été annulée", "textBasedEditor.query.textBasedLanguagesEditor.aggregationFunctions": "Fonctions d'agrégation", "textBasedEditor.query.textBasedLanguagesEditor.aggregationFunctionsDocumentationESQLDescription": "Ces fonctions peuvent être utilisées avec STATS...BY :", + "textBasedEditor.query.textBasedLanguagesEditor.cancel": "Annuler", "textBasedEditor.query.textBasedLanguagesEditor.commandsDescription": "Une commande source produit un tableau, habituellement avec des données issues d'Elasticsearch. ES|QL est compatible avec les commandes sources suivantes.", - "textBasedEditor.query.textBasedLanguagesEditor.disableWordWrapLabel": "Désactiver l'encadrement par des barres", + "textBasedEditor.query.textBasedLanguagesEditor.disableWordWrapLabel": "Supprimer les sauts de ligne des barres verticales", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.absFunction": "ABS", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.acosFunction": "ACOS", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.asinFunction": "ASIN", @@ -5578,6 +6498,7 @@ "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.coshFunction": "COSH", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.countDistinctFunction": "COUNT_DISTINCT", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.countFunction": "COUNT", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateDiffFunction": "DATE_DIFF", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateExtractFunction": "DATE_EXTRACT", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateFormatFunction": "DATE_FORMAT", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dateParseFunction": "DATE_PARSE", @@ -5585,6 +6506,7 @@ "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dissect": "DISSECT", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.drop": "DROP", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.eFunction": "E", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.endsWithFunction": "ENDS_WITH", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.enrich": "ENRICH", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.eval": "EVAL", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.floorFunction": "FLOOR", @@ -5608,6 +6530,8 @@ "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvCountFunction": "MV_COUNT", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvDedupeFunction": "MV_DEDUPE", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvExpand": "MV_EXPAND", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvFirstFunction": "MV_FIRST", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvLastFunction": "MV_LAST", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvMaxFunction": "MV_MAX", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvMedianFunction": "MV_MEDIAN", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mvMinFunction": "MV_MIN", @@ -5630,6 +6554,7 @@ "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.sqrtFunction": "SQRT", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.startsWithFunction": "STARTS_WITH", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.statsby": "STATS ... BY", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.stCentroidFunction": "ST_CENTROID", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.stringOperators": "LIKE et RLIKE", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.substringFunction": "SUBSTRING", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.sumFunction": "SUM", @@ -5637,23 +6562,30 @@ "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.tanhFunction": "TANH", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.tauFunction": "TAU", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toBooleanFunction": "TO_BOOLEAN", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toCartesianpointFunction": "TO_CARTESIANPOINT", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toCartesianShapeFunction": "TO_CARTESIANSHAPE", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toDatetimeFunction": "TO_DATETIME", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toDegreesFunction": "TO_DEGREES", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toDoubleFunction": "TO_DOUBLE", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toGeopointFunction": "TO_GEOPOINT", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toGeoshapeFunction": "TO_GEOSHAPE", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toIntegerFunction": "TO_INTEGER", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toIpFunction": "TO_IP", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toLongFunction": "TO_LONG", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toLowerFunction": "TO_LOWER", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toRadiansFunction": "TO_RADIANS", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toStringFunction": "TO_STRING", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toUnsignedLongFunction": "TO_UNSIGNED_LONG", + "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toUpperFunction": "TO_UPPER", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.toVersionFunction": "TO_VERSION", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.trimFunction": "TRIM", "textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.where": "WHERE", "textBasedEditor.query.textBasedLanguagesEditor.documentationLabel": "Documentation", - "textBasedEditor.query.textBasedLanguagesEditor.EnableWordWrapLabel": "Intégrés avec des canaux", + "textBasedEditor.query.textBasedLanguagesEditor.EnableWordWrapLabel": "Ajouter des sauts de ligne aux barres verticales", "textBasedEditor.query.textBasedLanguagesEditor.errorsTitle": "Erreurs", "textBasedEditor.query.textBasedLanguagesEditor.esql": "ES|QL", "textBasedEditor.query.textBasedLanguagesEditor.expandTooltip": "Développer l’éditeur de requête", + "textBasedEditor.query.textBasedLanguagesEditor.feedback": "Commentaires", "textBasedEditor.query.textBasedLanguagesEditor.functions": "Fonctions", "textBasedEditor.query.textBasedLanguagesEditor.functionsDocumentationESQLDescription": "Les fonctions sont compatibles avec \"ROW\" (Ligne), \"EVAL\" (Évaluation) et \"WHERE\" (Où).", "textBasedEditor.query.textBasedLanguagesEditor.MinimizeEditor": "Réduire l'éditeur", @@ -5662,39 +6594,41 @@ "textBasedEditor.query.textBasedLanguagesEditor.operatorsDocumentationESQLDescription": "ES|QL est compatible avec les opérateurs suivants :", "textBasedEditor.query.textBasedLanguagesEditor.processingCommands": "Traitement des commandes", "textBasedEditor.query.textBasedLanguagesEditor.processingCommandsDescription": "Le traitement des commandes transforme un tableau des entrées par l'ajout, le retrait ou la modification des lignes et des colonnes. ES|QL est compatible avec le traitement des commandes suivant.", + "textBasedEditor.query.textBasedLanguagesEditor.run": "Exécuter", "textBasedEditor.query.textBasedLanguagesEditor.runQuery": "Exécuter la requête", "textBasedEditor.query.textBasedLanguagesEditor.sourceCommands": "Commandes sources", - "textBasedEditor.query.textBasedLanguagesEditor.timestampDetected": "@timestamp détecté", - "textBasedEditor.query.textBasedLanguagesEditor.timestampNotDetected": "@timestamp non détecté", + "textBasedEditor.query.textBasedLanguagesEditor.submitFeedback": "Soumettre un commentaire", + "textBasedEditor.query.textBasedLanguagesEditor.timestampDetected": "@timestamp trouvé", + "textBasedEditor.query.textBasedLanguagesEditor.timestampNotDetected": "@timestamp non trouvé", "textBasedEditor.query.textBasedLanguagesEditor.warningsTitle": "Avertissements", - "timelion.help.functions.aggregate.args.functionHelpText": "L'une des {functions}", + "timelion.help.functions.aggregate.args.functionHelpText": "L'une des options suivantes : {functions}.", "timelion.help.functions.aggregateHelpText": "Crée une ligne statique sur la base du résultat du traitement de tous les points de la série. Fonctions disponibles : {functions}", "timelion.help.functions.common.args.fitHelpText": "Algorithme à utiliser pour adapter les séries à l'intervalle et à la période cible. Disponible : {fitFunctions}", - "timelion.help.functions.es.args.splitHelpText": "Un champ Elasticsearch avec lequel diviser la série et une limite. Par exemple, \"{hostnameSplitArg}\" pour obtenir les 10 premiers noms d'hôte", - "timelion.help.functions.fit.args.modeHelpText": "L'algorithme à utiliser pour adapter les séries à la cible. L'une des options suivantes : {fitFunctions}", + "timelion.help.functions.es.args.splitHelpText": "Un champ Elasticsearch avec lequel diviser la série et une limite. Par ex. \"{hostnameSplitArg}\" pour obtenir les 10 premiers noms d'hôte.", + "timelion.help.functions.fit.args.modeHelpText": "L'algorithme à utiliser pour adapter les séries à la cible. L'une des options suivantes : {fitFunctions}.", "timelion.help.functions.legend.args.timeFormatHelpText": "Modèle de format moment.js. Par défaut : {defaultTimeFormat}", - "timelion.help.functions.movingaverage.args.positionHelpText": "Position des points moyens par rapport à l'heure du résultat. L'une des options suivantes : {validPositions}", - "timelion.help.functions.movingstd.args.positionHelpText": "Position de la section de la fenêtre par rapport à l'heure du résultat. Les options sont {positions}. Par défaut : {defaultPosition}", + "timelion.help.functions.movingaverage.args.positionHelpText": "Position des points moyens par rapport à l'heure du résultat. L'une des options suivantes : {validPositions}.", + "timelion.help.functions.movingstd.args.positionHelpText": "Position de la section de la fenêtre par rapport à l'heure du résultat. Les options sont {positions}. Par défaut : {defaultPosition}.", "timelion.help.functions.points.args.symbolHelpText": "symbole de point. L'une des options suivantes : {validSymbols}", - "timelion.help.functions.propsHelpText": "À utiliser à vos risques et périls ; définit des propriétés arbitraires sur la série. Par exemple {example}", - "timelion.help.functions.trend.args.modeHelpText": "L'algorithme à utiliser pour générer la courbe de tendance. L'une des options suivantes : {validRegressions}", + "timelion.help.functions.propsHelpText": "À utiliser à vos risques et périls ; définit des propriétés arbitraires sur la série. Par exemple : {example}", + "timelion.help.functions.trend.args.modeHelpText": "L'algorithme à utiliser pour générer la courbe de tendance. L'une des options suivantes : {validRegressions}.", "timelion.help.functions.worldbank.args.codeHelpText": "Chemin de l'API Worldbank (Banque mondiale). Il s'agit généralement de tout ce qui suit le domaine, avant la chaîne de requête. Par exemple : {apiPathExample}.", - "timelion.help.functions.worldbankHelpText": "\n [expérimental]\n Extrayez des données de {worldbankUrl} à l'aide du chemin d'accès aux séries.\n La Banque mondiale fournit surtout des données annuelles et n'a souvent aucune donnée pour l'année en cours.\n Essayez {offsetQuery} si vous n'obtenez pas de données pour les plages temporelles récentes.", - "timelion.help.functions.worldbankIndicators.args.indicatorHelpText": "Le code d'indicateur à utiliser. Vous devrez le rechercher sur {worldbankUrl}. Souvent très complexe. Par exemple, {indicatorExample} correspond à la population", - "timelion.help.functions.worldbankIndicatorsHelpText": "\n [expérimental]\n Extrayez des données de {worldbankUrl} à l'aide du nom et de l'indicateur du pays. La Banque mondiale fournit\n surtout des données annuelles et n'a souvent aucune donnée pour l'année en cours. Essayez {offsetQuery} si vous n'obtenez pas de données pour\n les plages temporelles récentes.", - "timelion.help.functions.yaxis.args.unitsHelpText": "La fonction à utiliser pour mettre en forme les étiquettes de l'axe Y. L'une des options suivantes : {formatters}", + "timelion.help.functions.worldbankHelpText": "\n [expérimental]\n Extrayez des données de {worldbankUrl} à l'aide du chemin d’accès aux séries.\n La Banque mondiale fournit surtout des données annuelles et n'a souvent aucune donnée pour l'année en cours.\n Essayez {offsetQuery} si vous n’obtenez pas de données pour les plages temporelles récentes.", + "timelion.help.functions.worldbankIndicators.args.indicatorHelpText": "Le code d'indicateur à utiliser. Vous devrez le rechercher sur {worldbankUrl}. Souvent très complexe. Par exemple, {indicatorExample} correspond à la population.", + "timelion.help.functions.worldbankIndicatorsHelpText": "\n [expérimental]\n Extrayez des données de {worldbankUrl} à l'aide du nom et de l'indicateur du pays. La Banque mondiale fournit\n surtout des données annuelles et n'a souvent aucune donnée pour l'année en cours. Essayez {offsetQuery} si vous n’obtenez pas de données pour\n les plages temporelles récentes.", + "timelion.help.functions.yaxis.args.unitsHelpText": "La fonction à utiliser pour mettre en forme les étiquettes de l'axe Y. L'une des options suivantes : {formatters}.", "timelion.noFunctionErrorMessage": "Fonction inconnue : {name}", "timelion.serverSideErrors.argumentsOverflowErrorMessage": "Trop d'arguments transmis à : {functionName}", - "timelion.serverSideErrors.bucketsOverflowErrorMessage": "Nombre max. de compartiments dépassé : {bucketCount} sur {maxBuckets} autorisés. Sélectionnez un intervalle plus grand ou une période plus courte.", - "timelion.serverSideErrors.errorInCell": " dans la cellule n°{number} : {message}", + "timelion.serverSideErrors.bucketsOverflowErrorMessage": "Nombre max. de compartiments dépassé : {bucketCount} sur {maxBuckets} autorisés. Sélectionnez un intervalle plus grand ou une période plus courte.", + "timelion.serverSideErrors.errorInCell": " dans la cellule n{number} : {message}", "timelion.serverSideErrors.esFunction.indexNotFoundErrorMessage": "Index Elasticsearch introuvable : {index}", - "timelion.serverSideErrors.movingaverageFunction.notValidPositionErrorMessage": "Les positions valides sont les suivantes : {validPositions}", - "timelion.serverSideErrors.movingstdFunction.notValidPositionErrorMessage": "Les positions valides sont les suivantes : {validPositions}", - "timelion.serverSideErrors.pointsFunction.notValidSymbolErrorMessage": "Les symboles valides sont les suivants : {validSymbols}", - "timelion.serverSideErrors.sheetParseErrorMessage": "Attendu : {expectedDescription} au niveau du caractère {column}", + "timelion.serverSideErrors.movingaverageFunction.notValidPositionErrorMessage": "Les positions valides sont : {validPositions}.", + "timelion.serverSideErrors.movingstdFunction.notValidPositionErrorMessage": "Les positions valides sont : {validPositions}.", + "timelion.serverSideErrors.pointsFunction.notValidSymbolErrorMessage": "Les symboles valides sont : {validSymbols}.", + "timelion.serverSideErrors.sheetParseErrorMessage": "Attendu : {expectedDescription} au caractère {column}", "timelion.serverSideErrors.unknownArgumentErrorMessage": "Argument inconnu pour {functionName} : {argumentName}", "timelion.serverSideErrors.unknownArgumentTypeErrorMessage": "Type d'argument non pris en charge : {argument}", - "timelion.serverSideErrors.worldbankFunction.noDataErrorMessage": "La requête à la Banque mondiale a réussi, mais il n'y a pas de données pour {code}", + "timelion.serverSideErrors.worldbankFunction.noDataErrorMessage": "La requête à la Banque mondiale a réussi, mais il n'y a pas de données pour {code}.", "timelion.serverSideErrors.wrongFunctionArgumentTypeErrorMessage": "{functionName}({argumentName}) doit être l'une des options suivantes : {requiredTypes}. Obtenu : {actualType}", "timelion.serverSideErrors.yaxisFunction.notSupportedUnitTypeErrorMessage": "{units} n'est pas un type d'unité pris en charge.", "timelion.uiSettings.defaultIndexDescription": "Index Elasticsearch par défaut dans lequel rechercher avec {esParam}", @@ -5850,7 +6784,7 @@ "uiActionsEnhanced.drilldowns.components.flyoutDrilldownWizard.toast.drilldownCreatedTitle": "Recherche \"{drilldownName}\" créée", "uiActionsEnhanced.drilldowns.components.flyoutDrilldownWizard.toast.drilldownEditedTitle": "Recherche \"{drilldownName}\" mise à jour", "uiActionsEnhanced.drilldowns.components.flyoutDrilldownWizard.toast.drilldownsDeletedTitle": "{n} recherches supprimées", - "uiActionsEnhanced.drilldowns.containers.drilldownList.copyingNotification.body": "{count, number} {count, plural, one {exploration copiée} many {explorations copiées} other {explorations copiées}}.", + "uiActionsEnhanced.drilldowns.containers.drilldownList.copyingNotification.body": "{count, number} {count, plural, one {recherche} other {recherches}} copiée(s).", "uiActionsEnhanced.drilldowns.urlDrilldownCollectConfig.urlTemplatePlaceholderText": "Exemple : {exampleUrl}", "uiActionsEnhanced.drilldowns.urlDrilldownValidation.urlFormatErrorMessage": "Format non valide : {message}", "uiActionsEnhanced.drilldowns.urlDrilldownValidation.urlFormatGeneralErrorMessage": "Format non valide. Exemple : {exampleUrl}", @@ -5925,11 +6859,11 @@ "unifiedDataTable.grid.copyClipboardButtonTitle": "Copier la valeur de {column}", "unifiedDataTable.grid.filterForAria": "Filtrer sur cette {value}", "unifiedDataTable.grid.filterOutAria": "Exclure cette {value}", - "unifiedDataTable.gridSampleSize.lastPageDescription": "Les résultats de recherche sont limités à {rowCount} documents", - "unifiedDataTable.gridSampleSize.limitDescription": "Les résultats de recherche sont limités à {sampleSize} documents Ajoutez d'autres termes pour affiner votre recherche.", + "unifiedDataTable.gridSampleSize.lastPageDescription": "Les résultats de recherche sont limités à {rowCount} documents.", + "unifiedDataTable.gridSampleSize.limitDescription": "Les résultats de recherche sont limités à {sampleSize} documents. Ajoutez d'autres termes pour affiner votre recherche.", "unifiedDataTable.searchGenerationWithDescription": "Tableau généré par la recherche {searchTitle}", "unifiedDataTable.searchGenerationWithDescriptionGrid": "Tableau généré par la recherche {searchTitle} ({searchDescription})", - "unifiedDataTable.tableHeader.timeFieldIconTooltipAriaLabel": "{timeFieldName} – Ce champ représente l'heure à laquelle les événements se sont produits.", + "unifiedDataTable.tableHeader.timeFieldIconTooltipAriaLabel": "{timeFieldName} : ce champ représente l'heure à laquelle les événements se sont produits.", "unifiedDataTable.clearSelection": "Effacer la sélection", "unifiedDataTable.controlColumnHeader": "Colonne de commande", "unifiedDataTable.copyColumnNameToClipboard.toastTitle": "Copié dans le presse-papiers", @@ -5949,32 +6883,40 @@ "unifiedDataTable.grid.viewDoc": "Afficher/Masquer les détails de la boîte de dialogue", "unifiedDataTable.gridSampleSize.fetchMoreLinkDisabledTooltip": "Pour charger plus, l'intervalle d'actualisation doit d'abord être désactivé", "unifiedDataTable.gridSampleSize.fetchMoreLinkLabel": "Charger plus", + "unifiedDataTable.headerRowHeightLabel": "Hauteur de ligne d’en-tête", "unifiedDataTable.json.codeEditorAriaLabel": "Affichage JSON en lecture seule d’un document Elasticsearch", "unifiedDataTable.json.copyToClipboardLabel": "Copier dans le presse-papiers", "unifiedDataTable.loadingResults": "Chargement des résultats", "unifiedDataTable.noResultsFound": "Résultat introuvable", "unifiedDataTable.removeColumnLabel": "Supprimer la colonne", + "unifiedDataTable.rowHeight.auto": "Ajustement automatique", + "unifiedDataTable.rowHeight.custom": "Personnalisé", + "unifiedDataTable.rowHeight.single": "Unique", + "unifiedDataTable.rowHeightLabel": "Hauteur de ligne de cellule", + "unifiedDataTable.sampleSizeSettings.sampleSizeLabel": "Taille de l'échantillon", "unifiedDataTable.selectColumnHeader": "Sélectionner la colonne", + "unifiedDataTable.selectedRowsButtonLabel": "Sélectionné", "unifiedDataTable.showAllDocuments": "Afficher tous les documents", "unifiedDataTable.showSelectedDocumentsOnly": "Afficher uniquement les documents sélectionnés", "unifiedDataTable.tableHeader.timeFieldIconTooltip": "Ce champ représente l'heure à laquelle les événements se sont produits.", "unifiedFieldList.fieldItemButton.addFieldToWorkspaceLabel": "Ajouter un champ \"{field}\"", - "unifiedFieldList.fieldItemButton.ariaLabel": "Aperçu {fieldDisplayName} : {fieldType}", + "unifiedFieldList.fieldItemButton.ariaLabel": "Aperçu de {fieldDisplayName} : {fieldType}", "unifiedFieldList.fieldItemButton.fieldTitle": "{fieldDisplayName} ({fieldName})", - "unifiedFieldList.fieldItemButton.removeFieldToWorkspaceLabel": "Retirer le champ \"{field}\"", - "unifiedFieldList.fieldListGrouped.fieldSearchForAvailableFieldsLiveRegion": "{availableFields} {availableFields, plural, one {champ} many {champs} other {champs}} disponible(s).", - "unifiedFieldList.fieldListGrouped.fieldSearchForEmptyFieldsLiveRegion": "{emptyFields} {emptyFields, plural, one {champ} many {champs} other {champs}} vide(s).", - "unifiedFieldList.fieldListGrouped.fieldSearchForMetaFieldsLiveRegion": "{metaFields} {metaFields, plural, one {champ} many {champs} other {champs}} méta.", - "unifiedFieldList.fieldListGrouped.fieldSearchForPopularFieldsLiveRegion": "{popularFields} {popularFields, plural, one {champ} many {champs} other {champs}} populaire(s).", - "unifiedFieldList.fieldListGrouped.fieldSearchForSelectedFieldsLiveRegion": "{selectedFields} {selectedFields, plural, one {champ} many {champs} other {champs}} sélectionné(s).", - "unifiedFieldList.fieldListGrouped.fieldSearchForUnmappedFieldsLiveRegion": "{unmappedFields} {unmappedFields, plural, one {champ} many {champs} other {champs}} non mappé(s).", + "unifiedFieldList.fieldItemButton.mappingConflictWithTypesDescription": "Ce champ est défini par plusieurs types ({types}) dans les différents index qui correspondent à ce modèle. Vous pourrez peut-être utiliser ce champ conflictuels, mais il ne sera pas disponible pour les fonctions qui nécessitent que Kibana connaisse leur type. Pour corriger ce problème, vous devrez réindexer vos données.", + "unifiedFieldList.fieldItemButton.removeFieldToWorkspaceLabel": "Supprimer le champ \"{field}\"", + "unifiedFieldList.fieldListGrouped.fieldSearchForAvailableFieldsLiveRegion": "{availableFields} {availableFields, plural, one {champ disponible} other {champs disponibles}}.", + "unifiedFieldList.fieldListGrouped.fieldSearchForEmptyFieldsLiveRegion": "{emptyFields} {emptyFields, plural, one {champ vide} other {champs vides}}.", + "unifiedFieldList.fieldListGrouped.fieldSearchForMetaFieldsLiveRegion": "{metaFields} {metaFields, plural, one {champ} other {champs}} méta.", + "unifiedFieldList.fieldListGrouped.fieldSearchForPopularFieldsLiveRegion": "{popularFields} {popularFields, plural, one {Champ populaire} other {Champs populaires}}.", + "unifiedFieldList.fieldListGrouped.fieldSearchForSelectedFieldsLiveRegion": "{selectedFields} {selectedFields, plural, one {champ sélectionné} other {champs sélectionnés}}.", + "unifiedFieldList.fieldListGrouped.fieldSearchForUnmappedFieldsLiveRegion": "{unmappedFields} {unmappedFields, plural, one {Champ non mappé} other {Champs non mappés}}.", "unifiedFieldList.fieldPopover.addFieldToWorkspaceLabel": "Ajouter un champ \"{field}\"", - "unifiedFieldList.fieldStats.bucketPercentageTooltip": "{formattedPercentage} ({count, plural, one {# enregistrement} many {# enregistrements} other {# enregistrements}})", - "unifiedFieldList.fieldStats.calculatedFromSampleRecordsLabel": "Calcul effectué à partir de {sampledDocumentsFormatted} exemple(s) d'{sampledDocuments, plural, one {enregistrement} many {enregistrements} other {enregistrements}}.", - "unifiedFieldList.fieldStats.calculatedFromTotalRecordsLabel": "Calcul effectué à partir de {totalDocumentsFormatted} {totalDocuments, plural, one {enregistrement} many {enregistrements} other {enregistrements}}.", - "unifiedFieldList.fieldStats.filterOutValueButtonAriaLabel": "Exclure {field} : \"{value}\"", - "unifiedFieldList.fieldStats.filterValueButtonAriaLabel": "Filtrer sur {field} : \"{value}\"", - "unifiedFieldList.fieldStats.noFieldDataInSampleDescription": "Aucune donnée de champ pour {sampledDocumentsFormatted} exemple(s) d'{sampledDocuments, plural, one {enregistrement} many {enregistrements} other {enregistrements}}.", + "unifiedFieldList.fieldStats.bucketPercentageTooltip": "{formattedPercentage} ({count, plural, one {# enregistrement} other {# enregistrements}})", + "unifiedFieldList.fieldStats.calculatedFromSampleRecordsLabel": "Calculé à partir de {sampledDocumentsFormatted} {sampledDocuments, plural, one {exemple d'enregistrement} other {exemples d'enregistrement}}.", + "unifiedFieldList.fieldStats.calculatedFromTotalRecordsLabel": "Calculé à partir de {totalDocumentsFormatted} {totalDocuments, plural, one {enregistrement} other {enregistrements}}.", + "unifiedFieldList.fieldStats.filterOutValueButtonAriaLabel": "Exclure le {field} : \"{value}\"", + "unifiedFieldList.fieldStats.filterValueButtonAriaLabel": "Filtrer sur le {field} : \"{value}\"", + "unifiedFieldList.fieldStats.noFieldDataInSampleDescription": "Aucune donnée de champ pour {sampledDocumentsFormatted} {sampledDocuments, plural, one {exemple d'enregistrement} other {exemples d'enregistrement}}.", "unifiedFieldList.fieldCategorizeButton.label": "Exécuter l'analyse du modèle", "unifiedFieldList.fieldItemButton.mappingConflictDescription": "Ce champ est défini avec plusieurs types (chaîne, entier, etc.) dans les différents index qui correspondent à ce modèle. Vous pouvez toujours utiliser ce champ conflictuel, mais il sera indisponible pour les fonctions qui nécessitent que Kibana en connaisse le type. Pour corriger ce problème, vous devrez réindexer vos données.", "unifiedFieldList.fieldItemButton.mappingConflictTitle": "Conflit de mapping", @@ -5990,6 +6932,7 @@ "unifiedFieldList.fieldListSidebar.collapseSidebarButton": "Masquer la barre latérale", "unifiedFieldList.fieldListSidebar.expandSidebarButton": "Afficher la barre latérale", "unifiedFieldList.fieldListSidebar.fieldsMobileButtonLabel": "Champs", + "unifiedFieldList.fieldListSidebar.fieldsSidebarAriaLabel": "Champs", "unifiedFieldList.fieldListSidebar.flyoutBackIcon": "Retour", "unifiedFieldList.fieldListSidebar.flyoutHeading": "Liste des champs", "unifiedFieldList.fieldListSidebar.toggleSidebarLegend": "Activer/Désactiver la barre latérale", @@ -6019,7 +6962,7 @@ "unifiedFieldList.fieldTypeFilter.filterByTypeAriaLabel": "Filtrer par type", "unifiedFieldList.fieldTypeFilter.learnMoreText": "Découvrez", "unifiedFieldList.fieldTypeFilter.title": "Filtrer par type de champ", - "unifiedFieldList.fieldVisualizeButton.label": "Visualiser", + "unifiedFieldList.fieldVisualizeButton.label": "Visualize", "unifiedFieldList.useGroupedFields.allFieldsLabel": "Tous les champs", "unifiedFieldList.useGroupedFields.availableFieldsLabel": "Champs disponibles", "unifiedFieldList.useGroupedFields.emptyFieldsLabel": "Champs vides", @@ -6033,13 +6976,21 @@ "unifiedFieldList.useGroupedFields.selectedFieldsLabel": "Champs sélectionnés", "unifiedFieldList.useGroupedFields.unmappedFieldsLabel": "Champs non mappés", "unifiedFieldList.useGroupedFields.unmappedFieldsLabelHelp": "Champs qui ne sont pas explicitement mappés à un type de données de champ.", - "unifiedHistogram.breakdownColumnLabel": "Top 3 des valeurs de {fieldName}", - "unifiedHistogram.bucketIntervalTooltip": "Cet intervalle crée {bucketsDescription} pour un affichage dans la plage temporelle sélectionnée. Il a donc été scalé à {bucketIntervalDescription}.", + "unifiedHistogram.breakdownColumnLabel": "3 principales valeurs de {fieldName}", + "unifiedHistogram.breakdownFieldSelector.breakdownByButtonLabel": "Répartir par {fieldName}", + "unifiedHistogram.bucketIntervalTooltip": "Cet intervalle crée {bucketsDescription} pour permettre l’affichage dans la plage temporelle sélectionnée, il a donc été redimensionné vers {bucketIntervalDescription}.", "unifiedHistogram.histogramTimeRangeIntervalDescription": "(intervalle : {value})", + "unifiedHistogram.timeIntervalSelector.buttonLabel": "Intervalle : {timeInterval}", + "unifiedHistogram.toolbarSelectorPopover.noResults": "Résultats introuvables pour {term}", + "unifiedHistogram.breakdownFieldSelector.breakdownFieldPopoverTitle": "Sélectionner le champ de répartition", + "unifiedHistogram.breakdownFieldSelector.noBreakdownButtonLabel": "Pas de répartition", "unifiedHistogram.bucketIntervalTooltip.tooLargeBucketsText": "des compartiments trop volumineux", "unifiedHistogram.bucketIntervalTooltip.tooManyBucketsText": "un trop grand nombre de compartiments", + "unifiedHistogram.chartActionsGroupLegend": "Actions du graphique", "unifiedHistogram.countColumnLabel": "Nombre d'enregistrements", "unifiedHistogram.editVisualizationButton": "Modifier la visualisation", + "unifiedHistogram.hideChartButton": "Masquer le graphique", + "unifiedHistogram.hideChartButtongroupLegend": "Visibilité du graphique", "unifiedHistogram.histogramOfFoundDocumentsAriaLabel": "Histogramme des documents détectés", "unifiedHistogram.histogramTimeRangeIntervalAuto": "Auto", "unifiedHistogram.histogramTimeRangeIntervalLoading": "Chargement", @@ -6047,32 +6998,41 @@ "unifiedHistogram.inspectorRequestDescriptionTotalHits": "Cette requête interroge Elasticsearch afin de récupérer le nombre total de résultats.", "unifiedHistogram.lensTitle": "Modifier la visualisation", "unifiedHistogram.saveVisualizationButton": "Enregistrer la visualisation", + "unifiedHistogram.showChartButton": "Afficher le graphique", "unifiedHistogram.suggestionSelectorPlaceholder": "Sélectionner la visualisation", + "unifiedHistogram.timeIntervalSelector.autoIntervalButtonLabel": "Intervalle automatique", + "unifiedHistogram.timeIntervalSelector.timeIntervalPopoverTitle": "Sélectionner un intervalle de temps", "unifiedHistogram.timeIntervalWithValueWarning": "Avertissement", - "unifiedSearch.filter.filterBar.filterActionsMessage": "Filtrer : {innerText}. Sélectionner pour plus d’actions de filtrage.", + "unifiedHistogram.toolbarSelectorPopover.searchPlaceholder": "Recherche", + "unifiedSearch.filter.filterBar.filterActionsMessage": "Filtre : {innerText}. Sélectionner pour plus d’actions de filtrage.", "unifiedSearch.filter.filterBar.filterItemBadgeIconAriaLabel": "Supprimer {filter}", - "unifiedSearch.filter.filterBar.filterString": "Filtrer : {innerText}.", - "unifiedSearch.filter.filterBar.labelWarningInfo": "Le champ {fieldName} n'existe pas dans la vue en cours", - "unifiedSearch.filter.filterBar.preview": "{icon} Aperçu", + "unifiedSearch.filter.filterBar.filterString": "Filtre : {innerText}.", + "unifiedSearch.filter.filterBar.labelWarningInfo": "Le champ {fieldName} n'existe pas dans la vue en cours.", + "unifiedSearch.filter.filterBar.preview": "Aperçu {icon}", "unifiedSearch.filter.filtersBuilder.delimiterLabel": "{booleanRelation}", - "unifiedSearch.kueryAutocomplete.andOperatorDescription": "Nécessite que {bothArguments} soient définis sur \"true\"", + "unifiedSearch.kueryAutocomplete.andOperatorDescription": "Nécessite que {bothArguments} soient ''vrai''.", "unifiedSearch.kueryAutocomplete.equalOperatorDescription": "{equals} une certaine valeur", - "unifiedSearch.kueryAutocomplete.existOperatorDescription": "{exists} sous une certaine forme", + "unifiedSearch.kueryAutocomplete.existOperatorDescription": "{exists} sous un certain format", "unifiedSearch.kueryAutocomplete.greaterThanOperatorDescription": "est {greaterThan} une certaine valeur", "unifiedSearch.kueryAutocomplete.greaterThanOrEqualOperatorDescription": "est {greaterThanOrEqualTo} une certaine valeur", "unifiedSearch.kueryAutocomplete.lessThanOperatorDescription": "est {lessThan} une certaine valeur", "unifiedSearch.kueryAutocomplete.lessThanOrEqualOperatorDescription": "est {lessThanOrEqualTo} une certaine valeur", - "unifiedSearch.kueryAutocomplete.orOperatorDescription": "Nécessite que {oneOrMoreArguments} soient définis sur \"true\"", + "unifiedSearch.kueryAutocomplete.orOperatorDescription": "Nécessite qu’{oneOrMoreArguments} soit ''vrai''.", "unifiedSearch.query.queryBar.comboboxAriaLabel": "Rechercher et filtrer la page {pageType}", - "unifiedSearch.query.queryBar.indexPattern.createForMatchingIndices": "Explorer {indicesLength, plural, one {# index correspondant} many {# index correspondants} other {# index correspondants}}", + "unifiedSearch.query.queryBar.indexPattern.createForMatchingIndices": "Explorer {indicesLength, plural,\n one {# index correspondant}\n other {# index correspondants}}", "unifiedSearch.query.queryBar.indexPattern.textBasedLangSwitchWarning": "Modifier la vue de données supprime la requête {textBasedLanguage} en cours. Sauvegardez cette recherche pour ne pas perdre de travail.", "unifiedSearch.query.queryBar.indexPattern.textBasedLanguagesTransitionModalBody": "Modifier la vue de données supprime la requête {language} en cours. Sauvegardez cette recherche pour ne pas perdre de travail.", - "unifiedSearch.query.queryBar.KQLNestedQuerySyntaxInfoText": "Il semblerait que votre requête porte sur un champ imbriqué. Selon le résultat visé, il existe plusieurs façons de construire une syntaxe KQL pour des requêtes imbriquées. Apprenez-en plus dans notre {link}.", - "unifiedSearch.query.queryBar.searchInputAriaLabel": "Commencer à taper pour rechercher et filtrer la page {pageType}", + "unifiedSearch.query.queryBar.KQLNestedQuerySyntaxInfoText": "Il semblerait que votre requête porte sur un champ imbriqué. Selon le résultat visé, il existe plusieurs façons de construire une syntaxe KQL pour des requêtes imbriquées. Apprenez-en plus avec notre {link}.", + "unifiedSearch.query.queryBar.searchInputAriaLabel": "Commencer à taper pour rechercher et filtrer la page {pageType}", "unifiedSearch.query.queryBar.searchInputPlaceholder": "Filtrer vos données à l'aide de la syntaxe {language}", - "unifiedSearch.query.queryBar.textBasedNonTimestampWarning": "La sélection de plage de données pour les requêtes en {language} requiert la présence d’un champ @timestamp dans l’ensemble de données.", + "unifiedSearch.query.queryBar.textBasedNonTimestampWarning": "La sélection de plage de données pour les requêtes en {language} requiert la présence d'un champ @timestamp dans l'ensemble de données.", + "unifiedSearch.search.searchBar.deleteQueryErrorMessage": "Une erreur s'est produite lors de la suppression de la requête \"{queryTitle}\" : {errorMessage}", + "unifiedSearch.search.searchBar.deleteQuerySuccessMessage": "La requête \"{queryTitle}\" a été supprimée", "unifiedSearch.search.searchBar.savedQueryPopoverConfirmDeletionTitle": "Supprimer \"{savedQueryName}\" ?", "unifiedSearch.search.searchBar.savedQueryPopoverSaveChangesButtonAriaLabel": "Enregistrer les modifications apportées à {title}", + "unifiedSearch.search.searchBar.savedQueryTotalQueryCount": "{totalQueryCount, plural, one {# requête} other {# requêtes}}", + "unifiedSearch.search.searchBar.saveQueryErrorMessage": "Une erreur s'est produite lors de l'enregistrement de votre requête : {errorMessage}", + "unifiedSearch.search.searchBar.saveQuerySuccessMessage": "Votre requête \"{queryTitle}\" a été enregistrée", "unifiedSearch.search.unableToGetSavedQueryToastTitle": "Impossible de charger la requête {savedQueryId}", "unifiedSearch.filter.applyFilterActionTitle": "Appliquer le filtre à la vue en cours", "unifiedSearch.filter.applyFilters.popupHeader": "Sélectionner les filtres à appliquer", @@ -6113,12 +7073,14 @@ "unifiedSearch.filter.filterEditor.existsOperatorOptionLabel": "existe", "unifiedSearch.filter.filterEditor.experimentalLabel": "Version d'évaluation technique", "unifiedSearch.filter.filterEditor.falseOptionLabel": "faux", + "unifiedSearch.filter.filterEditor.greaterThanOrEqualOptionLabel": "supérieur ou égal", "unifiedSearch.filter.filterEditor.isBetweenOperatorOptionLabel": "est entre", "unifiedSearch.filter.filterEditor.isNotBetweenOperatorOptionLabel": "n'est pas entre", "unifiedSearch.filter.filterEditor.isNotOneOfOperatorOptionLabel": "n'est pas l'une des options suivantes", "unifiedSearch.filter.filterEditor.isNotOperatorOptionLabel": "n'est pas", "unifiedSearch.filter.filterEditor.isOneOfOperatorOptionLabel": "est l'une des options suivantes", "unifiedSearch.filter.filterEditor.isOperatorOptionLabel": "est", + "unifiedSearch.filter.filterEditor.lessThanOrEqualOptionLabel": "inférieur à", "unifiedSearch.filter.filterEditor.queryDslAriaLabel": "Éditeur Query DSL d'Elasticsearch", "unifiedSearch.filter.filterEditor.queryDslDocsLinkLabel": "En savoir plus sur la syntaxe Query DSL", "unifiedSearch.filter.filterEditor.queryDslLabel": "Query DSL d'Elasticsearch", @@ -6155,6 +7117,7 @@ "unifiedSearch.filter.options.loadCurrentFilterSetLabel": "Charger la requête", "unifiedSearch.filter.options.loadOtherFilterSetLabel": "Charger la requête", "unifiedSearch.filter.options.pinAllFiltersButtonLabel": "Tout épingler", + "unifiedSearch.filter.options.quickFiltersLabel": "Filtres rapides", "unifiedSearch.filter.options.saveAsNewFilterSetLabel": "Enregistrer la requête", "unifiedSearch.filter.options.saveCurrentFilterSetLabel": "Enregistrer en tant que nouvelle", "unifiedSearch.filter.options.saveFilterSetLabel": "Enregistrer la requête", @@ -6196,28 +7159,45 @@ "unifiedSearch.query.queryBar.textBasedLanguagesTechPreviewLabel": "Version d'évaluation technique", "unifiedSearch.query.queryBar.textBasedLanguagesTryLabel": "Essayer ES|QL", "unifiedSearch.queryBarTopRow.datePicker.disabledLabel": "Tout le temps", + "unifiedSearch.queryBarTopRow.submitButton.cancel": "Annuler", "unifiedSearch.queryBarTopRow.submitButton.refresh": "Actualiser la requête", "unifiedSearch.queryBarTopRow.submitButton.run": "Exécuter la requête", "unifiedSearch.queryBarTopRow.submitButton.update": "Nécessite une mise à jour", + "unifiedSearch.search.searchBar.savedQueryActiveBadgeText": "Actif", + "unifiedSearch.search.searchBar.savedQueryDelete": "Supprimer la recherche", "unifiedSearch.search.searchBar.savedQueryDescriptionText": "Enregistrez le texte et les filtres de la requête que vous souhaitez réutiliser.", + "unifiedSearch.search.searchBar.savedQueryForm.titleConflictText": "Ce nom est en conflit avec une requête existante.", "unifiedSearch.search.searchBar.savedQueryForm.titleExistsText": "Un nom est requis.", "unifiedSearch.search.searchBar.savedQueryFormSaveButtonText": "Enregistrer la requête", "unifiedSearch.search.searchBar.savedQueryIncludeFiltersLabelText": "Inclure les filtres", "unifiedSearch.search.searchBar.savedQueryIncludeTimeFilterLabelText": "Inclure le filtre temporel", + "unifiedSearch.search.searchBar.savedQueryListAriaLabel": "Liste des requêtes", + "unifiedSearch.search.searchBar.savedQueryLoadingQueriesText": "Chargement des requêtes", + "unifiedSearch.search.searchBar.savedQueryMonthLabel": "Ce mois", "unifiedSearch.search.searchBar.savedQueryMultipleNamespacesDeleteWarning": "Cette requête enregistrée est partagée sur plusieurs espaces. Si vous la supprimez, elle disparaît de tous les espaces où elle est partagée. Vous ne pouvez pas annuler cette action.", "unifiedSearch.search.searchBar.savedQueryNameLabelText": "Nom", "unifiedSearch.search.searchBar.savedQueryNoSavedQueriesText": "Aucune requête enregistrée.", "unifiedSearch.search.searchBar.savedQueryPopoverApplyFilterSetLabel": "Charger la requête", "unifiedSearch.search.searchBar.savedQueryPopoverConfirmDeletionCancelButtonText": "Annuler", "unifiedSearch.search.searchBar.savedQueryPopoverConfirmDeletionConfirmButtonText": "Supprimer", + "unifiedSearch.search.searchBar.savedQueryPopoverManageLabel": "Gérer les requêtes", "unifiedSearch.search.searchBar.savedQueryPopoverSaveAsNewButtonAriaLabel": "Enregistrer en tant que nouvelle requête", "unifiedSearch.search.searchBar.savedQueryPopoverSaveAsNewButtonText": "Enregistrer en tant que nouvelle", "unifiedSearch.search.searchBar.savedQueryPopoverSaveChangesButtonText": "Mettre à jour la recherche", + "unifiedSearch.search.searchBar.savedQuerySelectedQueryCount": "1 sélectionnée", + "unifiedSearch.search.searchBar.savedQuerySelectionRequired": "Vous devez d'abord sélectionner une requête", + "unifiedSearch.search.searchBar.savedQueryTodayLabel": "Aujourd'hui", + "unifiedSearch.search.searchBar.savedQueryWeekLabel": "Cette semaine", + "unifiedSearch.search.searchBar.savedQueryYearLabel": "Cette année", + "unifiedSearch.searchBar.savedQueryMonthToDateLabel": "Mensuel à ce jour", + "unifiedSearch.searchBar.savedQueryWeekToDateLabel": "Hebdomadaire à ce jour", + "unifiedSearch.searchBar.savedQueryYearToDateLabel": "Annuel à ce jour", + "unifiedSearch.searchBar.savedQueryYesterdayLabel": "Hier", "unifiedSearch.switchLanguage.buttonText": "Bouton de changement de langue.", "unifiedSearch.triggers.updateFilterReferencesTrigger": "Mettre à jour les références de filtre", "unifiedSearch.triggers.updateFilterReferencesTriggerDescription": "Mettre à jour les références de filtre", - "userProfileComponents.userProfilesSelectable.limitReachedMessage": "Vous avez sélectionné la limite maximale de {count, plural, one {# utilisateur} many {# utilisateurs} other {# utilisateurs}}", - "userProfileComponents.userProfilesSelectable.selectedStatusMessage": "{count, plural, one {# utilisateur sélectionné} many {# utilisateurs sélectionnés} other {# utilisateurs sélectionnés}}", + "userProfileComponents.userProfilesSelectable.limitReachedMessage": "Vous avez sélectionné la limite maximale de {count, plural, one {# utilisateur} other {# utilisateurs}}", + "userProfileComponents.userProfilesSelectable.selectedStatusMessage": "{count, plural, one {# utilisateur sélectionné} other {# utilisateurs sélectionnés}}", "userProfileComponents.updateUserProfile.notification.requiresPageReloadButtonLabel": "Actualiser la page", "userProfileComponents.updateUserProfile.notification.requiresPageReloadDescription": "Un ou plusieurs paramètres nécessitent d’actualiser la page pour pouvoir prendre effet.", "userProfileComponents.updateUserProfile.notification.submitSuccessTitle": "Profil mis à jour", @@ -6225,41 +7205,41 @@ "userProfileComponents.userProfilesSelectable.defaultOptionsLabel": "Suggérée", "userProfileComponents.userProfilesSelectable.nullOptionLabel": "Aucun utilisateur", "userProfileComponents.userProfilesSelectable.searchPlaceholder": "Recherche", - "visDefaultEditor.agg.disableAggButtonTooltip": "Désactiver l'agrégation {schemaTitle} {aggTitle}", - "visDefaultEditor.agg.enableAggButtonTooltip": "Activer l'agrégation {schemaTitle} {aggTitle}", - "visDefaultEditor.agg.errorsAriaLabel": "L'agrégation {schemaTitle} {aggTitle} comporte des erreurs", - "visDefaultEditor.agg.modifyPriorityButtonTooltip": "Modifier la priorité de {schemaTitle} {aggTitle} par glisser-déposer", - "visDefaultEditor.agg.removeDimensionButtonTooltip": "Retirer l'agrégation {schemaTitle} {aggTitle}", + "visDefaultEditor.agg.disableAggButtonTooltip": "Désactiver l'agrégation {aggTitle} de {schemaTitle}", + "visDefaultEditor.agg.enableAggButtonTooltip": "Activer l'agrégation {aggTitle} de {schemaTitle}", + "visDefaultEditor.agg.errorsAriaLabel": "L'agrégation {aggTitle} de {schemaTitle} présente des erreurs.", + "visDefaultEditor.agg.modifyPriorityButtonTooltip": "Modifier la priorité de l'agrégation {aggTitle} de {schemaTitle} en la faisant glisser", + "visDefaultEditor.agg.removeDimensionButtonTooltip": "Supprimer l'agrégation {aggTitle} de {schemaTitle}", "visDefaultEditor.agg.toggleEditorButtonAriaLabel": "Activer/Désactiver l'éditeur {schema}", "visDefaultEditor.aggAdd.addGroupButtonLabel": "Ajouter {groupNameLabel}", - "visDefaultEditor.aggAdd.addSubGroupButtonLabel": "Ajouter un sous-{groupNameLabel}", + "visDefaultEditor.aggAdd.addSubGroupButtonLabel": "Ajouter sous-{groupNameLabel}", "visDefaultEditor.aggAdd.maxBuckets": "Nombre maximal de {groupNameLabel} atteint", - "visDefaultEditor.aggParams.errors.aggWrongRunOrderErrorMessage": "Les agrégations \"{schema}\" doivent s'exécuter avant tous les autres compartiments !", - "visDefaultEditor.aggSelect.helpLinkLabel": "Aide de {aggTitle}", - "visDefaultEditor.aggSelect.noCompatibleAggsDescription": "Le modèle d'indexation {indexPatternTitle} ne comporte pas de champs regroupables.", + "visDefaultEditor.aggParams.errors.aggWrongRunOrderErrorMessage": "Les agrégations \"{schema}\" doivent s'exécuter avant tous les autres compartiments.", + "visDefaultEditor.aggSelect.helpLinkLabel": "Aide {aggTitle}", + "visDefaultEditor.aggSelect.noCompatibleAggsDescription": "Le modèle d'indexation {indexPatternTitle} ne possède pas de champs regroupables.", "visDefaultEditor.controls.dateRanges.removeRangeButtonAriaLabel": "Supprimer la plage allant de {from} à {to}", "visDefaultEditor.controls.definiteMetricLabel": "Indicateur : {metric}", "visDefaultEditor.controls.field.fieldIsNotExists": "Le champ \"{fieldParameter}\" associé à cet objet n'existe plus dans le modèle d'indexation. Veuillez utiliser un autre champ.", "visDefaultEditor.controls.field.invalidFieldForAggregation": "Le champ enregistré \"{fieldParameter}\" du modèle d'indexation \"{indexPatternTitle}\" n'est pas valide pour une utilisation avec cette agrégation. Veuillez sélectionner un nouveau champ.", - "visDefaultEditor.controls.field.noCompatibleFieldsDescription": "Le modèle d'indexation {indexPatternTitle} ne contient aucun des types de champ compatibles suivants : {fieldTypes}", - "visDefaultEditor.controls.filters.definiteFilterLabel": "Filtrer l'étiquette {index}", - "visDefaultEditor.controls.filters.filterLabel": "Filtrer {index}", - "visDefaultEditor.controls.ipRanges.cidrMaskAriaLabel": "Masque CIDR : {mask}", - "visDefaultEditor.controls.ipRanges.ipRangeFromAriaLabel": "Début de la plage d'IP : {value}", - "visDefaultEditor.controls.ipRanges.ipRangeToAriaLabel": "Fin de la plage d'IP : {value}", + "visDefaultEditor.controls.field.noCompatibleFieldsDescription": "Le modèle d'indexation {indexPatternTitle} ne contient aucun des types de champs compatibles suivants : {fieldTypes}.", + "visDefaultEditor.controls.filters.definiteFilterLabel": "Étiquette du filtre {index}", + "visDefaultEditor.controls.filters.filterLabel": "Filtre {index}", + "visDefaultEditor.controls.ipRanges.cidrMaskAriaLabel": "Masque CIDR : {mask}", + "visDefaultEditor.controls.ipRanges.ipRangeFromAriaLabel": "Début de la plage d’IP : {value}", + "visDefaultEditor.controls.ipRanges.ipRangeToAriaLabel": "Fin de la plage d’IP : {value}", "visDefaultEditor.controls.ipRanges.removeCidrMaskButtonAriaLabel": "Supprimer la valeur du masque CIDR de {mask}", "visDefaultEditor.controls.ipRanges.removeRangeAriaLabel": "Supprimer la plage allant de {from} à {to}", - "visDefaultEditor.controls.maxBars.maxBarsHelpText": "Les intervalles seront sélectionnés automatiquement en fonction des données disponibles. Le nombre maximal de barres ne peut jamais être supérieur à la valeur {histogramMaxBars} des paramètres avancés", - "visDefaultEditor.controls.numberInterval.minimumIntervalTooltip": "L'intervalle sera automatiquement scalé si la valeur fournie crée plus de compartiments que ce qui est spécifié par la valeur {histogramMaxBars} dans les paramètres avancés", + "visDefaultEditor.controls.maxBars.maxBarsHelpText": "Les intervalles seront sélectionnés automatiquement en fonction des données disponibles. Le nombre maximal de barres ne peut jamais être supérieur à la valeur {histogramMaxBars} des paramètres avancés.", + "visDefaultEditor.controls.numberInterval.minimumIntervalTooltip": "L'intervalle sera scalé automatiquement si la valeur fournie crée plus de compartiments que ce qui est spécifié par la valeur {histogramMaxBars} dans les paramètres avancés.", "visDefaultEditor.controls.numberList.addUnitButtonLabel": "Ajouter {unitName}", "visDefaultEditor.controls.numberList.invalidRangeErrorMessage": "La valeur doit être comprise dans la plage allant de {min} à {max}.", "visDefaultEditor.controls.numberList.removeUnitButtonAriaLabel": "Supprimer la valeur de rang de {value}", "visDefaultEditor.controls.ranges.removeRangeButtonAriaLabel": "Supprimer la plage allant de {from} à {to}", - "visDefaultEditor.controls.timeInterval.scaledHelpText": "Scalé actuellement à {bucketDescription}", - "visDefaultEditor.editorConfig.dateHistogram.customInterval.helpText": "Doit être un multiple de l'intervalle de configuration : {interval}", - "visDefaultEditor.editorConfig.histogram.interval.helpText": "Doit être un multiple de l'intervalle de configuration : {interval}", + "visDefaultEditor.controls.timeInterval.scaledHelpText": "Actuellement scalé à {bucketDescription}", + "visDefaultEditor.editorConfig.dateHistogram.customInterval.helpText": "Doit être un multiple de l'intervalle de configuration : {interval}.", + "visDefaultEditor.editorConfig.histogram.interval.helpText": "Doit être un multiple de l'intervalle de configuration : {interval}.", "visDefaultEditor.metrics.wrongLastBucketTypeErrorMessage": "La dernière agrégation de compartiments doit être \"Histogramme de date\" ou \"Histogramme\" lorsque vous utilisez l'agrégation d'indicateurs \"{type}\".", - "visDefaultEditor.options.rangeErrorMessage": "Les valeurs doivent être comprises entre {min} et {max}, inclus", + "visDefaultEditor.options.rangeErrorMessage": "Les valeurs doivent être comprises entre {min} et {max}, inclus.", "visDefaultEditor.sidebar.indexPatternAriaLabel": "Modèle d'indexation : {title}", "visDefaultEditor.sidebar.savedSearch.titleAriaLabel": "Recherche enregistrée : {title}", "visDefaultEditor.advancedToggle.advancedLinkLabel": "Avancé", @@ -6297,6 +7277,10 @@ "visDefaultEditor.controls.filters.removeFilterButtonAriaLabel": "Supprimer ce filtre", "visDefaultEditor.controls.filters.toggleFilterButtonAriaLabel": "Activer/Désactiver l'étiquette du filtre", "visDefaultEditor.controls.includeExclude.addUnitButtonLabel": "Ajouter une valeur", + "visDefaultEditor.controls.ipPrefix.errorMessageIpv4": "La longueur du préfixe doit être comprise entre 0 et 32 pour les adresses IPv4.", + "visDefaultEditor.controls.ipPrefix.errorMessageIpv6": "La longueur du préfixe doit être comprise entre 0 et 128 pour les adresses IPv6.", + "visDefaultEditor.controls.IpPrefix.isIpv6": "Le préfixe s'applique aux adresses IPv6", + "visDefaultEditor.controls.IpPrefix.prefixLength": "Longueur du préfixe", "visDefaultEditor.controls.ipRanges.addRangeButtonLabel": "Ajouter une plage", "visDefaultEditor.controls.ipRanges.cidrMasksButtonLabel": "Masques CIDR", "visDefaultEditor.controls.ipRanges.fromToButtonLabel": "De/à", @@ -6391,7 +7375,7 @@ "visTypeTable.params.percentageTableColumnName": "Pourcentages de {title}", "visTypeTable.tableCellFilter.filterForValueAriaLabel": "Filtrer sur : {cellContent}", "visTypeTable.tableCellFilter.filterOutValueAriaLabel": "Exclure : {cellContent}", - "visTypeTable.vis.controls.exportButtonAriaLabel": "Exporter {dataGridAriaLabel} au format CSV", + "visTypeTable.vis.controls.exportButtonAriaLabel": "Exporter {dataGridAriaLabel} au format CSV", "visTypeTable.defaultAriaLabel": "Visualisation du tableau de données", "visTypeTable.function.adimension.buckets": "Compartiments", "visTypeTable.function.args.bucketsHelpText": "Configuration des dimensions de compartiment", @@ -6439,26 +7423,26 @@ "visTypeTable.vis.controls.rawCSVButtonLabel": "Brut", "visTypeTimeseries.advancedSettings.allowStringIndicesText": "Vous permet d'interroger les index Elasticsearch dans les visualisations TSVB.", "visTypeTimeseries.agg.aggIsNotSupportedDescription": "L'agrégation {modelType} n'est plus prise en charge.", - "visTypeTimeseries.agg.aggIsUnsupportedForPanelConfigDescription": "L'agrégation {modelType} n'est pas prise en charge pour la configuration de panneau existante.", + "visTypeTimeseries.agg.aggIsUnsupportedForPanelConfigDescription": "l'agrégation {modelType} n’est pas compatible pour la configuration de panneau existante.", "visTypeTimeseries.annotationRequest.label": "Annotation : {id}", - "visTypeTimeseries.annotationsEditor.rowTemplateHelpText": "Par ex. {rowTemplateExample}", - "visTypeTimeseries.axisLabelOptions.axisLabel": "par {unitValue} {unitString}", + "visTypeTimeseries.annotationsEditor.rowTemplateHelpText": "eg.{rowTemplateExample}", + "visTypeTimeseries.axisLabelOptions.axisLabel": "par {unitValue} {unitString}", "visTypeTimeseries.calculateLabel.metricTypeOfMetricFieldRankLabel": "{metricTypeLabel} de {metricField}", "visTypeTimeseries.calculateLabel.metricTypeOfTargetLabel": "{metricTypeLabel} de {targetLabel}", "visTypeTimeseries.calculateLabel.metricTypeOfTargetWithAdditionalLabel": "{metricTypeLabel} de {targetLabel} ({additionalLabel})", "visTypeTimeseries.calculateLabel.positiveRateLabel": "Taux de compteur de {field}", "visTypeTimeseries.calculateLabel.seriesAggLabel": "Agrégation de séries ({metricFunction})", "visTypeTimeseries.calculateLabel.staticValueLabel": "Valeur statique de {metricValue}", - "visTypeTimeseries.calculation.painlessScriptDescription": "Les variables sont des clés sur l'objet {params} , c.-à-d. {paramsName}. Pour accéder à l'intervalle de compartiment (en millisecondes), utilisez {paramsInterval}.", - "visTypeTimeseries.colorPicker.notAccessibleWithValueAriaLabel": "Sélecteur de couleur ({value}), inaccessible", - "visTypeTimeseries.colorRules.setPrimaryColorLabel": "Définir {primaryName} sur", + "visTypeTimeseries.calculation.painlessScriptDescription": "Les variables sont des clés sur l'objet {params}, c.-à-d. {paramsName}. Pour accéder à l'intervalle de compartiment (en millisecondes), utilisez {paramsInterval}.", + "visTypeTimeseries.colorPicker.notAccessibleWithValueAriaLabel": "Sélecteur de couleur ({value}), non accessible", + "visTypeTimeseries.colorRules.setPrimaryColorLabel": "Définissez {primaryName} sur", "visTypeTimeseries.colorRules.setSecondaryColorLabel": "et {secondaryName} sur", - "visTypeTimeseries.dataFormatPicker.formatPatternLabel": "Modèle de format Numeral.js (Par défaut : {defaultPattern})", + "visTypeTimeseries.dataFormatPicker.formatPatternLabel": "Modèle de format Numeral.js (par défaut : {defaultPattern})", "visTypeTimeseries.errors.dataViewNotFoundError": "Impossible de trouver la vue de données : {dataViewId}", "visTypeTimeseries.errors.fieldNotFound": "Champ \"{field}\" introuvable", "visTypeTimeseries.externalUrlErrorModal.bodyMessage": "Configurez {externalUrlPolicy} dans votre {kibanaConfigFileName} pour autoriser l'accès à {url}.", "visTypeTimeseries.fieldSelect.fieldIsNotValid": "La sélection \"{fieldParameter}\" n'est pas valide pour une utilisation avec l'index actuel.", - "visTypeTimeseries.fieldUtils.multiFieldLabel": "{firstFieldLabel} + {count} {count, plural, one {autre} many {autres} other {autres}}", + "visTypeTimeseries.fieldUtils.multiFieldLabel": "{firstFieldLabel} + {count} {count, plural, one {autre} other {autres}}", "visTypeTimeseries.indexPattern.detailLevelHelpText": "Contrôle les intervalles auto et gte en fonction de la plage temporelle. Les paramètres avancés {histogramTargetBars} et {histogramMaxBars} ont un impact sur l'intervalle par défaut.", "visTypeTimeseries.indexPattern.timeRange.error": "Vous ne pouvez pas utiliser \"{mode}\" avec le type d'index actuel.", "visTypeTimeseries.indexPatternSelect.defaultDataViewText": "Utilisation de la vue de données par défaut. {queryAllIndicesHelpText}", @@ -6469,22 +7453,22 @@ "visTypeTimeseries.lastValueModeIndicator.panelInterval": "Intervalle : {formattedPanelInterval}", "visTypeTimeseries.markdownEditor.howToAccessEntireTreeDescription": "Il existe également une variable spéciale nommée {all} que vous pouvez utiliser pour accéder à l'ensemble de l'arborescence. C'est utile pour créer des listes avec des données à l'aide d'une action Regrouper par :", "visTypeTimeseries.markdownEditor.howToUseVariablesInMarkdownDescription": "Les variables suivantes peuvent être utilisées dans Markdown à l'aide de la syntaxe Handlebar (moustache). {handlebarLink} sur les expressions disponibles.", - "visTypeTimeseries.math.expressionDescription": "Ce champ utilise des expressions mathématiques de base (voir {link}). Les variables sont des clés sur l'objet {params}, c.-à-d. {paramsName} Pour accéder à toutes les données, utilisez {paramsValues} pour un tableau de valeurs et {paramsTimestamps} pour un tableau d'horodatages. {paramsTimestamp} est disponible pour l'horodatage du compartiment actuel, {paramsIndex} est disponible pour l'index du compartiment actuel et {paramsInterval} est disponible pour l'intervalle en millisecondes.", + "visTypeTimeseries.math.expressionDescription": "Ce champ utilise des expressions mathématiques de base (voir {link}). Les variables sont des clés sur l'objet {params}, c.-à-d. {paramsName}. Pour accéder à toutes les données, utilisez {paramsValues} pour un tableau de valeurs et {paramsTimestamps} pour un tableau d’horodatages. {paramsTimestamp} est disponible pour l'horodatage du compartiment actuel, {paramsIndex} est disponible pour l'index du compartiment actuel et {paramsInterval} est disponible pour l'intervalle en millisecondes.", "visTypeTimeseries.metricMissingErrorMessage": "Indicateur manquant {field}", "visTypeTimeseries.missingPanelConfigDescription": "Configuration de panneau manquante pour \"{modelType}\"", "visTypeTimeseries.positiveRate.helpText": "Cette agrégation ne doit être appliquée qu'à {link} ; il s'agit d'un raccourci pour appliquer Max., Dérivée et Positif uniquement à un champ.", - "visTypeTimeseries.replaceVars.errors.unknownVarDescription": "{badVar} est une variable inconnue", + "visTypeTimeseries.replaceVars.errors.unknownVarDescription": "{badVar} est une variable inconnue.", "visTypeTimeseries.seriesConfig.missingSeriesComponentDescription": "Composant de série manquant pour le type de panneau : {panelType}", - "visTypeTimeseries.seriesConfig.templateHelpText": "Par ex. {templateExample}", + "visTypeTimeseries.seriesConfig.templateHelpText": "par ex. {templateExample}", "visTypeTimeseries.seriesRequest.label": "Série : {id}", - "visTypeTimeseries.table.optionsTab.itemUrlHelpText": "Prend en charge les modèles moustache. {key} est défini sur le terme.", - "visTypeTimeseries.table.templateHelpText": "Par ex. {templateExample}", + "visTypeTimeseries.table.optionsTab.itemUrlHelpText": "Prend en charge les modèles de moustaches. {key} est défini sur le terme.", + "visTypeTimeseries.table.templateHelpText": "par ex. {templateExample}", "visTypeTimeseries.tableRequest.label": "Tableau : {id}", - "visTypeTimeseries.timeSeries.templateHelpText": "Par ex. {templateExample}", - "visTypeTimeseries.topN.optionsTab.itemUrlDescription": "Prend en charge les modèles moustache. {key} est défini sur le terme.", + "visTypeTimeseries.timeSeries.templateHelpText": "par ex. {templateExample}", + "visTypeTimeseries.topN.optionsTab.itemUrlDescription": "Prend en charge les modèles de moustaches. {key} est défini sur le terme.", "visTypeTimeseries.unsupportedSplit.splitIsUnsupportedDescription": "Diviser par {modelType} n'est pas pris en charge.", "visTypeTimeseries.visEditorVisualization.dataViewMode.notificationMessage": "Bonne nouvelle ! Vous pouvez visualiser les données des vues de données Kibana (recommandé) ou des index Elasticsearch. {indexPatternModeLink}.", - "visTypeTimeseries.wrongAggregationErrorMessage": "L'agrégation {metricType} n'est pas prise en charge pour la configuration de panneau existante.", + "visTypeTimeseries.wrongAggregationErrorMessage": "l'agrégation {metricType} n’est pas compatible pour la configuration de panneau existante.", "visTypeTimeseries.addDeleteButtons.addButtonDefaultTooltip": "Ajouter", "visTypeTimeseries.addDeleteButtons.cloneButtonDefaultTooltip": "Cloner", "visTypeTimeseries.addDeleteButtons.deleteButtonDefaultTooltip": "Supprimer", @@ -6995,10 +7979,10 @@ "visTypeVega.emsFileParser.emsFileNameDoesNotExistErrorMessage": "{emsfile} {emsfileName} n'existe pas", "visTypeVega.emsFileParser.missingNameOfFileErrorMessage": "{dataUrlParam} avec {dataUrlParamValue} requiert le paramètre {nameParam} (nom du fichier)", "visTypeVega.esQueryParser.autointervalValueTypeErrorMessage": "{autointerval} doit être {trueValue} ou un nombre", - "visTypeVega.esQueryParser.dataUrlMustNotHaveLegacyAndBodyQueryValuesAtTheSameTimeErrorMessage": "{dataUrlParam} ne doit pas avoir de {legacyContext} existant et de {bodyQueryConfigName} en même temps", + "visTypeVega.esQueryParser.dataUrlMustNotHaveLegacyAndBodyQueryValuesAtTheSameTimeErrorMessage": "{dataUrlParam} ne doit pas avoir de {legacyContext} existant et de valeurs {bodyQueryConfigName} en même temps", "visTypeVega.esQueryParser.dataUrlMustNotHaveLegacyContextTogetherWithContextOrTimefieldErrorMessage": "{dataUrlParam} ne doit pas avoir de {legacyContext} avec {context} ou {timefield}", - "visTypeVega.esQueryParser.legacyContextCanBeTrueErrorMessage": "Le {legacyContext} existant peut être {trueValue} (ignore le sélecteur de plage temporelle), ou il peut s'agir du nom du champ temporel, par exemple {timestampParam}", - "visTypeVega.esQueryParser.legacyUrlShouldChangeToWarningMessage": "{urlParam} existant : {legacyUrl} doit être remplacé par {result}", + "visTypeVega.esQueryParser.legacyContextCanBeTrueErrorMessage": "{legacyContext} existant peut être {trueValue} (ignore le sélecteur de plage temporelle), ou il peut s'agir du nom du champ temporel, par ex. {timestampParam}", + "visTypeVega.esQueryParser.legacyUrlShouldChangeToWarningMessage": "{urlParam} existant : {legacyUrl} doit être modifié en {result}", "visTypeVega.esQueryParser.shiftMustValueTypeErrorMessage": "{shiftParam} doit être une valeur numérique", "visTypeVega.esQueryParser.timefilterValueErrorMessage": "La propriété {timefilter} doit être définie sur {trueValue}, {minValue} ou {maxValue}", "visTypeVega.esQueryParser.unknownUnitValueErrorMessage": "Valeur {unitParamName} inconnue. Doit être l'une des valeurs suivantes : [{unitParamValues}]", @@ -7006,8 +7990,8 @@ "visTypeVega.esQueryParser.urlBodyValueTypeErrorMessage": "{configName} doit être un objet", "visTypeVega.esQueryParser.urlContextAndUrlTimefieldMustNotBeUsedErrorMessage": "{urlContext} et {timefield} ne doivent pas être utilisés lorsque {queryParam} est défini", "visTypeVega.inspector.dataViewer.gridAriaLabel": "Grille de données {name}", - "visTypeVega.mapView.experimentalMapLayerInfo": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera au maximum de corriger tout problème, mais les fonctionnalités dans la version d'évaluation technique ne sont pas soumises aux accords de niveau de service d'assistance des fonctionnalités officielles en disponibilité générale. Pour apporter des commentaires, veuillez créer une entrée dans {githubLink}.", - "visTypeVega.mapView.mapStyleNotFoundWarningMessage": "{mapStyleParam} introuvable", + "visTypeVega.mapView.experimentalMapLayerInfo": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera de corriger tous les problèmes, mais les fonctionnalités dans la version d'évaluation technique ne sont pas soumises aux accords de niveau de service d'assistance des fonctionnalités officielles en disponibilité générale. Pour apporter des commentaires, veuillez créer une entrée dans {githubLink}.", + "visTypeVega.mapView.mapStyleNotFoundWarningMessage": "{mapStyleParam} est introuvable", "visTypeVega.mapView.minZoomAndMaxZoomHaveBeenSwappedWarningMessage": "{minZoomPropertyName} et {maxZoomPropertyName} ont été permutés", "visTypeVega.mapView.resettingPropertyToMaxValueWarningMessage": "Réinitialisation de {name} sur {max}", "visTypeVega.mapView.resettingPropertyToMinValueWarningMessage": "Réinitialisation de {name} sur {min}", @@ -7015,19 +7999,19 @@ "visTypeVega.urlParser.urlShouldHaveQuerySubObjectWarningMessage": "L'utilisation d'un {urlObject} requiert un sous-objet {subObjectName}", "visTypeVega.vegaParser.autoSizeDoesNotAllowFalse": "{autoSizeParam} est activé ; il peut uniquement être désactivé en définissant {autoSizeParam} sur {noneParam}", "visTypeVega.vegaParser.baseView.externalUrlsAreNotEnabledErrorMessage": "Les URL externes ne sont pas activées. Ajouter {enableExternalUrls} à {kibanaConfigFileName}", - "visTypeVega.vegaParser.baseView.externalUrlServiceErrorMessage": "L'URL externe [{uri}] a été refusée par le service ExternalUrl. Vous pouvez configurer des politiques d'URL externe avec le paramètre \"{externalUrlPolicy}\" dans {kibanaConfigFileName}.", + "visTypeVega.vegaParser.baseView.externalUrlServiceErrorMessage": "l'URL externe [{uri}] a été refusée par le service ExternalUrl. Vous pouvez configurer des politiques d'URL externe avec le paramètre \"{externalUrlPolicy}\" dans {kibanaConfigFileName}.", "visTypeVega.vegaParser.baseView.functionIsNotDefinedForGraphErrorMessage": "{funcName} n'est pas défini pour ce graphe", - "visTypeVega.vegaParser.baseView.indexNotFoundErrorMessage": "Index {index} introuvable", + "visTypeVega.vegaParser.baseView.indexNotFoundErrorMessage": "Impossible de trouver l'index {index}", "visTypeVega.vegaParser.baseView.timeValuesTypeErrorMessage": "Erreur lors de la définition du filtre de temps : les deux valeurs temporelles doivent être des dates relatives ou absolues. {start}, {end}", - "visTypeVega.vegaParser.centerOnMarkConfigValueTypeErrorMessage": "La valeur attendue pour {configName} est {trueValue}, {falseValue} ou un nombre", + "visTypeVega.vegaParser.centerOnMarkConfigValueTypeErrorMessage": "Les valeurs attendues pour {configName} sont {trueValue}, {falseValue} ou un nombre", "visTypeVega.vegaParser.dataExceedsSomeParamsUseTimesLimitErrorMessage": "Les données ne doivent pas avoir plus d'un paramètre {urlParam}, {valuesParam} et {sourceParam}", "visTypeVega.vegaParser.hostConfigIsDeprecatedWarningMessage": "{deprecatedConfigName} a été déclassé. Utilisez {newConfigName} à la place.", - "visTypeVega.vegaParser.hostConfigValueTypeErrorMessage": "S'il est présent, le {configName} doit être un objet", + "visTypeVega.vegaParser.hostConfigValueTypeErrorMessage": "S'il est présent, le paramètre {configName} doit être un objet", "visTypeVega.vegaParser.inputSpecDoesNotSpecifySchemaErrorMessage": "Vos spécifications requièrent un champ {schemaParam} avec une URL valide pour\nVega (voir {vegaSchemaUrl}) ou\nVega-Lite (voir {vegaLiteSchemaUrl}).\nL'URL est uniquement un identificateur. Kibana et votre navigateur n'accéderont jamais à cette URL.", - "visTypeVega.vegaParser.kibanaConfigValueTypeErrorMessage": "S'il est présent, le {configName} doit être un objet", + "visTypeVega.vegaParser.kibanaConfigValueTypeErrorMessage": "S'il est présent, le paramètre {configName} doit être un objet", "visTypeVega.vegaParser.maxBoundsValueTypeWarningMessage": "{maxBoundsConfigName} doit être un tableau avec quatre nombres", "visTypeVega.vegaParser.notSupportedUrlTypeErrorMessage": "{urlObject} n'est pas pris en charge", - "visTypeVega.vegaParser.notValidLibraryVersionForInputSpecWarningMessage": "Les spécifications d'entrée utilisent {schemaLibrary} {schemaVersion}, mais la version actuelle de {schemaLibrary} est {libraryVersion}.", + "visTypeVega.vegaParser.notValidLibraryVersionForInputSpecWarningMessage": "Les spécifications d'entrée utilisent {schemaLibrary} {schemaVersion}, mais la version actuelle de {schemaLibrary} est {libraryVersion}.", "visTypeVega.vegaParser.paddingConfigValueTypeErrorMessage": "La valeur attendue pour {configName} est un nombre", "visTypeVega.vegaParser.someKibanaConfigurationIsNoValidWarningMessage": "{configName} n'est pas valide", "visTypeVega.vegaParser.someKibanaParamValueTypeWarningMessage": "{configName} doit être une valeur booléenne", @@ -7036,7 +8020,7 @@ "visTypeVega.vegaParser.unrecognizedControlsLocationValueErrorMessage": "Valeur {controlsLocationParam} non reconnue. Valeur attendue parmi [{locToDirMap}]", "visTypeVega.vegaParser.unrecognizedDirValueErrorMessage": "Valeur {dirParam} non reconnue. Valeur attendue parmi [{expectedValues}]", "visTypeVega.vegaParser.widthAndHeightParamsAreIgnored": "Les paramètres {widthParam} et {heightParam} sont ignorés, car {autoSizeParam} est activé. Pour le désactiver, définissez {autoSizeParam} sur {noneParam}", - "visTypeVega.vegaParser.widthAndHeightParamsAreRequired": "Aucun rendu n'est généré lorsque {autoSizeParam} est défini sur {noneParam}quand les spécifications {vegaLiteParam} à facette ou répétées sont utilisées. Pour y remédier, retirez {autoSizeParam} ou utilisez {vegaParam}.", + "visTypeVega.vegaParser.widthAndHeightParamsAreRequired": "Aucun rendu n'est généré lorsque {autoSizeParam} est défini sur {noneParam} quand les spécifications {vegaLiteParam} à facette ou répétées sont utilisées. Pour y remédier, retirez {autoSizeParam} ou utilisez {vegaParam}.", "visTypeVega.editor.formatError": "Erreur lors du formatage des spécifications", "visTypeVega.editor.reformatAsHJSONButtonLabel": "Reformater en HJSON", "visTypeVega.editor.reformatAsJSONButtonLabel": "Reformater en JSON, supprimer les commentaires", @@ -7070,7 +8054,7 @@ "visTypeVislib.vislib.legend.filterForValueButtonAriaLabel": "Filtrer sur {legendDataLabel}", "visTypeVislib.vislib.legend.filterOptionsLegend": "{legendDataLabel}, options de filtre", "visTypeVislib.vislib.legend.filterOutValueButtonAriaLabel": "Exclure {legendDataLabel}", - "visTypeVislib.vislib.legend.toggleOptionsButtonAriaLabel": "{legendDataLabel}, activer/désactiver les options", + "visTypeVislib.vislib.legend.toggleOptionsButtonAriaLabel": "{legendDataLabel}, options de basculement", "visTypeVislib.advancedSettings.visualization.heatmap.maxBucketsText": "Nombre maximal de groupes pouvant être renvoyés par une source de données unique. Un nombre plus élevé pourra impacter négativement les performances de rendu du navigateur", "visTypeVislib.advancedSettings.visualization.heatmap.maxBucketsTitle": "Nombre maximal de groupes pour la carte thermique", "visTypeVislib.aggResponse.allDocsTitle": "Tous les docs", @@ -7079,8 +8063,8 @@ "visTypeVislib.vislib.legend.loadingLabel": "chargement…", "visTypeVislib.vislib.legend.toggleLegendButtonAriaLabel": "Basculer la légende", "visTypeVislib.vislib.legend.toggleLegendButtonTitle": "Afficher/Masquer la légende", - "visTypeXy.controls.pointSeries.seriesAccordionAriaLabel": "Activer/désactiver les options {agg}", - "visTypeXy.controls.pointSeries.valueAxes.toggleOptionsAriaLabel": "Activer/désactiver les options {axisName}", + "visTypeXy.controls.pointSeries.seriesAccordionAriaLabel": "Basculer les options {agg}", + "visTypeXy.controls.pointSeries.valueAxes.toggleOptionsAriaLabel": "Basculer les options {axisName}", "visTypeXy.allDocsTitle": "Tous les docs", "visTypeXy.area.areaDescription": "Mettez en avant les données entre un axe et une ligne.", "visTypeXy.area.areaTitle": "Aire", @@ -7197,28 +8181,28 @@ "visTypeXy.thresholdLine.style.dashedText": "Tirets", "visTypeXy.thresholdLine.style.dotdashedText": "Point-tiret", "visTypeXy.thresholdLine.style.fullText": "Pleine", - "visualizations.byValue_pageHeading": "Visualisation de type {chartType} incorporée dans l'application {originatingApp}", - "visualizations.confirmModal.overwriteConfirmationMessage": "Voulez-vous vraiment écraser {title} ?", + "visualizations.byValue_pageHeading": "Visualisation de type {chartType} intégrée à l'application {originatingApp}", + "visualizations.confirmModal.overwriteConfirmationMessage": "Êtes-vous sûr de vouloir écraser {title} ?", "visualizations.confirmModal.overwriteTitle": "Écraser {name} ?", "visualizations.confirmModal.saveDuplicateConfirmationMessage": "L'enregistrement de \"{name}\" crée un doublon de titre. Voulez-vous tout de même enregistrer ?", - "visualizations.editVisualization.readOnlyErrorMessage": "Les visualisations {visTypeTitle} sont en lecture seule et ne peuvent pas être ouvertes dans l’éditeur", + "visualizations.editVisualization.readOnlyErrorMessage": "Les visualisations {visTypeTitle} sont en lecture seule et ne peuvent pas être ouvertes dans l'éditeur", "visualizations.embeddable.legacyURLConflict.errorMessage": "Cette visualisation a la même URL qu'un alias hérité. Désactiver l'alias pour résoudre cette erreur : {json}", - "visualizations.experimentalVisInfoText": "Elle pourra être modifiée ou supprimée totalement dans une prochaine version. Elastic s'efforcera au maximum de corriger tout problème, mais les fonctionnalités en version d'évaluation technique ne sont pas soumises aux accords de niveau de service d'assistance des fonctionnalités officielles en disponibilité générale. Pour apporter des commentaires, veuillez créer une entrée dans {githubLink}.", + "visualizations.experimentalVisInfoText": "Elle pourra être modifiée ou supprimée totalement dans une prochaine version. Elastic s'efforcera de corriger tous les problèmes, mais les fonctionnalités en version d'évaluation technique ne sont pas soumises aux accords de niveau de service d'assistance des fonctionnalités officielles en disponibilité générale. Pour apporter des commentaires, veuillez créer une entrée dans {githubLink}.", "visualizations.fallbackDataView.label": "{type} introuvable", - "visualizations.function.findAccessorOrFail.error.accessor": "Le nom de la colonne ou l'index fourni n'est pas valide : {accessor}", + "visualizations.function.findAccessorOrFail.error.accessor": "Le nom de la colonne ou l'index fourni sont non valides : {accessor}", "visualizations.legacyUrlConflict.objectNoun": "Visualisation {visName}", - "visualizations.missedDataView.errorMessage": "Impossible de trouver {type} : {id}", + "visualizations.missedDataView.errorMessage": "Impossible de trouver le {type} : {id}", "visualizations.newChart.conditionalMessage.newLibrary": "Passer à la bibliothèque {type} dans {link}", "visualizations.newGaugeChart.notificationMessage": "La nouvelle bibliothèque de graphiques de jauge ne prend pas encore en charge l'agrégation de graphiques fractionnés. {conditionalMessage}", "visualizations.newVisWizard.newVisTypeTitle": "Nouveau {visTypeName}", - "visualizations.newVisWizard.resultsFound": "{resultCount, plural, one {type} many {types} other {types}} trouvé(s)", + "visualizations.newVisWizard.resultsFound": "{resultCount, plural, one {type trouvé} other {types trouvés}}", "visualizations.noMatchRoute.bannerText": "L'application Visualize ne reconnaît pas cet itinéraire : {route}.", "visualizations.oldPieChart.notificationMessage": "Vous utilisez la bibliothèque de graphiques existante qui sera supprimée dans une prochaine version. {conditionalMessage}", - "visualizations.pageHeading": "Visualisation {chartName} {chartType}", + "visualizations.pageHeading": "Visualisation {chartType} {chartName}", "visualizations.reporting.defaultReportTitle": "Visualisation [{date}]", "visualizations.topNavMenu.updatePanel": "Mettre à jour le panneau sur {originatingAppName}", "visualizations.visualizationTypeInvalidMessage": "Type de visualisation non valide \"{visType}\"", - "visualizations.visualizeListingDashboardFlowDescription": "Vous créez un tableau de bord ? Créez et ajoutez vos visualisations directement depuis {dashboardApp}.", + "visualizations.visualizeListingDashboardFlowDescription": "Vous créez un tableau de bord ? Créez et ajoutez vos visualisations directement depuis l'{dashboardApp}.", "visualizations.visualizeListingDeleteErrorTitle.duplicateWarning": "L'enregistrement de \"{value}\" crée un doublon de titre.", "visualizations.actions.editInLens.displayName": "Convertir pour une utilisation dans Lens", "visualizations.badge.readOnly.text": "Lecture seule", @@ -7264,12 +8248,13 @@ "visualizations.listing.createNew.description": "Vous pouvez créer différentes visualisations basées sur vos données.", "visualizations.listing.createNew.title": "Créer votre première visualisation", "visualizations.listing.experimentalTitle": "Version d'évaluation technique", - "visualizations.listing.experimentalTooltip": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera au maximum de corriger tout problème, mais les fonctionnalités en version d'évaluation technique ne sont pas soumises aux accords de niveau de service d'assistance des fonctionnalités officielles en disponibilité générale.", + "visualizations.listing.experimentalTooltip": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera de corriger tout problème, mais les fonctionnalités des versions d'évaluation technique ne sont pas soumises aux SLA de support des fonctionnalités officielles en disponibilité générale.", "visualizations.listing.table.entityName": "visualisation", "visualizations.listing.table.entityNamePlural": "visualisations", "visualizations.listing.table.listTitle": "Bibliothèque Visualize", "visualizations.listing.table.typeColumnName": "Type", "visualizations.listingPageTitle": "Bibliothèque Visualize", + "visualizations.managedBadgeTooltip": "Cette visualisation est gérée par Elastic. Les modifications effectuées ici doivent être enregistrées dans une nouvelle visualisation.", "visualizations.missedDataView.dataViewReconfigure": "Recréez-la dans la page de gestion des vues de données.", "visualizations.newChart.conditionalMessage.advancedSettingsLink": "Paramètres avancés.", "visualizations.newChart.libraryMode.new": "nouveau", @@ -7278,7 +8263,7 @@ "visualizations.newVisWizard.aggBasedGroupTitle": "Basé sur une agrégation", "visualizations.newVisWizard.chooseSourceTitle": "Choisir une source", "visualizations.newVisWizard.experimentalTitle": "Version d'évaluation technique", - "visualizations.newVisWizard.experimentalTooltip": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera au maximum de corriger tout problème, mais les fonctionnalités en version d'évaluation technique ne sont pas soumises aux accords de niveau de service d'assistance des fonctionnalités officielles en disponibilité générale.", + "visualizations.newVisWizard.experimentalTooltip": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera de corriger tout problème, mais les fonctionnalités des versions d'évaluation technique ne sont pas soumises aux SLA de support des fonctionnalités officielles en disponibilité générale.", "visualizations.newVisWizard.exploreOptionLinkText": "Explorer les options", "visualizations.newVisWizard.filterVisTypeAriaLabel": "Filtrer un type de visualisation", "visualizations.newVisWizard.goBackLink": "Sélectionner une visualisation différente", @@ -7305,6 +8290,7 @@ "visualizations.topNavMenu.cancelButtonLabel": "Annuler", "visualizations.topNavMenu.goToLensButtonAriaLabel": "Rendez-vous sur Lens avec votre configuration actuelle", "visualizations.topNavMenu.goToLensButtonLabel": "Modifier la visualisation dans Lens", + "visualizations.topNavMenu.mustCopyOnSave": "Cette visualisation est gérée par Elastic. Les modifications effectuées ici doivent être enregistrées dans une nouvelle visualisation.", "visualizations.topNavMenu.openInspectorButtonAriaLabel": "Ouvrir l'Inspecteur pour la visualisation", "visualizations.topNavMenu.openInspectorButtonLabel": "inspecter", "visualizations.topNavMenu.openInspectorDisabledButtonTooltip": "Cette visualisation ne prend en charge aucun inspecteur.", @@ -7367,7 +8353,7 @@ "xpack.actions.actionTypeRegistry.register.missingSupportedFeatureIds": "Au moins une valeur \"supportedFeatureId\" doit être fournie pour le type de connecteur \"{connectorTypeId}\".", "xpack.actions.apiAllowedHostsError": "erreur lors de la configuration de l'action du connecteur : {message}", "xpack.actions.disabledActionTypeError": "le type d'action \"{actionType}\" n'est pas activé dans la configuration Kibana xpack.actions.enabledActionTypes", - "xpack.actions.savedObjects.onImportText": "{connectorsWithSecretsLength} {connectorsWithSecretsLength, plural, one {connecteur a} many {connecteurs ont} other {connecteurs ont}} des informations sensibles qui nécessitent des mises à jour.", + "xpack.actions.savedObjects.onImportText": "{connectorsWithSecretsLength} {connectorsWithSecretsLength, plural, one {Le connecteur contient} other {Les connecteurs contiennent}} des informations sensibles qui requièrent des mises à jour.", "xpack.actions.serverSideErrors.expirerdLicenseErrorMessage": "Le type d'action {actionTypeId} est désactivé, car votre licence {licenseType} a expiré.", "xpack.actions.serverSideErrors.invalidLicenseErrorMessage": "Le type d'action {actionTypeId} est désactivé, car votre licence {licenseType} ne le prend pas en charge. Veuillez mettre à niveau votre licence.", "xpack.actions.serverSideErrors.predefinedActionDeleteDisabled": "L'action préconfigurée {id} n'est pas autorisée à effectuer des suppressions.", @@ -7386,51 +8372,59 @@ "xpack.actions.availableConnectorFeatures.cases": "Cas", "xpack.actions.availableConnectorFeatures.compatibility.alertingRules": "Règles d'alerting", "xpack.actions.availableConnectorFeatures.compatibility.cases": "Cas", + "xpack.actions.availableConnectorFeatures.compatibility.generativeAIForObservability": "IA générative pour l'observabilité", + "xpack.actions.availableConnectorFeatures.compatibility.generativeAIForSecurity": "IA générative pour la sécurité", "xpack.actions.availableConnectorFeatures.securitySolution": "Solution de sécurité", "xpack.actions.availableConnectorFeatures.uptime": "Uptime", "xpack.actions.builtin.cases.jiraTitle": "Jira", "xpack.actions.featureRegistry.actionsFeatureName": "Actions et connecteurs", "xpack.actions.savedObjects.goToConnectorsButtonText": "Accéder aux connecteurs", "xpack.actions.serverSideErrors.unavailableLicenseInformationErrorMessage": "Les actions sont indisponibles - les informations de licence ne sont pas disponibles actuellement.", - "xpack.aiops.analysis.errorCallOutTitle": "{errorCount, plural, one {erreur} many {erreurs} other {erreurs}} lors de l'analyse.", + "xpack.aiops.analysis.errorCallOutTitle": "Génération {errorCount, plural, one {de l'erreur suivante} other {des erreurs suivantes}} au cours de l'analyse.", "xpack.aiops.categorizeFlyout.title": "Analyse du modèle de {name}", "xpack.aiops.changePointDetection.attachmentTitle": "Point de modification : {function}({metric}){splitBy}", - "xpack.aiops.changePointDetection.cardinalityWarningMessage": "La cardinalité du champ \"{splitField}\" est {cardinality}, ce qui dépasse la limite de {cardinalityLimit}. Seules les {cardinalityLimit} premières partitions, triées par nombre de documents, sont analysées.", + "xpack.aiops.changePointDetection.cardinalityWarningMessage": "La cardinalité des champs \"{splitField}\" est {cardinality}, ce qui excède la limite de {cardinalityLimit}. Seules les {cardinalityLimit} premières partitions, triées par nombre de documents, sont analysées.", "xpack.aiops.changePointDetection.maxSeriesToPlotError": "La valeur maximale de la série doit être comprise entre {minValue} et {maxValue}", - "xpack.aiops.changePointDetection.splitByTitle": " divisé par \"{splitField}\"", + "xpack.aiops.changePointDetection.splitByTitle": " diviser par \"{splitField}\"", "xpack.aiops.dataViewNotBasedOnTimeSeriesWarning.title": "La vue de données \"{dataViewTitle}\" n'est pas basée sur une série temporelle.", "xpack.aiops.index.dataLoader.internalServerErrorMessage": "Erreur lors du chargement des données dans l'index {index}. {message}. La requête a peut-être expiré. Essayez d'utiliser un échantillon d'une taille inférieure ou de réduire la plage temporelle.", "xpack.aiops.index.dataViewWithoutMetricNotificationTitle": "La vue de données \"{dataViewTitle}\" ne contient aucun champ d'indicateurs.", "xpack.aiops.index.errorLoadingDataMessage": "Erreur lors du chargement des données dans l'index {index}. {message}.", - "xpack.aiops.logCategorization.counts": "{count} {count, plural, one {le modèle} many {Modèles d''indexation manquants} other {Modèles d''indexation manquants}}", + "xpack.aiops.logCategorization.counts": "{count} {count, plural, one {Modèle trouvé} other {Modèles trouvés}}", "xpack.aiops.logCategorization.filterAliasLabel": "Catégorisation - {field}", - "xpack.aiops.logCategorization.filterIn": "Filtrer sur {values, plural, one {un modèle} many {Modèles d''indexation manquants} other {des modèles}} dans Discover", - "xpack.aiops.logCategorization.filterOut": "Exclure {values, plural, one {un modèle} many {Modèles d''indexation manquants} other {des modèles}} dans Discover", - "xpack.aiops.logCategorization.flyout.filterIn": "Filtrer sur {values, plural, one {un modèle} many {Modèles d''indexation manquants} other {des modèles}}", - "xpack.aiops.logCategorization.flyout.filterOut": "Exclure {values, plural, one {un modèle} many {Modèles d''indexation manquants} other {des modèles}}", + "xpack.aiops.logCategorization.filterIn": "Filtrer sur {values, plural, one {modèle} other {modèles}} dans Discover", + "xpack.aiops.logCategorization.filterOut": "Exclure {values, plural, one {modèle} other {modèles}} dans Discover", + "xpack.aiops.logCategorization.flyout.filterIn": "Filtrer sur {values, plural, one {modèle} other {modèles}}", + "xpack.aiops.logCategorization.flyout.filterOut": "Exclure {values, plural, one {modèle} other {modèles}}", "xpack.aiops.logCategorization.randomSamplerSettingsPopUp.probabilityLabel": "Probabilité utilisée : {samplingProbability} %", "xpack.aiops.logCategorization.selectedCounts": " | {count} sélectionné(s)", - "xpack.aiops.logRateAnalysis.loadingState.identifiedFieldCandidates": "{fieldCandidatesCount, plural, one {# champ candidat a été identifié} many {# champs candidats ont été identifiés} other {# champs candidats ont été identifiés}}.", - "xpack.aiops.logRateAnalysis.loadingState.identifiedFieldValuePairs": "{fieldValuePairsCount, plural, one {# paire champ/valeur significative a été identifiée} many {# paires champ/valeur significatives ont été identifiées} other {# paires champ/valeur significatives ont été identifiées}}.", + "xpack.aiops.logRateAnalysis.loadingState.identifiedFieldCandidates": "{fieldCandidatesCount, plural, one {# candidat de champ identifié} other {# candidats de champs identifiés}}.", + "xpack.aiops.logRateAnalysis.loadingState.identifiedFieldValuePairs": "{fieldValuePairsCount, plural, one {# paire significative champ/valeur identifiée} other {# paires significatives champ/valeur identifiées}}.", "xpack.aiops.logRateAnalysis.resultsTableGroups.groupColumnTooltip": "Affiche jusqu'à {maxItemCount} éléments de groupe triés par unicité et nombre de documents. Développez la ligne pour voir toutes les paires champ/valeur.", - "xpack.aiops.logRateAnalysis.resultsTableGroups.groupItemsInfo": "Affichage de {valuesBadges} éléments sur {count}.", - "xpack.aiops.logRateAnalysis.resultsTableGroups.groupUniqueItemsInfo": "{count, plural, one {# élément} many {Éléments #} other {Éléments #}} unique(s) à ce groupe.", + "xpack.aiops.logRateAnalysis.resultsTableGroups.groupItemsInfo": "Affichage de {valuesBadges} sur {count} éléments.", + "xpack.aiops.logRateAnalysis.resultsTableGroups.groupUniqueItemsInfo": "{count, plural, one {# élément unique} other {# éléments uniques}} à ce groupe.", "xpack.aiops.progressTitle": "Progression : {progress} % — {progressMessage}", "xpack.aiops.searchPanel.sampleProbabilityLabel": "Probabilité d'échantillonnage : {strongSamplingProbability}", - "xpack.aiops.searchPanel.sampleProbabilityNumber": "{sampleProbability, plural, one {#} many {#} other {#}}", + "xpack.aiops.searchPanel.sampleProbabilityNumber": "{sampleProbability, plural, other {#}}", "xpack.aiops.searchPanel.totalDocCountLabel": "Total des documents : {strongTotalCount}", - "xpack.aiops.searchPanel.totalDocCountNumber": "{totalCount, plural, one {#} many {#} other {#}}", + "xpack.aiops.searchPanel.totalDocCountNumber": "{totalCount, plural, other {#}}", "xpack.aiops.actions.editChangePointChartsName": "Modifier les graphiques de points de modification", + "xpack.aiops.actions.openChangePointInMlAppName": "Ouvrir dans AIOps Labs", "xpack.aiops.analysis.analysisTypeDipCallOutContent": "Le taux de log médian pour la plage temporelle d'écart-type sélectionnée est inférieur à la référence de base. Le tableau des résultats de l'analyse présente donc des éléments statistiquement significatifs inclus dans la plage temporelle de base qui sont moins nombreux ou manquant dans la plage temporelle d'écart-type. La colonne \"doc count\" (décompte de documents) renvoie à la quantité de documents dans la plage temporelle de base.", + "xpack.aiops.analysis.analysisTypeDipCallOutContentFallback": "La plage temporelle de déviation ne contient aucun document. Les résultats montrent donc les catégories de message des meilleurs logs et les valeurs des champs pour la période de référence.", "xpack.aiops.analysis.analysisTypeDipCallOutTitle": "Type d'analyse : Baisse du taux de log", + "xpack.aiops.analysis.analysisTypeDipFallbackCallOutTitle": "Type d'analyse : Meilleurs éléments pour la plage temporelle de référence de base", "xpack.aiops.analysis.analysisTypeSpikeCallOutContent": "Le taux de log médian pour la plage temporelle d'écart-type sélectionnée est inférieur à la référence de base. Le tableau des résultats de l'analyse présente donc des éléments statistiquement significatifs inclus dans la plage temporelle d'écart-type, qui contribuent au pic. La colonne \"doc count\" (décompte de documents) renvoie à la quantité de documents dans la plage temporelle d'écart-type.", + "xpack.aiops.analysis.analysisTypeSpikeCallOutContentFallback": "La plage temporelle de référence de base ne contient aucun document. Les résultats montrent donc les catégories de message des meilleurs logs et les valeurs des champs pour la plage temporelle de déviation.", "xpack.aiops.analysis.analysisTypeSpikeCallOutTitle": "Type d'analyse : Pic du taux de log", + "xpack.aiops.analysis.analysisTypeSpikeFallbackCallOutTitle": "Type d'analyse : Meilleurs éléments pour la plage temporelle de déviation", "xpack.aiops.analysis.fieldSelectorAriaLabel": "Champs de filtre", "xpack.aiops.analysis.fieldSelectorNotEnoughFieldsSelected": "Le regroupement nécessite la sélection d'au moins 2 champs.", "xpack.aiops.analysis.fieldSelectorPlaceholder": "Recherche", "xpack.aiops.analysisCompleteLabel": "Analyse terminée", "xpack.aiops.cancelAnalysisButtonTitle": "Annuler", - "xpack.aiops.categorizeFieldAction.displayName": "Catégoriser le champ", + "xpack.aiops.categorizeFieldAction.displayName": "Analyse du modèle", + "xpack.aiops.categorizeFlyout.findAnomalies": "Trouver les anomalies dans les modèles", "xpack.aiops.categorizeFlyout.loading.title": "Chargement de l'analyse du modèle", "xpack.aiops.changePointDetection.actions.filterForValueAction": "Filtrer sur la valeur", "xpack.aiops.changePointDetection.actions.filterOutValueAction": "Exclure la valeur", @@ -7441,6 +8435,7 @@ "xpack.aiops.changePointDetection.attachChartsLabel": "Attacher les graphiques", "xpack.aiops.changePointDetection.attachSelectedChartsLabel": "Attacher les graphiques sélectionnés", "xpack.aiops.changePointDetection.attachToCaseLabel": "Accéder au cas", + "xpack.aiops.changePointDetection.attachToCaseTitle": "Attacher à un cas", "xpack.aiops.changePointDetection.attachToCaseTooltipContent": "Sélectionner les points de modification à attacher", "xpack.aiops.changePointDetection.attachToDashboardLabel": "Accéder au tableau de bord", "xpack.aiops.changePointDetection.attachToDashboardTitle": "Attacher au tableau de bord", @@ -7465,6 +8460,7 @@ "xpack.aiops.changePointDetection.notResultsWarning": "Avertissement de résultats agrégés d'absence de point de modification", "xpack.aiops.changePointDetection.notSelectedSplitFieldLabel": "--- Non sélectionné ---", "xpack.aiops.changePointDetection.objectTypeLabel": "Graphique de points de modification", + "xpack.aiops.changePointDetection.partitionsDescription": "Si aucune valeur n'est spécifiée, les principaux points de modifications parmi toutes les valeurs des champs divisés seront affichés.", "xpack.aiops.changePointDetection.partitionsLabel": "Partitions", "xpack.aiops.changePointDetection.previewColumn": "Aperçu", "xpack.aiops.changePointDetection.progressBarLabel": "Récupération des points de modification", @@ -7497,9 +8493,12 @@ "xpack.aiops.embeddableChangePointChart.dataViewLabel": "Vue de données", "xpack.aiops.embeddableChangePointChart.dataViewSelectorPlaceholder": "Sélectionner la vue de données", "xpack.aiops.embeddableChangePointChart.functionLabel": "Fonction", - "xpack.aiops.embeddableChangePointChart.modalTitle": "Configuration des graphiques de points de modification", + "xpack.aiops.embeddableChangePointChart.modalTitle": "Modifier la configuration de la détection des points", "xpack.aiops.embeddableChangePointChart.setupModal.cancelButtonLabel": "Annuler", "xpack.aiops.embeddableChangePointChart.setupModal.confirmButtonLabel": "Confirmer les configurations", + "xpack.aiops.embeddableChangePointChart.viewTypeLabel": "Type de vue", + "xpack.aiops.embeddableChangePointChart.viewTypeSelector.chartsLabel": "Graphiques", + "xpack.aiops.embeddableChangePointChart.viewTypeSelector.tableLabel": "Tableau", "xpack.aiops.embeddableChangePointChartDisplayName": "Modifier la détection du point", "xpack.aiops.fieldContextPopover.descriptionTooltipContent": "Afficher les principales valeurs de champ", "xpack.aiops.fieldContextPopover.descriptionTooltipLogPattern": "La valeur du champ pour ce champ montre un exemple du modèle de champ de texte important identifié.", @@ -7510,12 +8509,19 @@ "xpack.aiops.logCategorization.categoryFieldSelect": "Champ de catégorie", "xpack.aiops.logCategorization.chartPointsSplitLabel": "Modèle sélectionné", "xpack.aiops.logCategorization.column.actions": "Actions", + "xpack.aiops.logCategorization.column.collapseRow": "Réduire", "xpack.aiops.logCategorization.column.count": "Décompte", "xpack.aiops.logCategorization.column.examples": "Exemples", + "xpack.aiops.logCategorization.column.expandRow": "Développer", "xpack.aiops.logCategorization.column.logRate": "Taux du log", + "xpack.aiops.logCategorization.column.tokens": "Tokens", + "xpack.aiops.logCategorization.column.tokens.tooltip": "Les exemples de documents ne peuvent pas être affichés si le champ sélectionné est un alias. Affichage des jetons modèles à la place.", "xpack.aiops.logCategorization.emptyPromptBody": "L'analyse de modèle de log regroupe les messages dans des modèles courants.", "xpack.aiops.logCategorization.emptyPromptTitle": "Sélectionner un champ de texte et cliquer sur exécuter l'analyse du modèle pour lancer l'analyse", "xpack.aiops.logCategorization.errorLoadingCategories": "Erreur lors du chargement des catégories", + "xpack.aiops.logCategorization.expandedRow.title.examples": "Exemples", + "xpack.aiops.logCategorization.expandedRow.title.regex": "Regex", + "xpack.aiops.logCategorization.expandedRow.title.tokens": "Tokens", "xpack.aiops.logCategorization.fieldValidationTitle": "Le champ sélectionné est susceptible de ne pas être approprié pour une analyse du modèle", "xpack.aiops.logCategorization.noCategoriesBody": "Assurez-vous que le champ sélectionné est rempli dans la plage temporelle sélectionnée.", "xpack.aiops.logCategorization.noCategoriesTitle": "Aucun modèle n'a été trouvé", @@ -7535,6 +8541,10 @@ "xpack.aiops.logCategorization.randomSamplerSettingsPopUp.randomSamplerPercentageRowLabel": "Pourcentage d'échantillonnage", "xpack.aiops.logCategorization.randomSamplerSettingsPopUp.randomSamplerRowLabel": "Échantillonnage aléatoire", "xpack.aiops.logCategorization.runButton": "Exécuter l'analyse du modèle", + "xpack.aiops.logCategorization.tabs.bucket": "Compartiment", + "xpack.aiops.logCategorization.tabs.bucket.tooltip": "Modèles apparaissant dans le compartiment anormal.", + "xpack.aiops.logCategorization.tabs.fullTimeRange": "Plage temporelle entière", + "xpack.aiops.logCategorization.tabs.fullTimeRange.tooltip": "Modèles apparaissant dans la plage temporelle choisie pour la page.", "xpack.aiops.logCategorizationTimeSeriesWarning.description": "L'analyse du modèle de log ne fonctionne que sur des index temporels.", "xpack.aiops.logRateAnalysis.loadingState.doneMessage": "Terminé.", "xpack.aiops.logRateAnalysis.loadingState.groupingResults": "Transformation de paires champ/valeur significatives en groupes.", @@ -7561,6 +8571,7 @@ "xpack.aiops.logRateAnalysis.resultsTable.discoverNotEnabledErrorMessage": "Discover n'est pas activé", "xpack.aiops.logRateAnalysis.resultsTable.docCountLabel": "Compte du document", "xpack.aiops.logRateAnalysis.resultsTable.expandAriaLabel": "Développer", + "xpack.aiops.logRateAnalysis.resultsTable.expandRowsLabel": "Développer les lignes", "xpack.aiops.logRateAnalysis.resultsTable.fieldNameLabel": "Nom du champ", "xpack.aiops.logRateAnalysis.resultsTable.fieldValueLabel": "Valeur du champ", "xpack.aiops.logRateAnalysis.resultsTable.groupedSwitchLabel.groupResults": "Regroupement intelligent", @@ -7571,6 +8582,7 @@ "xpack.aiops.logRateAnalysis.resultsTable.impactLabelColumnTooltip": "Le niveau d'impact du champ sur la différence de taux de messages.", "xpack.aiops.logRateAnalysis.resultsTable.linksMenu.copyToClipboardButtonLabel": "Copier dans le presse-papiers", "xpack.aiops.logRateAnalysis.resultsTable.linksMenu.copyToClipboardGroupMessage": "Copier les éléments de groupe en tant que syntaxe KQL dans le Presse-papiers", + "xpack.aiops.logRateAnalysis.resultsTable.linksMenu.copyToClipboardSignificantItemMessage": "Copier la paire clé-valeur en tant que syntaxe KQL dans le Presse-papiers", "xpack.aiops.logRateAnalysis.resultsTable.linksMenu.viewInDiscover": "Afficher dans Discover", "xpack.aiops.logRateAnalysis.resultsTable.linksMenu.viewInLogPatternAnalysis": "Voir dans l'analyse du modèle de log", "xpack.aiops.logRateAnalysis.resultsTable.logPatternLinkNotAvailableTooltipMessage": "Le lien n'est pas disponible si l'élément du tableau est lui-même un modèle de log.", @@ -7597,17 +8609,19 @@ "xpack.aiops.searchPanel.invalidSyntax": "Syntaxe non valide", "xpack.aiops.searchPanel.queryBarPlaceholderText": "Rechercher… (par exemple, status:200 AND extension:\"PHP\")", "xpack.aiops.techPreviewBadge.label": "Version d'évaluation technique", - "xpack.aiops.techPreviewBadge.tooltip": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera au maximum de corriger tout problème, mais les fonctionnalités en version d'évaluation technique ne sont pas soumises aux accords de niveau de service d'assistance des fonctionnalités officielles en disponibilité générale.", + "xpack.aiops.techPreviewBadge.tooltip": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera de corriger tout problème, mais les fonctionnalités des versions d'évaluation technique ne sont pas soumises aux SLA de support des fonctionnalités officielles en disponibilité générale.", "xpack.alerting.alertNavigationRegistry.get.missingNavigationError": "La navigation pour le type d'alerte \"{alertType}\" dans \"{consumer}\" n'est pas enregistrée.", "xpack.alerting.alertNavigationRegistry.register.duplicateDefaultError": "La navigation par défaut dans \"{consumer}\" est déjà enregistrée.", "xpack.alerting.alertNavigationRegistry.register.duplicateNavigationError": "La navigation pour le type d'alerte \"{alertType}\" dans \"{consumer}\" est déjà enregistrée.", - "xpack.alerting.maintenanceWindows.createForm.customFrequency.daily": "{interval, plural, one {jour} many {jours} other {jours}}", - "xpack.alerting.maintenanceWindows.createForm.customFrequency.monthly": "{interval, plural, one {mois} many {mois} other {mois}}", - "xpack.alerting.maintenanceWindows.createForm.customFrequency.weekly": "{interval, plural, one {semaine} many {semaines} other {semaines}}", - "xpack.alerting.maintenanceWindows.createForm.customFrequency.yearly": "{interval, plural, one {an} many {années} other {années}}", - "xpack.alerting.maintenanceWindows.createForm.daySummary": "{interval, plural, one {jour} many {# jours} other {# jours}}", + "xpack.alerting.injectActionParams.pagerduty.kibanaLinkText": "Règle Elastic \"{ruleName}\"", + "xpack.alerting.invalidWindowSizeErrorMessage": "Format non valide pour windowSize : \"{window}\"", + "xpack.alerting.maintenanceWindows.createForm.customFrequency.daily": "{interval, plural, one {jour} other {jours}}", + "xpack.alerting.maintenanceWindows.createForm.customFrequency.monthly": "{interval, plural, other {mois}}", + "xpack.alerting.maintenanceWindows.createForm.customFrequency.weekly": "{interval, plural, one {semaine} other {semaines}}", + "xpack.alerting.maintenanceWindows.createForm.customFrequency.yearly": "{interval, plural, one {an} other {ans}}", + "xpack.alerting.maintenanceWindows.createForm.daySummary": "{interval, plural, one {jour} other {# jours}}", "xpack.alerting.maintenanceWindows.createForm.firstShort": "Le premier {dayOfWeek}", - "xpack.alerting.maintenanceWindows.createForm.fourthShort": "Le quatrième {dayOfWeek}", + "xpack.alerting.maintenanceWindows.createForm.fourthShort": "Le 4e {dayOfWeek}", "xpack.alerting.maintenanceWindows.createForm.frequency.first": "Tous les mois le premier {dayOfWeek}", "xpack.alerting.maintenanceWindows.createForm.frequency.fourth": "Tous les mois le quatrième {dayOfWeek}", "xpack.alerting.maintenanceWindows.createForm.frequency.last": "Tous les mois le dernier {dayOfWeek}", @@ -7617,40 +8631,42 @@ "xpack.alerting.maintenanceWindows.createForm.frequency.yearlyOn": "Tous les ans le {date}", "xpack.alerting.maintenanceWindows.createForm.lastShort": "Le dernier {dayOfWeek}", "xpack.alerting.maintenanceWindows.createForm.monthlyByDaySummary": "le {monthday} du mois", - "xpack.alerting.maintenanceWindows.createForm.monthSummary": "{interval, plural, one {mois} many {# mois} other {# mois}}", - "xpack.alerting.maintenanceWindows.createForm.occurrencesSummary": "pour {count, plural, one {# occurrence} many {# occurrences} other {# occurrences}}", - "xpack.alerting.maintenanceWindows.createForm.recurrenceSummary": "chaque {frequencySummary}{on}{until}", + "xpack.alerting.maintenanceWindows.createForm.monthSummary": "{interval, plural, one {mois} other {# mois}}", + "xpack.alerting.maintenanceWindows.createForm.occurrencesSummary": "pour {count, plural, one {# occurrence} other {# occurrences}}", + "xpack.alerting.maintenanceWindows.createForm.recurrenceSummary": "tous les {frequencySummary}{on}{until}", "xpack.alerting.maintenanceWindows.createForm.recurringSummaryPrefix": "Répétition {summary}", "xpack.alerting.maintenanceWindows.createForm.repeatOnMonthlyDay": "Le {dayNumber}", - "xpack.alerting.maintenanceWindows.createForm.secondShort": "Le deuxième {dayOfWeek}", - "xpack.alerting.maintenanceWindows.createForm.thirdShort": "Le troisième {dayOfWeek}", + "xpack.alerting.maintenanceWindows.createForm.secondShort": "Le 2e {dayOfWeek}", + "xpack.alerting.maintenanceWindows.createForm.thirdShort": "Le 3e {dayOfWeek}", "xpack.alerting.maintenanceWindows.createForm.untilDateSummary": "jusqu'au {date}", "xpack.alerting.maintenanceWindows.createForm.weeklySummary": "le {weekdays}", - "xpack.alerting.maintenanceWindows.createForm.weekSummary": "{interval, plural, one {semaine} many {# semaines} other {# semaines}}", + "xpack.alerting.maintenanceWindows.createForm.weekSummary": "{interval, plural, one {semaine} other {# semaines}}", "xpack.alerting.maintenanceWindows.createForm.yearlyBymonthSummary": "le {date}", - "xpack.alerting.maintenanceWindows.createForm.yearSummary": "{interval, plural, one {an} many {# ans} other {# ans}}", + "xpack.alerting.maintenanceWindows.createForm.yearSummary": "{interval, plural, one {an} other {# ans}}", + "xpack.alerting.ruleCircuitBreaker.error.multipleRuleDetail": "Les règles ont {interval, plural, one {{interval} exécuté} other {{interval} exécutés}} par minute ; il n'y a {intervalAvailable, plural, one {qu'un seul {intervalAvailable} exécuté} other {que {intervalAvailable} exécutés}} par minute. Avant de pouvoir modifier ces règles, vous devez désactiver les autres règles ou modifier les intervalles de vérifications pour que celles-ci soient effectuées moins fréquemment.", + "xpack.alerting.ruleCircuitBreaker.error.ruleDetail": "La règle a {interval, plural, one {{interval} exécuté} other {{interval} exécutés}} par minute ; il y a seulement {intervalAvailable, plural, one {{intervalAvailable} exécuté} other {{intervalAvailable} exécutés}} par minute. Avant de pouvoir modifier ces règles, vous devez augmenter la fréquence des intervalles de vérification pour que celles-ci soient effectuées moins fréquemment. Vous pouvez également désactiver d'autres règles ou modifier leurs intervalles de vérification.", "xpack.alerting.rulesClient.invalidDate": "Date non valide pour le {field} de paramètre : \"{dateValue}\"", "xpack.alerting.rulesClient.runSoon.getTaskError": "Erreur lors de l'exécution de la règle : {errMessage}", "xpack.alerting.rulesClient.runSoon.runSoonError": "Erreur lors de l'exécution de la règle : {errMessage}", - "xpack.alerting.rulesClient.validateActions.actionsWithAlertsFilterWithoutSummaryGetter": "Ce type de règle ({ruleType}) ne peut pas avoir une action avec un filtre d'alertes. Actions : [{uuids}]", + "xpack.alerting.rulesClient.validateActions.actionsWithAlertsFilterWithoutSummaryGetter": "Ce type de règle ({ruleType}) ne peut pas avoir d'action avec un filtre d'alertes. Actions : [{uuids}]", "xpack.alerting.rulesClient.validateActions.actionsWithInvalidAlertsFilter": "Le filtre d'alertes de l'action doit avoir \"query\" ou \"timeframe\" : {uuids}", - "xpack.alerting.rulesClient.validateActions.actionsWithInvalidDays": "Les jours du filtre d'alertes de l'action a des valeurs non valides : {uuidAndDays}", + "xpack.alerting.rulesClient.validateActions.actionsWithInvalidDays": "Les jours du filtre d'alertes de l'action ont des valeurs non valides : {uuidAndDays}", "xpack.alerting.rulesClient.validateActions.actionsWithInvalidThrottles": "La fréquence de l'action ne peut pas être inférieure à l'intervalle de planification de {scheduleIntervalText} : {groups}", "xpack.alerting.rulesClient.validateActions.actionsWithInvalidTimeRange": "La plage temporelle du filtre d'alertes de l'action a une valeur non valide : {hours}", "xpack.alerting.rulesClient.validateActions.actionWithInvalidTimeframe": "La durée du filtre d'alertes de l'action a des champs manquants : jours, heures ou fuseau horaire : {uuids}", - "xpack.alerting.rulesClient.validateActions.errorSummary": "Impossible de valider les actions en raison {errorNum, plural, one {de l''erreur suivante :} many {des # erreurs suivantes :\n-} other {des # erreurs suivantes :\n-}} {errorList}", + "xpack.alerting.rulesClient.validateActions.errorSummary": "Impossible de valider les actions en raison {errorNum, plural, one {de l'erreur suivante :} other {des # erreurs suivantes :\n-}} {errorList}", "xpack.alerting.rulesClient.validateActions.invalidGroups": "Groupes d'actions non valides : {groups}", "xpack.alerting.rulesClient.validateActions.misconfiguredConnector": "Connecteurs non valides : {groups}", "xpack.alerting.rulesClient.validateActions.mixAndMatchFreqParams": "Impossible de spécifier des paramètres de fréquence par action lorsque notify_when et throttle sont définis au niveau de la règle : {groups}", "xpack.alerting.rulesClient.validateActions.notAllActionsWithFreq": "Paramètres de fréquence manquants pour les actions : {groups}", - "xpack.alerting.rulesClient.validateLegacyActions.errorSummary": "Échec de la migration des actions héritées pour la règle SIEM {ruleId} : {errorMessage}", + "xpack.alerting.rulesClient.validateLegacyActions.errorSummary": "Échec de la migration des actions existantes pour la règle SIEM {ruleId} : {errorMessage}", "xpack.alerting.ruleTypeRegistry.get.missingRuleTypeError": "Le type de règle \"{id}\" n'est pas enregistré.", "xpack.alerting.ruleTypeRegistry.register.customRecoveryActionGroupUsageError": "Le type de règle [id=\"{id}\"] ne peut pas être enregistré. Le groupe d'actions [{actionGroup}] ne peut pas être utilisé à la fois comme groupe de récupération et comme groupe d'actions actif.", "xpack.alerting.ruleTypeRegistry.register.duplicateRuleTypeError": "Le type de règle \"{id}\" est déjà enregistré.", "xpack.alerting.ruleTypeRegistry.register.invalidDefaultTimeoutRuleTypeError": "Le type de règle \"{id}\" a un intervalle par défaut non valide : {errorMessage}.", - "xpack.alerting.ruleTypeRegistry.register.invalidTimeoutRuleTypeError": "Le type de règle \"{id}\" a un délai d'expiration non valide : {errorMessage}.", + "xpack.alerting.ruleTypeRegistry.register.invalidTimeoutRuleTypeError": "Le type de règle \"{id}\" a un délai d'expiration non valide : {errorMessage}.", "xpack.alerting.ruleTypeRegistry.register.reservedActionGroupUsageError": "Le type de règle [id=\"{id}\"] ne peut pas être enregistré. Les groupes d'actions [{actionGroups}] sont réservés par le framework.", - "xpack.alerting.savedObjects.onImportText": "{rulesSavedObjectsLength} {rulesSavedObjectsLength, plural, one {règle} many {règles} other {règles}} doi(ven)t être activée(s) après l'importation.", + "xpack.alerting.savedObjects.onImportText": "{rulesSavedObjectsLength} {rulesSavedObjectsLength, plural, one {La règle doit être activée} other {Les règles doivent être activées}} après l'importation.", "xpack.alerting.serverSideErrors.expirerdLicenseErrorMessage": "Le type de règle {ruleTypeId} est désactivé, car votre licence {licenseType} a expiré.", "xpack.alerting.serverSideErrors.invalidLicenseErrorMessage": "La règle {ruleTypeId} est désactivée, car elle requiert une licence {licenseType}. Accédez à Gestion des licences pour consulter les options de mise à niveau.", "xpack.alerting.serverSideErrors.unavailableLicenseErrorMessage": "Le type de règle {ruleTypeId} est désactivé, car les informations de licence ne sont pas disponibles actuellement.", @@ -7661,8 +8677,10 @@ "xpack.alerting.breadcrumbs.editMaintenanceWindowsLinkText": "Modifier", "xpack.alerting.breadcrumbs.maintenanceWindowsLinkText": "Fenêtres de maintenance", "xpack.alerting.breadcrumbs.stackManagementLinkText": "Gestion de la Suite", + "xpack.alerting.feature.executionLogAggs.limitationQueryMsg": "Les résultats sont limités à 10 000 documents. Affinez votre recherche pour en voir d'autres.", "xpack.alerting.feature.flappingSettingsSubFeatureName": "Détection de bagotement", "xpack.alerting.feature.maintenanceWindowFeatureName": "Fenêtres de maintenance", + "xpack.alerting.feature.queryDelaySettingsSubFeatureName": "Retard de requête", "xpack.alerting.feature.rulesSettingsFeatureName": "Paramètres des règles", "xpack.alerting.getMaintenanceWindowFailure": "Impossible d'obtenir la fenêtre de maintenance.", "xpack.alerting.hooks.useGetRuleTypes.error": "Impossible de charger les types de règles.", @@ -7672,7 +8690,7 @@ "xpack.alerting.maintenanceWindows.archive.subtitle": "Les événements de fenêtre de maintenance à venir sont annulés et la fenêtre est mise en file d'attente pour suppression.", "xpack.alerting.maintenanceWindows.archive.title": "Archiver la fenêtre de maintenance", "xpack.alerting.maintenanceWindows.archiveCallout.subtitle": "Les modifications que vous avez apportées ici ne seront pas enregistrées. Voulez-vous vraiment abandonner ces modifications non enregistrées et archiver cette fenêtre de maintenance ?", - "xpack.alerting.maintenanceWindows.badge.experimentalDescription": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera au maximum de corriger tout problème, mais les fonctionnalités en version d'évaluation technique ne sont pas soumises aux accords de niveau de service d'assistance des fonctionnalités officielles en disponibilité générale.", + "xpack.alerting.maintenanceWindows.badge.experimentalDescription": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera de corriger tout problème, mais les fonctionnalités des versions d'évaluation technique ne sont pas soumises aux SLA de support des fonctionnalités officielles en disponibilité générale.", "xpack.alerting.maintenanceWindows.badge.experimentalLabel": "Version d'évaluation technique", "xpack.alerting.maintenanceWindows.badge.readOnly.text": "Lecture seule", "xpack.alerting.maintenanceWindows.badge.readOnly.tooltip": "Impossible de créer ou de modifier des fenêtres de maintenance", @@ -7712,6 +8730,11 @@ "xpack.alerting.maintenanceWindows.createForm.repeat": "Répéter", "xpack.alerting.maintenanceWindows.createForm.schedule": "Planification", "xpack.alerting.maintenanceWindows.createForm.scheduleInvalid": "La date de fin doit être supérieure ou égale à la date de début.", + "xpack.alerting.maintenanceWindows.createForm.scopedQuery.description": "Ajoutez des filtres pour affiner la portée de la fenêtre de maintenance. Vous ne pouvez sélectionner qu'une seule catégorie quand les filtres sont activés.", + "xpack.alerting.maintenanceWindows.createForm.scopedQuery.emptyErrorMessage": "Une requête ciblée est requise.", + "xpack.alerting.maintenanceWindows.createForm.scopedQuery.invalidErrorMessage": "Requête ciblée non valide.", + "xpack.alerting.maintenanceWindows.createForm.scopedQuery.title": "Filtres", + "xpack.alerting.maintenanceWindows.createForm.scopedQuery.toggleTitle": "Filtrer les alertes", "xpack.alerting.maintenanceWindows.createForm.timezone": "Fuseau horaire", "xpack.alerting.maintenanceWindows.createNewButton": "Créer la fenêtre", "xpack.alerting.maintenanceWindows.description": "Supprimez les notifications de règle pour des périodes planifiées.", @@ -7758,6 +8781,11 @@ "xpack.alerting.maintenanceWindowsUpdateFailure": "Impossible de mettre à jour la fenêtre de maintenance.", "xpack.alerting.maintenanceWindowsUpdateSuccess": "Fenêtre de maintenance mise à jour \"{title}\"", "xpack.alerting.management.section.title": "Fenêtres de maintenance", + "xpack.alerting.ruleCircuitBreaker.error.bulkEditSummary": "Impossible de modifier les règles en bloc. Le nombre maximal de tentatives par minute serait dépassé.", + "xpack.alerting.ruleCircuitBreaker.error.bulkEnableSummary": "Impossible d'activer les règles en bloc. Le nombre maximal de tentatives par minute serait dépassé.", + "xpack.alerting.ruleCircuitBreaker.error.createSummary": "La règle '{name}' ne peut pas être créée. Le nombre maximal de tentatives par minute serait dépassé.", + "xpack.alerting.ruleCircuitBreaker.error.enableSummary": "La règle '{name}' ne peut pas être activée. Le nombre maximal de tentatives par minute serait dépassé.", + "xpack.alerting.ruleCircuitBreaker.error.updateSummary": "La règle '{name}' ne peut pas être mise à jour. Le nombre maximal de tentatives par minute serait dépassé.", "xpack.alerting.rulesClient.runSoon.disabledRuleError": "Erreur lors de l'exécution de la règle : la règle est désactivée", "xpack.alerting.rulesClient.runSoon.ruleIsRunning": "La règle est déjà en cours d'exécution", "xpack.alerting.rulesClient.snoozeSchedule.limitReached": "La règle ne peut pas avoir plus de 5 planifications en répétition", @@ -7770,85 +8798,93 @@ "xpack.alerting.taskRunner.warning.maxExecutableActions": "Le nombre maximal d'actions pour ce type de règle a été atteint ; les actions excédentaires n'ont pas été déclenchées.", "xpack.alerting.taskRunner.warning.maxQueuedActions": "Le nombre maximal d'actions en file d'attente a été atteint ; les actions excédentaires n'ont pas été déclenchées.", "xpack.apm.agentConfig.deleteModal.text": "Vous êtes sur le point de supprimer la configuration du service \"{serviceName}\" et de l'environnement \"{environment}\".", - "xpack.apm.agentConfig.deleteSection.deleteConfigFailedText": "Une erreur est survenue lors de la suppression d'une configuration pour \"{serviceName}\". Erreur : \"{errorMessage}\"", - "xpack.apm.agentConfig.deleteSection.deleteConfigSucceededText": "Vous avez supprimé une configuration de \"{serviceName}\" avec succès. La propagation jusqu'aux agents pourra prendre un certain temps.", - "xpack.apm.agentConfig.range.errorText": "{rangeType, select, between {Doit être compris entre {min} et {max}} gt {Doit être supérieur à {min}} lt {Doit être inférieur à {max}} other {Doit être un nombre entier}}", + "xpack.apm.agentConfig.deleteSection.deleteConfigFailedText": "Une erreur est survenue lors de la suppression d'une configuration de \"{serviceName}\". Erreur : \"{errorMessage}\"", + "xpack.apm.agentConfig.deleteSection.deleteConfigSucceededText": "Vous avez supprimé une configuration de \"{serviceName}\". La propagation jusqu'aux agents pourra prendre un certain temps.", + "xpack.apm.agentConfig.range.errorText": "{rangeType, select,\n between {doit être compris entre {min} et {max}}\n gt {doit être supérieur à {min}}\n lt {doit être inférieur à {max}}\n other {doit être un entier}\n }", "xpack.apm.agentConfig.saveConfig.failed.text": "Une erreur est survenue pendant l'enregistrement de la configuration de \"{serviceName}\". Erreur : \"{errorMessage}\"", "xpack.apm.agentConfig.saveConfig.succeeded.text": "La configuration de \"{serviceName}\" a été enregistrée. La propagation jusqu'aux agents pourra prendre un certain temps.", "xpack.apm.agentExplorer.agentLatestVersion.airGappedMessage": "La dernière version de l'agent {agentName} n'a pas pu être récupérée dans le référentiel. Veuillez contacter votre administrateur pour vérifier les logs de serveur.", - "xpack.apm.agentExplorerInstanceTable.agentVersionColumnLabel.multipleVersions": "{versionsCount, plural, one {1 version} many {# versions} other {# versions}}", + "xpack.apm.agentExplorerInstanceTable.agentVersionColumnLabel.multipleVersions": "{versionsCount, plural, one {1 version} other {# versions}}", "xpack.apm.agentExplorerInstanceTable.noServiceNodeName.tooltip.linkToDocs": "Vous pouvez configurer le nom du nœud de service via {seeDocs}.", - "xpack.apm.agentExplorerTable.agentVersionColumnLabel.multipleVersions": "{versionsCount, plural, one {1 version} many {# versions} other {# versions}}", - "xpack.apm.alertDetails.latencyAlertHistoryChart.error.toastDescription": "Une erreur s’est produite lors de la récupération des données graphiques de l’historique d’alertes de latence pour {serviceName}", - "xpack.apm.alerts.anomalySeverity.scoreDetailsDescription": "Score de {value} {value, select, critical {} other {et supérieur}}", - "xpack.apm.alerts.timeLabelForData": "Dernier {lookback} {timeLabel} de données montrant les groupes {displayedGroups}/{totalGroups}", - "xpack.apm.alertTypes.errorCount.reason": "Le nombre d'erreurs est {measured} dans le dernier {interval} pour {group}. Alerte lorsque > {threshold}.", - "xpack.apm.alertTypes.minimumWindowSize.description": "La valeur minimale recommandée est {sizeValue} {sizeUnit}. Elle permet de s'assurer que l'alerte comporte suffisamment de données à évaluer. Si vous choisissez une valeur trop basse, l'alerte ne se déclenchera peut-être pas comme prévu.", - "xpack.apm.alertTypes.transactionDuration.reason": "La latence de {aggregationType} est {measured} dans le dernier {interval} pour {group}. Alerte lorsque > {threshold}.", - "xpack.apm.alertTypes.transactionErrorRate.reason": "L'échec des transactions est {measured} dans le dernier {interval} pour {group}. Alerte lorsque > {threshold}.", + "xpack.apm.agentExplorerTable.agentVersionColumnLabel.multipleVersions": "{versionsCount, plural, one {1 version} other {# versions}}", + "xpack.apm.alertDetails.latencyAlertHistoryChart.error.toastDescription": "Une erreur s'est produite lors de la récupération des données graphiques de l'historique d'alertes de latence pour {serviceName}", + "xpack.apm.alerts.anomalySeverity.scoreDetailsDescription": "score {value} {value, select, critical {} other {et plus}}", + "xpack.apm.alerts.timeLabelForData": "Dernières {lookback} {timeLabel} de données, ({displayedGroups} groupes affichés sur {totalGroups}", + "xpack.apm.alertTypes.errorCount.reason": "Le nombre d'erreurs est {measured} au cours des derniers/dernières {interval} pour {group}. Alerte lorsque > {threshold}.", + "xpack.apm.alertTypes.minimumWindowSize.description": "La valeur minimale requise est {sizeValue} {sizeUnit}. Elle permet de s'assurer que l'alerte comporte suffisamment de données à évaluer. Si vous choisissez une valeur trop basse, l'alerte ne se déclenchera peut-être pas comme prévu.", + "xpack.apm.alertTypes.transactionDuration.reason": "La latence de {aggregationType} est {measured} au cours des derniers/dernières {interval} pour {group}. Alerte lorsque > {threshold}.", + "xpack.apm.alertTypes.transactionDurationAnomaly.reason": "Une anomalie {severityLevel} {detectorTypeLabel} avec un score de {anomalyScore} a été détectée dans le dernier {interval} pour {serviceName}.", + "xpack.apm.alertTypes.transactionErrorRate.reason": "L'échec des transactions est {measured} au cours des derniers/dernières {interval} pour {group}. Alerte lorsque > {threshold}.", "xpack.apm.anomalyDetection.createJobs.failed.text": "Une erreur est survenue lors de la création d'une ou de plusieurs tâches de détection des anomalies pour les environnements de service APM [{environments}]. Erreur : \"{errorMessage}\"", - "xpack.apm.anomalyDetection.createJobs.succeeded.text": "Tâches de détection des anomalies créées avec succès pour les environnements de service APM [{environments}]. Le démarrage de l'analyse du trafic à la recherche d'anomalies par le Machine Learning va prendre un certain temps.", + "xpack.apm.anomalyDetection.createJobs.succeeded.text": "Tâches de détection des anomalies créées pour les environnements de service APM [{environments}]. Le démarrage de l'analyse du trafic à la recherche d'anomalies par le Machine Learning va prendre un certain temps.", "xpack.apm.anomalyDetectionSetup.notEnabledForEnvironmentText": "La détection des anomalies n'est pas encore activée pour l'environnement \"{currentEnvironment}\". Cliquez pour continuer la configuration.", - "xpack.apm.compositeSpanCallsLabel": ", {count} appels, sur une moyenne de {duration}", - "xpack.apm.correlations.ccsWarningCalloutBody": "Les données pour l'analyse de corrélation n'ont pas pu être totalement récupérées. Cette fonctionnalité est prise en charge uniquement pour {version} et versions ultérieures.", + "xpack.apm.compositeSpanCallsLabel": ", {count} appels, sur une moyenne de {duration}", + "xpack.apm.correlations.ccsWarningCalloutBody": "Les données pour l'analyse de corrélation n'ont pas pu être totalement récupérées. Cette fonctionnalité est prise en charge uniquement à partir des versions {version} et ultérieures.", "xpack.apm.correlations.failedTransactions.helpPopover.basicExplanation": "Les corrélations vous aident à découvrir les attributs qui ont le plus d'influence pour distinguer les échecs et les succès d'une transaction. Les transactions sont considérées comme un échec lorsque leur valeur {field} est {value}.", "xpack.apm.correlations.progressTitle": "Progression : {progress} %", + "xpack.apm.CrashGroupDetails.CrashGroupTitle": "Groupe de panne {errorGroupId}", "xpack.apm.criticalPathFlameGraph.selfTime": "Heure automatique : {value}", "xpack.apm.criticalPathFlameGraph.totalTime": "Temps total : {value}", + "xpack.apm.diagnosticsApmDocuments.from:BadgeLabel": "À partir de : {date}", + "xpack.apm.diagnosticsApmDocuments.to:BadgeLabel": "Jusqu'à : {date}", "xpack.apm.durationDistribution.chart.percentileMarkerLabel": "{markerPercentile}e centile", - "xpack.apm.durationDistributionChart.totalSpansCount": "{totalDocCount} {totalDocCount, plural, one {intervalle} many {intervalles} other {intervalles}} au total", - "xpack.apm.durationDistributionChart.totalTransactionsCount": "{totalDocCount} {totalDocCount, plural, one {transaction} many {transactions} other {transactions}} au total", - "xpack.apm.durationDistributionChartWithScrubber.selectionText": "Sélection : {formattedSelection}", + "xpack.apm.durationDistributionChart.totalSpansCount": "Total : {totalDocCount} {totalDocCount, plural, one {intervalle} other {intervalles}}", + "xpack.apm.durationDistributionChart.totalTransactionsCount": "Total : {totalDocCount} {totalDocCount, plural, one {transaction} other {transactions}}", + "xpack.apm.durationDistributionChartWithScrubber.selectionText": "Selection : {formattedSelection}", "xpack.apm.errorGroupDetails.errorGroupTitle": "Groupe d'erreurs {errorGroupId}", "xpack.apm.errorGroupDetails.occurrencesLabel": "{occurrencesCount} occ", "xpack.apm.errorGroupTopTransactions.column.occurrences.valueLabel": "{occurrences} occ.", - "xpack.apm.errorSampleDetails.viewOccurrencesInDiscoverButtonLabel": "Afficher {occurrencesCount}{occurrencesCount, plural, one {occurrence} many {occurrences} other {occurrences}} dans Discover", + "xpack.apm.errorOverview.treemap.subtitle": "Compartimentage {currentTreemap} affichant le nombre total et les plus affectés", + "xpack.apm.errorOverview.treemap.title": "{currentTreemap} le(s) plus affecté(s)", + "xpack.apm.errorSampleDetails.viewOccurrencesInDiscoverButtonLabel": "Visualiser {occurrencesCount} {occurrencesCount, plural, one {l'occurrence} other {les occurrences}} dans Discover", + "xpack.apm.errorsOverview.treemap.title": "{currentTreemap} le(s) plus affecté(s)", "xpack.apm.errorsTable.occurrences": "{occurrences} occ.", "xpack.apm.exactTransactionRateLabel": "{value} tpm", "xpack.apm.fleet_integration.settings.apmAgent.description": "Configurez l'instrumentation pour les applications {title}.", "xpack.apm.fleet_integration.settings.tailSamplingDocsHelpText": "Pour en savoir plus sur les politiques d'échantillonnage de la queue, consultez notre {link}.", "xpack.apm.fleetIntegration.apmAgent.runtimeAttachment.version.helpText": "Entrez la {versionLink} de l'agent Java Elastic APM qui doit être attachée.", - "xpack.apm.fleetIntegration.javaRuntime.discoveryRulesDescription": "Pour chaque JVM en cours d'exécution, les règles de découverte sont évaluées dans l'ordre où elles sont fournies. La première règle de correspondance détermine le résultat. Pour en savoir plus, consultez la {docLink}.", - "xpack.apm.instancesLatencyDistributionChartTooltipInstancesTitle": "{instancesCount} {instancesCount, plural, one {instance} many {instances} other {instances}}", - "xpack.apm.itemsBadge.placeholder": "{itemsCount, plural, one {1 élément} many {Éléments #} other {Éléments #}}", - "xpack.apm.kueryBar.placeholder": "Rechercher des {event, select, transaction {transactions} metric {indicateurs} error {erreurs} other {transactions, erreurs et indicateurs}} (par exemple {queryExample})", - "xpack.apm.onboarding.apiKey.error.calloutMessage": "Erreur : {errorMessage}", - "xpack.apm.onboarding.apiKey.warning.calloutMessage": "L’utilisateur n’a pas le privilège suivant :{missingPrivilege}. Veuillez ajouter le privilège d’application APM manquant au rôle de l’utilisateur authentifié", - "xpack.apm.onboarding.config_otel.description1": "(1) Les agents et SDK OpenTelemetry doivent prendre en charge les variables {otelExporterOtlpEndpoint}, {otelExporterOtlpHeaders} et {otelResourceAttributes}. Il se peut que certains composants instables ne répondent pas encore à cette exigence.", + "xpack.apm.fleetIntegration.javaRuntime.discoveryRulesDescription": "Pour chaque JVM en cours d'exécution, les règles de découverte sont évaluées dans l'ordre où elles sont fournies. La première règle de correspondance détermine le résultat. Découvrez plus d'informations dans le {docLink}.", + "xpack.apm.instancesLatencyDistributionChartTooltipInstancesTitle": "{instancesCount} {instancesCount, plural, one {instance} other {instances}}", + "xpack.apm.intervalDocCount.TextLabel": "({docCount} {docCount, plural, one {événement} other {événements}})", + "xpack.apm.itemsBadge.placeholder": "{itemsCount, plural, one {1 élément} other {# éléments}}", + "xpack.apm.kueryBar.placeholder": "Rechercher {event, select,\n transaction {des transactions}\n metric {des indicateurs}\n error {des erreurs}\n other {des transactions, des erreurs et des indicateurs}\n } (par ex. {queryExample})", + "xpack.apm.onboarding.apiKey.error.calloutMessage": "Erreur : {errorMessage}.", + "xpack.apm.onboarding.apiKey.warning.calloutMessage": "L'utilisateur n'a pas le privilège suivant - {missingPrivilege}. Veuillez ajouter le privilège d’application APM manquant au rôle de l’utilisateur authentifié", + "xpack.apm.onboarding.config_otel.description1": "(1) Les agents et SDK OpenTelemetry doivent prendre en charge les variables {otelExporterOtlpEndpoint}, {otelExporterOtlpHeaders} et {otelResourceAttributes}. Certains composants instables peuvent ne pas encore répondre à cette exigence.", "xpack.apm.onboarding.config_otel.description3": "La liste exhaustive des variables d'environnement, les paramètres de ligne de commande et les extraits de code de configuration (conformes à la spécification OpenTelemetry) se trouvent dans le {otelInstrumentationGuide}. Certains clients OpenTelemetry instables peuvent ne pas prendre en charge toutes les fonctionnalités et nécessitent peut-être d'autres mécanismes de configuration.", "xpack.apm.onboarding.django.configure.textPost": "Consultez la [documentation]({documentationLink}) pour une utilisation avancée.", - "xpack.apm.onboarding.dotNet.configureAgent.textPost": "Si vous ne transférez pas une instance \"IConfiguration\" à l'agent (par ex., pour les applications non ASP.NET Core) vous pouvez également configurer l'agent par le biais de variables d'environnement. \n Pour une utilisation avancée, consultez [la documentation]({documentationLink}), qui comprend notamment le guide de démarrage rapide pour l'[instrumentation de Profiler Auto]({profilerLink}).", - "xpack.apm.onboarding.dotNet.download.textPre": "Ajoutez le(s) package(s) d'agent depuis [NuGet]({allNuGetPackagesLink}) à votre application .NET. Plusieurs packages NuGet sont disponibles pour différents cas d'utilisation. \n\nPour une application ASP.NET Core avec Entity Framework Core, téléchargez le package [Elastic.Apm.NetCoreAll]({netCoreAllApmPackageLink}). Ce package ajoutera automatiquement chaque composant d'agent à votre application. \n\n Si vous souhaitez minimiser les dépendances, vous pouvez utiliser le package [Elastic.Apm.AspNetCore]({aspNetCorePackageLink}) uniquement pour le monitoring d'ASP.NET Core ou le package [Elastic.Apm.EfCore]({efCorePackageLink}) uniquement pour le monitoring d'Entity Framework Core. \n\n Si vous souhaitez seulement utiliser l'API d'agent publique pour l'instrumentation manuelle, utilisez le package [Elastic.Apm]({elasticApmPackageLink}).", + "xpack.apm.onboarding.dotNet.configureAgent.textPost": "Si vous ne transférez pas une instance `IConfiguration` à l'agent (par ex., pour les applications non ASP.NET Core) vous pouvez également configurer l'agent par le biais de variables d'environnement. \n Pour une utilisation avancée, consultez [the documentation]({documentationLink}), qui comprend notamment le guide de démarrage rapide pour [Profiler Auto instrumentation]({profilerLink}).", + "xpack.apm.onboarding.dotNet.download.textPre": "Ajoutez le ou les packages d'agent depuis [NuGet]({allNuGetPackagesLink}) à votre application .NET. Plusieurs packages NuGet sont disponibles pour différents cas d'utilisation. \n\nPour une application ASP.NET Core avec Entity Framework Core, téléchargez le package [Elastic.Apm.NetCoreAll]({netCoreAllApmPackageLink}). Ce package ajoutera automatiquement chaque composant d'agent à votre application. \n\n Si vous souhaitez minimiser les dépendances, vous pouvez utiliser le package [Elastic.Apm.AspNetCore]({aspNetCorePackageLink}) uniquement pour le monitoring d'ASP.NET Core ou le package [Elastic.Apm.EfCore]({efCorePackageLink}) uniquement pour le monitoring d'Entity Framework Core. \n\n Si vous souhaitez seulement utiliser l'API d'agent publique pour l'instrumentation manuelle, utilisez le package [Elastic.Apm]({elasticApmPackageLink}).", "xpack.apm.onboarding.flask.configure.textPost": "Consultez la [documentation]({documentationLink}) pour une utilisation avancée.", "xpack.apm.onboarding.go.configure.textPost": "Consultez la [documentation]({documentationLink}) pour une configuration avancée.", "xpack.apm.onboarding.go.instrument.textPost": "Consultez la [documentation]({documentationLink}) pour obtenir un guide détaillé pour l'instrumentation du code source Go.", "xpack.apm.onboarding.java.download.textPre": "Téléchargez le fichier jar de l'agent depuis [Maven Central]({mavenCentralLink}). N'ajoutez **pas** l'agent comme dépendance de votre application.", - "xpack.apm.onboarding.java.startApplication.textPost": "Consultez la [documentation]({documentationLink}) pour découvrir les options de configuration et l’utilisation avancée.", - "xpack.apm.onboarding.java.startApplication.textPre": "Ajoutez l'indicateur \"-javaagent\" et configurez l'agent avec les propriétés du système.\n\n * Définir le nom de service requis (caractères autorisés : a-z, A-Z, 0-9, -, _ et espace)\n * Définir l'URL personnalisée du serveur APM (par défaut : {customApmServerUrl})\n * Définir le token secret du serveur APM\n * Définir l'environnement de service\n * Définir le package de base de votre application", - "xpack.apm.onboarding.node.configure.textPost": "Consultez [la documentation]({documentationLink}) pour une utilisation avancée, notamment pour savoir comment l'utiliser avec [les modules Babel/ES]({babelEsModulesLink}).", + "xpack.apm.onboarding.java.startApplication.textPost": "Consultez la [documentation]({documentationLink}) pour découvrir les options de configuration et l'utilisation avancée.", + "xpack.apm.onboarding.java.startApplication.textPre": "Ajoutez l'indicateur `-javaagent` et configurez l'agent avec les propriétés du système.\n\n * Définir le nom de service requis (caractères autorisés : a-z, A-Z, 0-9, -, _ et espace)\n * Définir l'URL personnalisée du serveur APM (par défaut : {customApmServerUrl})\n * Définir le token secret du serveur APM\n * Définir l'environnement de service\n * Définir le package de base de votre application", + "xpack.apm.onboarding.node.configure.textPost": "Consultez [the documentation]({documentationLink}) pour une utilisation avancée, notamment pour connaître l'utilisation avec [Babel/ES Modules]({babelEsModulesLink}).", "xpack.apm.onboarding.otel.configureAgent.textPost": "Consultez la [documentation]({documentationLink}) pour découvrir les options de configuration et l'utilisation avancée.\n\n", "xpack.apm.onboarding.otel.configureAgent.textPre": "Spécifiez les paramètres OpenTelemetry suivants dans le cadre du démarrage de votre application. Notez que les SDK OpenTelemetry exigent du code de démarrage en plus de ces paramètres de configuration. Pour plus de détails, consultez la [documentation OpenTelemetry Elastic]({openTelemetryDocumentationLink}) et les [guides d'instrumentation OpenTelemetry]({openTelemetryInstrumentationLink}).", "xpack.apm.onboarding.otel.download.textPre": "Consultez les [guides d'instrumentation OpenTelemetry]({openTelemetryInstrumentationLink}) pour télécharger l'agent ou le SDK OpenTelemetry pour votre langage.", "xpack.apm.onboarding.php.configureAgent.textPost": "Consultez la [documentation]({documentationLink}) pour découvrir les options de configuration et l'utilisation avancée.\n\n", - "xpack.apm.onboarding.php.download.textPre": "Téléchargez le package correspondant à votre plateforme depuis les [publications GitHub]({githubReleasesLink}).", + "xpack.apm.onboarding.php.download.textPre": "Téléchargez le package correspondant à votre plateforme depuis [GitHub releases]({githubReleasesLink}).", "xpack.apm.onboarding.php.installPackage.textPost": "Consultez la [documentation]({documentationLink}) pour les commandes d'installation sur les autres plateformes prises en charge et pour l'installation avancée.", "xpack.apm.onboarding.rack.configure.textPost": "Consultez la [documentation]({documentationLink}) pour découvrir les options de configuration et l'utilisation avancée.\n\n", - "xpack.apm.onboarding.rack.createConfig.textPre": "Créer un fichier de configuration {configFile} :", + "xpack.apm.onboarding.rack.createConfig.textPre": "Créez un fichier config {configFile} :", "xpack.apm.onboarding.rails.configure.textPost": "Consultez la [documentation]({documentationLink}) pour découvrir les options de configuration et l'utilisation avancée.\n\n", - "xpack.apm.onboarding.rails.configure.textPre": "APM se lance automatiquement au démarrage de l'application. Configurer l'agent, en créant le fichier de configuration {configFile}", + "xpack.apm.onboarding.rails.configure.textPre": "APM se lance automatiquement au démarrage de l'application. Configurer l'agent, en créant le fichier config {configFile}", "xpack.apm.onboarding.shared_clients.configure.commands.serverUrlHint": "Définir l'URL personnalisée du serveur APM (par défaut : {defaultApmServerUrl}). L'URL doit être complète et inclure le protocole (http ou https) et le port.", - "xpack.apm.onboarding.specProvider.longDescription": "Le monitoring des performances applicatives (APM) collecte les indicateurs et les erreurs de performance approfondies depuis votre application. Cela vous permet de monitorer les performances de milliers d'applications en temps réel. [En savoir plus]({learnMoreLink}).", + "xpack.apm.onboarding.specProvider.longDescription": "Le monitoring des performances applicatives (APM) collecte les indicateurs et les erreurs de performance approfondies depuis votre application. Cela vous permet de monitorer les performances de milliers d'applications en temps réel. [Learn more]({learnMoreLink}).", "xpack.apm.profiling.callout.title": "Affichage des informations de profilage de l'hôte ou des hôtes exécutant des services {serviceName}", - "xpack.apm.propertiesTable.agentFeature.noResultFound": "Aucun résultat pour \"{value}\".", - "xpack.apm.runtimeMetricsJsonDashboards.loadFailure.toast.title": "Erreur lors du chargement du tableau de bord pour l’agent \"{agentName}\" sur l’exécution \"{runtimeName}\".", - "xpack.apm.serverlessMetrics.summary.lambdaFunctions": "{serverlessFunctionsTotal, plural, one {fonction} many {Fonctions} other {Fonctions}} lambda", + "xpack.apm.propertiesTable.agentFeature.noResultFound": "Pas de résultats pour \"{value}\".", + "xpack.apm.runtimeMetricsJsonDashboards.loadFailure.toast.title": "Erreur lors du chargement du tableau de bord pour l'agent \"{agentName}\" sur l'exécution \"{runtimeName}\".", + "xpack.apm.serverlessMetrics.summary.lambdaFunctions": "{serverlessFunctionsTotal, plural, one {fonction Lambda} other {fonctions Lambda}}", "xpack.apm.serviceDashboards.addFailure.toast.title": "Erreur lors de l'ajout du tableau de bord \"{dashboardName}\"", "xpack.apm.serviceDashboards.editSuccess.toast.title": "Tableau de bord \"{dashboardName}\" modifié", "xpack.apm.serviceDashboards.linkSuccess.toast.title": "Tableau de bord \"{dashboardName}\" ajouté", "xpack.apm.serviceDashboards.unlinkFailure.toast.title": "Erreur lors de la dissociation du tableau de bord \"{dashboardName}\"", "xpack.apm.serviceDashboards.unlinkSuccess.toast.title": "Tableau de bord \"{dashboardName}\" dissocié", - "xpack.apm.serviceGroups.cardsList.alertCount": "{alertsCount} {alertsCount, plural, one {alerte} many {alertes} other {alertes}}", - "xpack.apm.serviceGroups.cardsList.serviceCount": "{servicesCount} {servicesCount, plural, one {service} many {services correspondent à la requête} other {services}}", + "xpack.apm.serviceGroups.cardsList.alertCount": "{alertsCount} {alertsCount, plural, one {alerte} other {alertes}}", + "xpack.apm.serviceGroups.cardsList.serviceCount": "{servicesCount} {servicesCount, plural, one {service} other {services}}", "xpack.apm.serviceGroups.createFailure.toast.title": "Erreur lors de la création du groupe \"{groupName}\"", "xpack.apm.serviceGroups.createSucess.toast.title": "Groupe \"{groupName}\" créé", "xpack.apm.serviceGroups.deleteFailure.toast.title": "Erreur lors de la suppression du groupe \"{groupName}\"", @@ -7856,110 +8892,114 @@ "xpack.apm.serviceGroups.deleteSuccess.toast.title": "Groupe \"{groupName}\" supprimé", "xpack.apm.serviceGroups.editFailure.toast.title": "Erreur lors de la modification du groupe \"{groupName}\"", "xpack.apm.serviceGroups.editSucess.toast.title": "Groupe \"{groupName}\" modifié", - "xpack.apm.serviceGroups.groupsCount": "{servicesCount} {servicesCount, plural, =0 {groupe} one {regrouper} many {des groupes} other {groupes}}", + "xpack.apm.serviceGroups.groupsCount": "{servicesCount} {servicesCount, plural, =0 {groupe} one {groupe} other {groupes}}", "xpack.apm.serviceGroups.invalidFields.message": "Le filtre de requête pour le groupe de services ne prend pas en charge les champs [{unsupportedFieldNames}]", - "xpack.apm.serviceGroups.selectServicesForm.matchingServiceCount": "{servicesCount} {servicesCount, plural, =0 {service correspond à la requête} one {service correspond à la requête} many {services correspondent à la requête} other {services correspondent à la requête}}", - "xpack.apm.serviceGroups.tour.content.link": "Pour en savoir plus, consultez la {docsLink}.", - "xpack.apm.serviceIcons.serviceDetails.cloud.availabilityZoneLabel": "{zones, plural, =0 {Zone de disponibilité} one {Zone de disponibilité} many {Zones de disponibilité} other {Zones de disponibilité}} ", - "xpack.apm.serviceIcons.serviceDetails.cloud.faasTriggerTypeLabel": "{triggerTypes, plural, =0 {Type de déclenchement} one {Type de déclenchement} many {Types de déclenchement} other {Types de déclenchement}} ", - "xpack.apm.serviceIcons.serviceDetails.cloud.functionNameLabel": "{functionNames, plural, =0 {Nom de fonction} one {Nom de fonction} many {Noms de fonction} other {Noms de fonction}} ", - "xpack.apm.serviceIcons.serviceDetails.cloud.machineTypesLabel": "{machineTypes, plural, =0 {Type de machine} one {Type de machine} many {Types de machine} other {Types de machine}} ", - "xpack.apm.serviceIcons.serviceDetails.cloud.regionLabel": "{regions, plural, =0 {Région} one {Région} many {Régions} other {Régions}} ", + "xpack.apm.serviceGroups.selectServicesForm.matchingServiceCount": "{servicesCount} {servicesCount, plural, =0 {service correspond} one {service correspond} other {services correspondent}} à la requête", + "xpack.apm.serviceGroups.tour.content.link": "Découvrez plus d'informations dans le {docsLink}.", + "xpack.apm.serviceIcons.serviceDetails.cloud.availabilityZoneLabel": "{zones, plural, =0 {Zone de disponibilité} one {Zone de disponibilité} other {Zones de disponibilité}} ", + "xpack.apm.serviceIcons.serviceDetails.cloud.faasTriggerTypeLabel": "{triggerTypes, plural, =0 {Type de déclencheur} one {Type de déclencheur} other {Types de déclencheurs}} ", + "xpack.apm.serviceIcons.serviceDetails.cloud.functionNameLabel": "{functionNames, plural, =0 {Nom de fonction} one {Nom de fonction} other {Noms de fonction}} ", + "xpack.apm.serviceIcons.serviceDetails.cloud.machineTypesLabel": "{machineTypes, plural, =0{Type de machine} one {Type de machine} other {Types de machines}} ", + "xpack.apm.serviceIcons.serviceDetails.cloud.regionLabel": "{regions, plural, =0 {Region} one {Région} other {Régions}} ", "xpack.apm.serviceMap.resourceCountLabel": "{count} ressources", "xpack.apm.serviceNodeMetrics.unidentifiedServiceNodesWarningText": "Nous n'avons pas pu déterminer à quelles JVM ces indicateurs correspondent. Cela provient probablement du fait que vous exécutez une version du serveur APM antérieure à 7.5. La mise à niveau du serveur APM vers la version 7.5 ou supérieure devrait résoudre le problème. Pour plus d'informations sur la mise à niveau, consultez {link}. Vous pouvez également utiliser la barre de recherche de Kibana pour filtrer par nom d'hôte, par ID de conteneur ou en fonction d'autres champs.", "xpack.apm.serviceOveriew.errorsTableOccurrences": "{occurrences} occ.", + "xpack.apm.serviceOverview.crashTableOccurrences": "{occurrences} occ.", "xpack.apm.serviceOverview.embeddedMap.error.toastDescription": "L'usine incorporable ayant l'ID \"{embeddableFactoryId}\" est introuvable.", "xpack.apm.serviceOverview.embeddedMap.subtitle": "Carte affichant le nombre total de {currentMap} en fonction du pays et de la région", - "xpack.apm.servicesTable.environmentCount": "{environmentCount, plural, one {1 environnement} many {# environnements} other {# environnements}}", - "xpack.apm.settings.agentKeys.apiKeysDisabledErrorDescription": "Contactez votre administrateur système et reportez-vous à {link} pour activer les clés d'API.", - "xpack.apm.settings.agentKeys.copyAgentKeyField.title": "Clé \"{name}\" créée", + "xpack.apm.serviceOverview.errorsTableOccurrences": "{occurrences} occ.", + "xpack.apm.serviceOverview.instancesTableTitle": "{count} le plus élevé {count, plural, one {instance} other {instances}}", + "xpack.apm.servicesTable.environmentCount": "{environmentCount, plural, one {1 environnement} other {# environnements}}", + "xpack.apm.settings.agentKeys.apiKeysDisabledErrorDescription": "Contactez votre administrateur système et reportez-vous aux {link} pour activer les clés d'API.", + "xpack.apm.settings.agentKeys.copyAgentKeyField.title": "Création de la clé \"{name}\" effectuée", "xpack.apm.settings.agentKeys.crate.failed": "Erreur lors de la création de la clé de l'agent APM \"{keyName}\". Erreur : \"{message}\"", "xpack.apm.settings.agentKeys.deleteConfirmModal.title": "Supprimer la clé de l'agent APM \"{name}\" ?", "xpack.apm.settings.agentKeys.invalidate.failed": "Erreur lors de la suppression de la clé de l'agent APM \"{name}\"", - "xpack.apm.settings.agentKeys.invalidate.succeeded": "Clé de l'agent APM \"{name}\" supprimée", + "xpack.apm.settings.agentKeys.invalidate.succeeded": "Suppression de la clé de l'agent APM \"{name}\"", "xpack.apm.settings.anomalyDetection.jobList.mlDescriptionText": "Pour ajouter la détection des anomalies à un nouvel environnement, créez une tâche de Machine Learning. Vous pouvez gérer les tâches de Machine Learning existantes dans {mlJobsLink}.", - "xpack.apm.settings.apmIndices.applyChanges.failed.text": "Un problème est survenu lors de l'application des index. Erreur : {errorMessage}", + "xpack.apm.settings.apmIndices.applyChanges.failed.text": "Un problème est survenu lors de l'application des index. Erreur : {errorMessage}.", "xpack.apm.settings.apmIndices.helpText": "Remplace {configurationName} : {defaultValue}", - "xpack.apm.settings.apmIndices.spaceDescription": "Les paramètres d'index s'appliquent à l'espace {spaceName}.", + "xpack.apm.settings.apmIndices.spaceDescription": "Les paramètres des index s'appliquent à l'espace {spaceName}.", "xpack.apm.settings.customLink.create.failed.message": "Un problème est survenu lors de l'enregistrement du lien. Erreur : \"{errorMessage}\"", "xpack.apm.settings.customLink.emptyPromptText": "Nous allons y remédier ! Vous pouvez ajouter des liens personnalisés au menu Actions à partir des détails de transaction de chaque service. Créez un lien utile vers le portail d'assistance de votre société, ou ouvrez un rapport de bug. Besoin d'autres idées ? Consultez {customLinkDocLinkText}.", - "xpack.apm.settings.customLink.flyout.link.url.helpText": "Ajoutez les variables des noms de champ à votre URL pour appliquer des valeurs, par exemple {sample}.", + "xpack.apm.settings.customLink.flyout.link.url.helpText": "Ajoutez les variables des noms de champ à votre URL pour appliquer des valeurs, par ex., {sample}.", "xpack.apm.settings.customLink.preview.contextVariable.noMatch": "Nous n'avons pas trouvé de valeur correspondante pour {variables} dans le document d'exemple de transaction.", - "xpack.apm.settings.customLink.table.noResultFound": "Aucun résultat pour \"{value}\".", - "xpack.apm.settings.schema.descriptionText": "Nous avons créé un processus simple et transparent pour passer du binaire du serveur APM à Elastic Agent. Attention, il s'agit d'une action {irreversibleEmphasis} qui ne peut être réalisée que par un {superuserEmphasis} disposant d'un accès à Fleet. En savoir plus sur {elasticAgentDocLink}.", + "xpack.apm.settings.customLink.table.noResultFound": "Pas de résultats pour \"{value}\".", + "xpack.apm.settings.schema.descriptionText": "Nous avons créé un processus simple et transparent pour passer du binaire du serveur APM à Elastic Agent. Attention, il s'agit d'une action {irreversibleEmphasis} qui ne peut être réalisée que par un {superuserEmphasis} bénéficiant d'un accès à Fleet. En savoir plus sur {elasticAgentDocLink}.", "xpack.apm.settings.schema.disabledReason": "L'option Passer à Elastic Agent n'est pas disponible : {reasons}", - "xpack.apm.settings.schema.success.returnText": "ou revenez simplement à {serviceInventoryLink}.", - "xpack.apm.settings.upgradeAvailable.description": "Même si votre intégration APM est configurée, une nouvelle version de l'intégration APM est disponible pour une mise à niveau avec votre stratégie de package. Consultez {upgradePackagePolicyLink} pour tirer le meilleur parti de votre configuration.", + "xpack.apm.settings.schema.success.returnText": "ou revenez simplement à l'{serviceInventoryLink}.", + "xpack.apm.settings.upgradeAvailable.description": "Même si votre intégration APM est configurée, une nouvelle version de l'intégration APM est disponible pour une mise à niveau avec votre politique de package. Consultez {upgradePackagePolicyLink} pour tirer le meilleur parti de votre configuration.", "xpack.apm.spanLinks.combo.childrenLinks": "Liens entrants ({linkedChildren})", "xpack.apm.spanLinks.combo.parentsLinks": "Liens sortants ({linkedParents})", - "xpack.apm.stacktraceTab.libraryFramesToogleButtonLabel": "{count, plural, one {# cadre de la bibliothèque} many {# cadres de la bibliothèque} other {# cadres de la bibliothèque}}", + "xpack.apm.stacktraceTab.libraryFramesToogleButtonLabel": "{count, plural, one {# cadre de bibliothèque} other {# cadres de bibliothèque}}", "xpack.apm.storageExplorer.longLoadingTimeCalloutText": "Activez le chargement progressif de données et le tri optimisé pour la liste de services dans {kibanaAdvancedSettingsLink}.", - "xpack.apm.tooltip.maxGroup.message": "La cardinalité des données APM collectées est trop élevée. Veuillez consulter {apmServerDocs} pour atténuer la situation.", - "xpack.apm.transactionDetails.errorCount": "{errorCount, number} {errorCount, plural, one {Erreur} many {Erreurs} other {Erreurs}}", - "xpack.apm.transactionDetails.transFlyout.callout.agentDroppedSpansMessage": "L'agent APM qui a signalé cette transaction a abandonné {dropped} intervalles ou plus, d'après sa configuration.", + "xpack.apm.tooltip.maxGroup.message": "La cardinalité des données APM collectées est trop élevée. Veuillez consulter {apmServerDocs} pour atténuer les risques liés à la situation.", + "xpack.apm.transactionDetails.agentMissingTransactionMessage": "Cette trace est incomplète et les éléments {itemsCount} n'ont pas pu être affichés dans la chronologie. Il pourrait s'agir d'un problème temporaire provoqué par un retard d'ingestion ou d'un problème permanent provoqué par l'abandon de certains événements.", + "xpack.apm.transactionDetails.errorCount": "{errorCount, number} {errorCount, plural, one {erreur} other {erreurs}}", + "xpack.apm.transactionDetails.transFlyout.callout.agentDroppedSpansMessage": "L'agent APM qui a signalé cette transaction a abandonné {dropped} intervalles ou plus, d'après sa configuration.", "xpack.apm.transactionOverview.treemap.subtitle": "Compartimentage {currentTreemap} affichant le nombre total et les plus utilisés", - "xpack.apm.transactionOverview.treemap.title": "{currentTreemap} les plus utilisés", + "xpack.apm.transactionOverview.treemap.title": "{currentTreemap} le(s) plus utilisé(s)", "xpack.apm.transactionRateLabel": "{displayedValue} tpm", - "xpack.apm.tutorial.config_otel.description1": "(1) Les agents et SDK OpenTelemetry doivent prendre en charge les variables {otelExporterOtlpEndpoint}, {otelExporterOtlpHeaders} et {otelResourceAttributes}. Il se peut que certains composants instables ne répondent pas encore à cette exigence.", + "xpack.apm.tutorial.config_otel.description1": "(1) Les agents et SDK OpenTelemetry doivent prendre en charge les variables {otelExporterOtlpEndpoint}, {otelExporterOtlpHeaders} et {otelResourceAttributes}. Certains composants instables peuvent ne pas encore répondre à cette exigence.", "xpack.apm.tutorial.config_otel.description3": "La liste exhaustive des variables d'environnement, les paramètres de ligne de commande et les extraits de code de configuration (conformes à la spécification OpenTelemetry) se trouvent dans le {otelInstrumentationGuide}. Certains clients OpenTelemetry instables peuvent ne pas prendre en charge toutes les fonctionnalités et nécessitent peut-être d'autres mécanismes de configuration.", "xpack.apm.tutorial.djangoClient.configure.textPost": "Consultez la [documentation]({documentationLink}) pour une utilisation avancée.", - "xpack.apm.tutorial.dotNetClient.configureAgent.textPost": "Si vous ne transférez pas une instance \"IConfiguration\" à l'agent (par ex., pour les applications non ASP.NET Core) vous pouvez également configurer l'agent par le biais de variables d'environnement. \n Pour une utilisation avancée, consultez [la documentation]({documentationLink}), qui comprend notamment le guide de démarrage rapide pour l'[instrumentation de Profiler Auto]({profilerLink}).", - "xpack.apm.tutorial.dotNetClient.download.textPre": "Ajoutez le(s) package(s) d'agent depuis [NuGet]({allNuGetPackagesLink}) à votre application .NET. Plusieurs packages NuGet sont disponibles pour différents cas d'utilisation. \n\nPour une application ASP.NET Core avec Entity Framework Core, téléchargez le package [Elastic.Apm.NetCoreAll]({netCoreAllApmPackageLink}). Ce package ajoutera automatiquement chaque composant d'agent à votre application. \n\n Si vous souhaitez minimiser les dépendances, vous pouvez utiliser le package [Elastic.Apm.AspNetCore]({aspNetCorePackageLink}) uniquement pour le monitoring d'ASP.NET Core ou le package [Elastic.Apm.EfCore]({efCorePackageLink}) uniquement pour le monitoring d'Entity Framework Core. \n\n Si vous souhaitez seulement utiliser l'API d'agent publique pour l'instrumentation manuelle, utilisez le package [Elastic.Apm]({elasticApmPackageLink}).", - "xpack.apm.tutorial.downloadServerRpm": "Vous cherchez les packages aarch64 ? Consultez la [page de téléchargement]({downloadPageLink}).", - "xpack.apm.tutorial.downloadServerTitle": "Vous cherchez les packages aarch64 ? Consultez la [page de téléchargement]({downloadPageLink}).", - "xpack.apm.tutorial.elasticCloud.textPre": "Pour activer le serveur APM, accédez à [la console Elastic Cloud](https://cloud.elastic.co/deployments/{deploymentId}/edit), et activez APM et Fleet dans la page de modification du déploiement en cliquant sur Ajouter une capacité, puis cliquez sur Enregistrer. Une fois activé, actualisez la page.", + "xpack.apm.tutorial.dotNetClient.configureAgent.textPost": "Si vous ne transférez pas une instance `IConfiguration` à l'agent (par ex., pour les applications non ASP.NET Core) vous pouvez également configurer l'agent par le biais de variables d'environnement. \n Pour une utilisation avancée, consultez [the documentation]({documentationLink}), qui comprend notamment le guide de démarrage rapide pour [Profiler Auto instrumentation]({profilerLink}).", + "xpack.apm.tutorial.dotNetClient.download.textPre": "Ajoutez le ou les packages d'agent depuis [NuGet]({allNuGetPackagesLink}) à votre application .NET. Plusieurs packages NuGet sont disponibles pour différents cas d'utilisation. \n\nPour une application ASP.NET Core avec Entity Framework Core, téléchargez le package [Elastic.Apm.NetCoreAll]({netCoreAllApmPackageLink}). Ce package ajoutera automatiquement chaque composant d'agent à votre application. \n\n Si vous souhaitez minimiser les dépendances, vous pouvez utiliser le package [Elastic.Apm.AspNetCore]({aspNetCorePackageLink}) uniquement pour le monitoring d'ASP.NET Core ou le package [Elastic.Apm.EfCore]({efCorePackageLink}) uniquement pour le monitoring d'Entity Framework Core. \n\n Si vous souhaitez seulement utiliser l'API d'agent publique pour l'instrumentation manuelle, utilisez le package [Elastic.Apm]({elasticApmPackageLink}).", + "xpack.apm.tutorial.downloadServerRpm": "Vous cherchez les packages aarch64 ? Consultez la [Download page]({downloadPageLink}).", + "xpack.apm.tutorial.downloadServerTitle": "Vous cherchez les packages aarch64 ? Consultez la [Download page]({downloadPageLink}).", + "xpack.apm.tutorial.elasticCloud.textPre": "Pour activer le serveur APM, accédez à [the Elastic Cloud console] (https://cloud.elastic.co/deployments/{deploymentId}/edit) et activez APM et Fleet dans la page de modification du déploiement en cliquant sur Ajouter une capacité, puis cliquez sur Enregistrer. Une fois activé, actualisez la page.", "xpack.apm.tutorial.flaskClient.configure.textPost": "Consultez la [documentation]({documentationLink}) pour une utilisation avancée.", "xpack.apm.tutorial.goClient.configure.textPost": "Consultez la [documentation]({documentationLink}) pour une configuration avancée.", "xpack.apm.tutorial.goClient.instrument.textPost": "Consultez la [documentation]({documentationLink}) pour obtenir un guide détaillé pour l'instrumentation du code source Go.", "xpack.apm.tutorial.javaClient.download.textPre": "Téléchargez le fichier jar de l'agent depuis [Maven Central]({mavenCentralLink}). N'ajoutez **pas** l'agent comme dépendance de votre application.", "xpack.apm.tutorial.javaClient.startApplication.textPost": "Consultez la [documentation]({documentationLink}) pour découvrir les options de configuration et l'utilisation avancée.", - "xpack.apm.tutorial.javaClient.startApplication.textPre": "Ajoutez l'indicateur \"-javaagent\" et configurez l'agent avec les propriétés du système.\n\n * Définir le nom de service requis (caractères autorisés : a-z, A-Z, 0-9, -, _ et espace)\n * Définir l'URL personnalisée du serveur APM (par défaut : {customApmServerUrl})\n * Définir le token secret du serveur APM\n * Définir l'environnement de service\n * Définir le package de base de votre application", + "xpack.apm.tutorial.javaClient.startApplication.textPre": "Ajoutez l'indicateur `-javaagent` et configurez l'agent avec les propriétés du système.\n\n * Définir le nom de service requis (caractères autorisés : a-z, A-Z, 0-9, -, _ et espace)\n * Définir l'URL personnalisée du serveur APM (par défaut : {customApmServerUrl})\n * Définir le token secret du serveur APM\n * Définir l'environnement de service\n * Définir le package de base de votre application", "xpack.apm.tutorial.jsClient.enableRealUserMonitoring.textPre": "Le serveur APM désactive la prise en charge du RUM par défaut. Consultez la [documentation]({documentationLink}) pour obtenir des détails sur l'activation de la prise en charge du RUM. Lorsque vous utilisez l'intégration APM avec Fleet, le support RUM est automatiquement activé.", - "xpack.apm.tutorial.jsClient.installDependency.textPost": "Les intégrations de framework, tel que React ou Angular, ont des dépendances personnalisées. Consultez la [documentation d'intégration]({docLink}) pour plus d'informations.", - "xpack.apm.tutorial.nodeClient.configure.textPost": "Consultez [la documentation]({documentationLink}) pour une utilisation avancée, notamment pour savoir comment l'utiliser avec [les modules Babel/ES]({babelEsModulesLink}).", + "xpack.apm.tutorial.jsClient.installDependency.textPost": "Les intégrations de framework, tel que React ou Angular, ont des dépendances personnalisées. Consultez la [integration documentation]({docLink}) pour plus d'informations.", + "xpack.apm.tutorial.nodeClient.configure.textPost": "Consultez [the documentation]({documentationLink}) pour une utilisation avancée, notamment pour connaître l'utilisation avec [Babel/ES Modules]({babelEsModulesLink}).", "xpack.apm.tutorial.otel.configure.textPost": "Consultez la [documentation]({documentationLink}) pour découvrir les options de configuration et l'utilisation avancée.\n\n", "xpack.apm.tutorial.otel.configureAgent.textPre": "Spécifiez les paramètres OpenTelemetry suivants dans le cadre du démarrage de votre application. Notez que les SDK OpenTelemetry exigent du code de démarrage en plus de ces paramètres de configuration. Pour plus de détails, consultez la [documentation OpenTelemetry Elastic]({openTelemetryDocumentationLink}) et les [guides d'instrumentation OpenTelemetry]({openTelemetryInstrumentationLink}).", "xpack.apm.tutorial.otel.download.textPre": "Consultez les [guides d'instrumentation OpenTelemetry]({openTelemetryInstrumentationLink}) pour télécharger l'agent ou le SDK OpenTelemetry pour votre langage.", "xpack.apm.tutorial.phpClient.configure.textPost": "Consultez la [documentation]({documentationLink}) pour découvrir les options de configuration et l'utilisation avancée.\n\n", - "xpack.apm.tutorial.phpClient.download.textPre": "Téléchargez le package correspondant à votre plateforme depuis les [publications GitHub]({githubReleasesLink}).", + "xpack.apm.tutorial.phpClient.download.textPre": "Téléchargez le package correspondant à votre plateforme depuis [GitHub releases]({githubReleasesLink}).", "xpack.apm.tutorial.phpClient.installPackage.textPost": "Consultez la [documentation]({documentationLink}) pour les commandes d'installation sur les autres plateformes prises en charge et pour l'installation avancée.", "xpack.apm.tutorial.rackClient.createConfig.textPost": "Consultez la [documentation]({documentationLink}) pour découvrir les options de configuration et l'utilisation avancée.\n\n", - "xpack.apm.tutorial.rackClient.createConfig.textPre": "Créer un fichier de configuration {configFile} :", + "xpack.apm.tutorial.rackClient.createConfig.textPre": "Créez un fichier config {configFile} :", "xpack.apm.tutorial.railsClient.configure.textPost": "Consultez la [documentation]({documentationLink}) pour découvrir les options de configuration et l'utilisation avancée.\n\n", - "xpack.apm.tutorial.railsClient.configure.textPre": "APM se lance automatiquement au démarrage de l'application. Configurer l'agent, en créant le fichier de configuration {configFile}", + "xpack.apm.tutorial.railsClient.configure.textPre": "APM se lance automatiquement au démarrage de l'application. Configurer l'agent, en créant le fichier config {configFile}", "xpack.apm.tutorial.shared_clients.configure.commands.serverUrlHint": "Définir l'URL personnalisée du serveur APM (par défaut : {defaultApmServerUrl}). L'URL doit être complète et inclure le protocole (http ou https) et le port.", - "xpack.apm.tutorial.specProvider.longDescription": "Le monitoring des performances applicatives (APM) collecte les indicateurs et les erreurs de performance approfondies depuis votre application. Cela vous permet de monitorer les performances de milliers d'applications en temps réel. [En savoir plus]({learnMoreLink}).", + "xpack.apm.tutorial.specProvider.longDescription": "Le monitoring des performances applicatives (APM) collecte les indicateurs et les erreurs de performance approfondies depuis votre application. Cela vous permet de monitorer les performances de milliers d'applications en temps réel. [Learn more]({learnMoreLink}).", "xpack.apm.tutorial.windowsServerInstructions.textPost": "Remarque : si l'exécution du script est désactivée dans votre système, vous devez définir la politique d'exécution de la session en cours de sorte que l'exécution du script soit autorisée. Par exemple : {command}.", - "xpack.apm.tutorial.windowsServerInstructions.textPre": "1. Téléchargez le fichier .zip APM Server pour Windows via la [page de téléchargement]({downloadPageLink}).\n2. Extrayez le contenu du fichier compressé (ZIP) dans {zipFileExtractFolder}.\n3. Renommez le répertoire {apmServerDirectory} en \"APM-Server\".\n4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n5. Dans l'invite PowerShell, exécutez les commandes suivantes pour installer le serveur APM en tant que service Windows :", - "xpack.apm.unifiedSearchBar.placeholder": "Rechercher {event, select, transaction {transactions} metric {indicateurs} error {erreurs} other {transactions, erreurs et indicateurs}} (par exemple {queryExample})", - "xpack.apm.waterfall.errorCount": "{errorCount, plural, one {Voir l''erreur associée} many {Voir les # erreurs associées} other {Voir les # erreurs associées}}", - "xpack.apm.waterfall.exceedsMax": "Le nombre d'éléments dans cette trace est de {traceDocsTotal}, ce qui est supérieur à la limite actuelle de {maxTraceItems}. Veuillez augmenter la limite via \"xpack.apm.ui.maxTraceItems\" pour afficher la trace complète", - "xpack.apm.waterfall.spanLinks.badge": "{total} {total, plural, one {Lien d''intervalle} many {Liens d''intervalle} other {Liens d''intervalle}}", + "xpack.apm.tutorial.windowsServerInstructions.textPre": "1. Téléchargez le fichier zip APM Server Windows depuis [Download page]({downloadPageLink}).\n2. Extrayez le contenu du fichier zip dans {zipFileExtractFolder}.\n3. Renommez le répertoire {apmServerDirectory} en `APM-Server`.\n4. Ouvrez une invite PowerShell en tant qu'administrateur (faites un clic droit sur l'icône PowerShell et sélectionnez **Exécuter en tant qu'administrateur**). Si vous exécutez Windows XP, vous devrez peut-être télécharger et installer PowerShell.\n5. Dans l'invite PowerShell, exécutez les commandes suivantes pour installer le serveur APM en tant que service Windows :", + "xpack.apm.unifiedSearchBar.placeholder": "Rechercher {event, select,\n transaction {des transactions}\n metric {des indicateurs}\n error {des erreurs}\n other {des transactions, des erreurs et des indicateurs}\n } (par ex. {queryExample})", + "xpack.apm.waterfall.errorCount": "{errorCount, plural, one {Afficher l'erreur liée} other {Afficher # erreurs liées}}", + "xpack.apm.waterfall.exceedsMax": "Le nombre d'éléments dans cette trace est de {traceDocsTotal}, ce qui est supérieur à la limite actuelle de {maxTraceItems}. Veuillez augmenter la limite via `xpack.apm.ui.maxTraceItems` pour afficher la trace complète", + "xpack.apm.waterfall.spanLinks.badge": "{total} {total, plural, one {lien d'intervalle} other {liens d'intervalle}}", "xpack.apm.waterfall.spanLinks.tooltip.linkedChildren": "{linkedChildren} entrants", "xpack.apm.waterfall.spanLinks.tooltip.linkedParents": "{linkedParents} sortants", - "xpack.apm.waterfall.spanLinks.tooltip.title": "{total} {total, plural, one {Lien d''intervalle} many {Liens d''intervalle} other {Liens d''intervalle}} trouvé(s)", + "xpack.apm.waterfall.spanLinks.tooltip.title": "{total} {total, plural, one {lien d'intervalle trouvé} other {liens d'intervalle trouvés}}", "xpack.apm.a.thresholdMet": "Seuil atteint", "xpack.apm.addDataButtonLabel": "Ajouter des données", "xpack.apm.agent_explorer.error.missing_configuration": "Pour utiliser la toute dernière version de l’agent, vous devez définir xpack.apm.latestAgentVersionsUrl.", "xpack.apm.agentConfig.allOptionLabel": "Tous", - "xpack.apm.agentConfig.apiRequestSize.description": "Taille totale compressée maximale du corps de la requête envoyé à l'API d'ingestion du serveur APM depuis un encodage fragmenté (diffusion HTTP).\nVeuillez noter qu'un léger dépassement est possible.\n\nLes unités d'octets autorisées sont \"b\", \"kb\" et \"mb\". \"1kb\" correspond à \"1024b\".", + "xpack.apm.agentConfig.apiRequestSize.description": "Taille totale compressée maximale du corps de la requête envoyé à l'API d'ingestion du serveur APM depuis un encodage fragmenté (diffusion HTTP).\nVeuillez noter qu'un léger dépassement est possible.\n\nLes unités d'octets autorisées sont `b`, `kb` et `mb`. `1kb` correspond à `1024b`.", "xpack.apm.agentConfig.apiRequestSize.label": "Taille de la requête API", - "xpack.apm.agentConfig.apiRequestTime.description": "Durée maximale de l'ouverture d'une requête HTTP sur le serveur APM.\n\nREMARQUE : cette valeur doit être inférieure à celle du paramètre \"read_timeout\" du serveur APM.", + "xpack.apm.agentConfig.apiRequestTime.description": "Durée maximale de l'ouverture d'une requête HTTP sur le serveur APM.\n\nREMARQUE : cette valeur doit être inférieure à celle du paramètre `read_timeout` du serveur APM.", "xpack.apm.agentConfig.apiRequestTime.label": "Heure de la requête API", - "xpack.apm.agentConfig.applicationPackages.description": "Permet de déterminer si un cadre de trace de pile est un cadre dans l'application ou un cadre de bibliothèque. Cela permet à l'application APM de réduire les cadres de pile du code de la bibliothèque et de mettre en surbrillance les cadres de pile qui proviennent de votre application. Plusieurs packages racine peuvent être définis sous forme de liste séparée par des virgules ; il n'est pas nécessaire de configurer des sous-packages. Étant donné que ce paramètre aide à déterminer les classes à analyser au démarrage, la définition de cette option peut également améliorer le temps de démarrage.\n\nVous devez définir cette option afin d'utiliser les annotations d'API \"@CaptureTransaction\" et \"@CaptureSpan\".", + "xpack.apm.agentConfig.applicationPackages.description": "Permet de déterminer si un cadre de trace de pile est un cadre dans l'application ou un cadre de bibliothèque. Cela permet à l'application APM de réduire les cadres de pile du code de la bibliothèque et de mettre en surbrillance les cadres de pile qui proviennent de votre application. Plusieurs packages racine peuvent être définis sous forme de liste séparée par des virgules ; il n'est pas nécessaire de configurer des sous-packages. Étant donné que ce paramètre aide à déterminer les classes à analyser au démarrage, la définition de cette option peut également améliorer le temps de démarrage.\n\nVous devez définir cette option afin d'utiliser les annotations d'API `@CaptureTransaction` et `@CaptureSpan`.", "xpack.apm.agentConfig.applicationPackages.label": "Packages de l'application", "xpack.apm.agentConfig.captureBody.description": "Pour les transactions qui sont des requêtes HTTP, l'agent peut éventuellement capturer le corps de la requête (par ex., variables POST).\nPour les transactions qui sont initiées par la réception d'un message depuis un agent de message, l'agent peut capturer le corps du message texte.", "xpack.apm.agentConfig.captureBody.label": "Capturer le corps", - "xpack.apm.agentConfig.captureBodyContentTypes.description": "Configure les types de contenu qui doivent être enregistrés.\n\nLes valeurs par défaut se terminent par un caractère générique afin que les types de contenu tels que \"text/plain; charset=utf-8\" soient également capturés.", + "xpack.apm.agentConfig.captureBodyContentTypes.description": "Configure les types de contenu qui doivent être enregistrés.\n\nLes valeurs par défaut se terminent par un caractère générique afin que les types de contenu tels que `text/plain; charset=utf-8` soient également capturés.", "xpack.apm.agentConfig.captureBodyContentTypes.label": "Capturer les types de contenu du corps", - "xpack.apm.agentConfig.captureHeaders.description": "Si cette option est définie sur \"true\", l'agent capturera les en-têtes de la requête HTTP et de la réponse (y compris les cookies), ainsi que les en-têtes/les propriétés du message lors de l'utilisation de frameworks de messagerie (tels que Kafka).\n\nREMARQUE : Si \"false\" est défini, cela permet de réduire la bande passante du réseau, l'espace disque et les allocations d'objets.", + "xpack.apm.agentConfig.captureHeaders.description": "Si cette option est définie sur `true`, l'agent capturera les en-têtes de la requête HTTP et de la réponse (y compris les cookies), ainsi que les en-têtes/les propriétés du message lors de l'utilisation de frameworks de messagerie (tels que Kafka).\n\nREMARQUE : Si `false` est défini, cela permet de réduire la bande passante du réseau, l'espace disque et les allocations d'objets.", "xpack.apm.agentConfig.captureHeaders.label": "Capturer les en-têtes", - "xpack.apm.agentConfig.captureJmxMetrics.description": "Enregistrer les indicateurs de JMX sur le serveur APM\n\nPeut contenir plusieurs définitions d'indicateurs JMX séparées par des virgules :\n\n\"object_name[] attribute[:metric_name=]\"\n\nPour en savoir plus, consultez la documentation de l'agent Java.", + "xpack.apm.agentConfig.captureJmxMetrics.description": "Enregistrer les indicateurs de JMX sur le serveur APM\n\nPeut contenir plusieurs définitions d'indicateurs JMX séparées par des virgules :\n\n`object_name[] attribute[:metric_name=]`\n\nPour en savoir plus, consultez la documentation de l'agent Java.", "xpack.apm.agentConfig.captureJmxMetrics.label": "Capturer les indicateurs JMX", "xpack.apm.agentConfig.chooseService.editButton": "Modifier", "xpack.apm.agentConfig.chooseService.service.environment.label": "Environnement", "xpack.apm.agentConfig.chooseService.service.name.label": "Nom de service", - "xpack.apm.agentConfig.circuitBreakerEnabled.description": "Nombre booléen spécifiant si le disjoncteur doit être activé ou non. Lorsqu'il est activé, l'agent interroge régulièrement les monitorings de tension pour détecter l'état de tension du système/du processus/de la JVM. Si L'UN des monitorings détecte un signe de tension, l'agent s'interrompt, comme si l'option de configuration \"recording\" était définie sur \"false\", réduisant ainsi la consommation des ressources au minimum. Pendant l'interruption, l'agent continue à interroger les mêmes monitorings pour vérifier si l'état de tension a été allégé. Si TOUS les monitorings indiquent que le système, le processus et la JVM ne sont plus en état de tension, l'agent reprend son activité et redevient entièrement fonctionnel.", + "xpack.apm.agentConfig.circuitBreakerEnabled.description": "Nombre booléen spécifiant si le disjoncteur doit être activé ou non. Lorsqu'il est activé, l'agent interroge régulièrement les monitorings de tension pour détecter l'état de tension du système/du processus/de la JVM. Si L'UN des monitorings détecte un signe de tension, l'agent s'interrompt, comme si l'option de configuration `recording` était définie sur `false`, réduisant ainsi la consommation des ressources au minimum. Pendant l'interruption, l'agent continue à interroger les mêmes monitorings pour vérifier si l'état de tension a été allégé. Si TOUS les monitorings indiquent que le système, le processus et la JVM ne sont plus en état de tension, l'agent reprend son activité et redevient entièrement fonctionnel.", "xpack.apm.agentConfig.circuitBreakerEnabled.label": "Disjoncteur activé", "xpack.apm.agentConfig.configTable.appliedTooltipMessage": "Appliqué par au moins un agent", "xpack.apm.agentConfig.configTable.configTable.failurePromptText": "La liste des configurations d'agent n'a pas pu être récupérée. Votre utilisateur ne dispose peut-être pas d'autorisations suffisantes.", @@ -7971,9 +9011,11 @@ "xpack.apm.agentConfig.configTable.serviceNameColumnLabel": "Nom de service", "xpack.apm.agentConfig.configurationsPanelTitle": "Configurations", "xpack.apm.agentConfig.configurationsPanelTitle.noPermissionTooltipLabel": "Votre rôle d'utilisateur ne dispose pas des autorisations nécessaires pour créer des configurations d'agent", + "xpack.apm.agentConfig.context_propagation_only.description": "Si cette option est configurée sur \"true\", l'envoi de log ainsi que la collecte d'indicateurs et de trace sont désactivés. La propagation du contexte de la trace et la corrélation du log reste actives.", + "xpack.apm.agentConfig.context_propagation_only.label": "Propagation du contexte seulement", "xpack.apm.agentConfig.createConfigButtonLabel": "Créer une configuration", "xpack.apm.agentConfig.createConfigTitle": "Créer une configuration", - "xpack.apm.agentConfig.dedotCustomMetrics.description": "Remplace les points par des traits de soulignement dans les noms des indicateurs personnalisés.\n\nAVERTISSEMENT : L'attribution de la valeur \"false\" peut entraîner des conflits de mapping car les points indiquent une imbrication dans Elasticsearch.\nUn tel conflit peut se produire par exemple entre deux indicateurs si l'un se nomme \"foo\" et l'autre \"foo.bar\".\nLe premier mappe \"foo\" sur un nombre, et le second indicateur mappe \"foo\" en tant qu'objet.", + "xpack.apm.agentConfig.dedotCustomMetrics.description": "Remplace les points par des traits de soulignement dans les noms des indicateurs personnalisés.\n\nAVERTISSEMENT : L'attribution de la valeur `false` peut entraîner des conflits de mapping car les points indiquent une imbrication dans Elasticsearch.\nUn tel conflit peut se produire par exemple entre deux indicateurs si l'un se nomme `foo` et l'autre `foo.bar`.\nLe premier mappe `foo` sur un nombre, et le second indicateur mappe `foo` en tant qu'objet.", "xpack.apm.agentConfig.dedotCustomMetrics.label": "Retirer les points des indicateurs personnalisés", "xpack.apm.agentConfig.deleteModal.cancel": "Annuler", "xpack.apm.agentConfig.deleteModal.confirm": "Supprimer", @@ -7982,14 +9024,14 @@ "xpack.apm.agentConfig.deleteSection.deleteConfigSucceededTitle": "La configuration a été supprimée", "xpack.apm.agentConfig.disableInstrumentations.description": "Liste séparée par des virgules de modules pour lesquels désactiver l'instrumentation.\nLorsque l'instrumentation est désactivée pour un module, aucun intervalle n'est collecté pour ce module.\n\nLa liste à jour des modules pour lesquels l'instrumentation peut être désactivée est spécifique du langage et peut être trouvée en cliquant sur les liens suivants : [Java](https://www.elastic.co/guide/en/apm/agent/java/current/config-core.html#config-disable-instrumentations)", "xpack.apm.agentConfig.disableInstrumentations.label": "Désactiver les instrumentations", - "xpack.apm.agentConfig.disableOutgoingTracecontextHeaders.description": "Utilisez cette option pour désactiver l'injection d'en-têtes \"tracecontext\" dans une communication sortante.\n\nAVERTISSEMENT : La désactivation de l'injection d'en-têtes \"tracecontext\" signifie que le traçage distribué ne fonctionnera pas sur les services en aval.", + "xpack.apm.agentConfig.disableOutgoingTracecontextHeaders.description": "Utilisez cette option pour désactiver l'injection d'en-têtes `tracecontext` dans une communication sortante.\n\nAVERTISSEMENT : La désactivation de l'injection d'en-têtes `tracecontext` signifie que le traçage distribué ne fonctionnera pas sur les services en aval.", "xpack.apm.agentConfig.disableOutgoingTracecontextHeaders.label": "Désactiver les en-têtes tracecontext sortants", "xpack.apm.agentConfig.editConfigTitle": "Modifier la configuration", "xpack.apm.agentConfig.enableExperimentalInstrumentations.description": "Indique s'il faut appliquer des instrumentations expérimentales.\n\nREMARQUE : Le fait de modifier cette valeur au moment de l'exécution peut ralentir temporairement l'application. Définir cette valeur sur true active les instrumentations dans le groupe expérimental.", "xpack.apm.agentConfig.enableExperimentalInstrumentations.label": "Activer les instrumentations expérimentales", - "xpack.apm.agentConfig.enableInstrumentations.description": "Une liste des instrumentations qui doivent être activées de façon sélective. Les options valides sont indiquées dans la [documentation de l’agent Java APM](https://www.elastic.co/guide/en/apm/agent/java/current/config-core.html#config-disable-instrumentations).\n\nLorsqu'une valeur non vide est définie, seules les instrumentations répertoriées sont activées si elles ne sont pas désactivées via \"disable_instrumentations\" ou \"enable_experimental_instrumentations\".\nLorsque cette option n'est pas définie ou est vide (par défaut), toutes les instrumentations activées par défaut sont activées, sauf si elles sont désactivées via \"disable_instrumentations\" ou \"enable_experimental_instrumentations\".", + "xpack.apm.agentConfig.enableInstrumentations.description": "Une liste des instrumentations qui doivent être activées de façon sélective. Les options valides sont indiquées dans la [documentation de l’agent Java APM](https://www.elastic.co/guide/en/apm/agent/java/current/config-core.html#config-disable-instrumentations).\n\nLorsqu'une valeur non vide est définie, seules les instrumentations répertoriées sont activées si elles ne sont pas désactivées via `disable_instrumentations` ou `enable_experimental_instrumentations`.\nLorsque cette option n'est pas définie ou est vide (par défaut), toutes les instrumentations activées par défaut sont activées, sauf si elles sont désactivées via `disable_instrumentations` ou `enable_experimental_instrumentations`.", "xpack.apm.agentConfig.enableInstrumentations.label": "Désactiver les instrumentations", - "xpack.apm.agentConfig.enableLogCorrelation.description": "Nombre booléen spécifiant si l'agent doit être intégré au MDC de SLF4J pour activer la corrélation de logs de suivi. Si cette option est configurée sur \"true\", l'agent définira \"trace.id\" et \"transaction.id\" pour les intervalles et transactions actifs sur le MDC. Depuis la version 1.16.0 de l'agent Java, l'agent ajoute également le \"error.id\" de l'erreur capturée au MDC juste avant le logging du message d'erreur. REMARQUE : bien qu'il soit autorisé d'activer ce paramètre au moment de l'exécution, vous ne pouvez pas le désactiver sans redémarrage.", + "xpack.apm.agentConfig.enableLogCorrelation.description": "Nombre booléen spécifiant si l'agent doit être intégré au MDC de SLF4J pour activer la corrélation de logs de suivi. Si cette option est configurée sur `true`, l'agent définira `trace.id` et `transaction.id` pour les intervalles et transactions actifs sur le MDC. Depuis la version 1.16.0 de l'agent Java, l'agent ajoute également le `error.id` de l'erreur capturée au MDC juste avant le logging du message d'erreur. REMARQUE : bien qu'il soit autorisé d'activer ce paramètre au moment de l'exécution, vous ne pouvez pas le désactiver sans redémarrage.", "xpack.apm.agentConfig.enableLogCorrelation.label": "Activer la corrélation de logs", "xpack.apm.agentConfig.exitSpanMinDuration.description": "Les intervalles de sortie sont des intervalles qui représentent un appel à un service externe, tel qu'une base de données. Si de tels appels sont très courts, ils ne sont généralement pas pertinents et ils peuvent être ignorés.\n\nREMARQUE : Si un intervalle propage des ID de traçage distribué, il ne sera pas ignoré, même s'il est plus court que le seuil configuré. Cela permet de s'assurer qu'aucune trace interrompue n'est enregistrée.", "xpack.apm.agentConfig.exitSpanMinDuration.label": "Durée min. d'intervalle de sortie", @@ -8001,16 +9043,16 @@ "xpack.apm.agentConfig.logEcsReformatting.label": "Reformatage ECS des logs", "xpack.apm.agentConfig.logLevel.description": "Définit le niveau de logging pour l'agent", "xpack.apm.agentConfig.logLevel.label": "Niveau du log", - "xpack.apm.agentConfig.logSending.description": "Expérimental, requiert la version la plus récente de l'agent Java.\n\nSi \"true\" est défini,\nL'agent envoie les logs directement au serveur APM.", + "xpack.apm.agentConfig.logSending.description": "Expérimental, requiert la version la plus récente de l'agent Java.\n\nSi `true` est défini,\nL'agent envoie les logs directement au serveur APM.", "xpack.apm.agentConfig.logSending.label": "Envoi de logs (expérimental)", - "xpack.apm.agentConfig.mongodbCaptureStatementCommands.description": "Les noms de commande MongoDB pour lesquels le document de commande est capturé, limité aux opérations en lecture seule courantes par défaut. Définissez cette option sur \"''\" (vide) pour désactiver la capture, et sur \"*\" pour tout capturer (ce qui est déconseillé car cela peut entraîner la capture d'informations sensibles).\n\nCette option prend en charge le caractère générique \"*\" qui correspond à zéro caractère ou plus. Exemples : \"/foo/*/bar/*/baz*\", \"*foo*\". La correspondance n'est pas sensible à la casse par défaut. L'ajout de \"(?-i)\" au début d'un élément rend la correspondance sensible à la casse.", + "xpack.apm.agentConfig.mongodbCaptureStatementCommands.description": "Les noms de commande MongoDB pour lesquels le document de commande est capturé, limité aux opérations en lecture seule courantes par défaut. Définissez cette option sur `\"\"` (vide) pour désactiver la capture, et sur `*` pour tout capturer (ce qui est déconseillé, car cela peut entraîner la capture d'informations sensibles).\n\nCette option prend en charge le caractère générique `*` qui correspond à zéro caractère ou plus. Exemples : `/foo/*/bar/*/baz*`, `*foo*`. La correspondance n'est pas sensible à la casse par défaut. L'ajout de `(?-i)` au début d'un élément rend la correspondance sensible à la casse.", "xpack.apm.agentConfig.mongodbCaptureStatementCommands.label": "Commandes d'instruction pour la capture MongoDB", "xpack.apm.agentConfig.newConfig.description": "Affinez votre configuration d'agent depuis l'application APM. Les modifications sont automatiquement propagées à vos agents APM, ce qui vous évite d'effectuer un redéploiement.", - "xpack.apm.agentConfig.profilingInferredSpansEnabled.description": "Définissez cette option sur \"true\" pour que l'agent crée des intervalles pour des exécutions de méthodes basées sur async-profiler, un profiler d'échantillonnage (ou profiler statistique). En raison de la nature du fonctionnement des profilers d'échantillonnage, la durée des intervalles générés n'est pas exacte, il ne s'agit que d'estimations. \"profiling_inferred_spans_sampling_interval\" vous permet d'ajuster avec exactitude le compromis entre précision et surcharge. Les intervalles générés sont créés à la fin d'une session de profilage. Cela signifie qu'il existe un délai entre les intervalles réguliers et les intervalles générés visibles dans l'interface utilisateur. REMARQUE : cette fonctionnalité n'est pas disponible sous Windows.", + "xpack.apm.agentConfig.profilingInferredSpansEnabled.description": "Définissez cette option sur `true` afin que l'agent crée des intervalles pour des exécutions de méthodes basées sur async-profiler, un profiler d'échantillonnage (ou profiler statistique). En raison de la nature du fonctionnement des profilers d'échantillonnage, la durée des intervalles générés n'est pas exacte, il ne s'agit que d'estimations. `profiling_inferred_spans_sampling_interval` vous permet d'ajuster avec exactitude le compromis entre précision et surcharge. Les intervalles générés sont créés à la fin d'une session de profilage. Cela signifie qu'il existe un délai entre les intervalles réguliers et les intervalles générés visibles dans l'interface utilisateur. REMARQUE : cette fonctionnalité n'est pas disponible sous Windows.", "xpack.apm.agentConfig.profilingInferredSpansEnabled.label": "Intervalles générés par le profilage activés", - "xpack.apm.agentConfig.profilingInferredSpansExcludedClasses.description": "Exclut les classes pour lesquelles aucun intervalle généré par le profiler ne doit être créé. Cette option prend en charge le caractère générique \"*\" qui correspond à zéro caractère ou plus. La correspondance n'est pas sensible à la casse par défaut. L'ajout de \"(?-i)\" au début d'un élément rend la correspondance sensible à la casse.", + "xpack.apm.agentConfig.profilingInferredSpansExcludedClasses.description": "Exclut les classes pour lesquelles aucun intervalle généré par le profiler ne doit être créé. Cette option prend en charge le caractère générique `*` qui correspond à zéro caractère ou plus. La correspondance n'est pas sensible à la casse par défaut. L'ajout de `(?-i)` au début d'un élément rend la correspondance sensible à la casse.", "xpack.apm.agentConfig.profilingInferredSpansExcludedClasses.label": "Classes exclues des intervalles générés par le profilage", - "xpack.apm.agentConfig.profilingInferredSpansIncludedClasses.description": "Si cette option est définie, l'agent ne créera des intervalles générés que pour les méthodes correspondant à cette liste. La définition d'une valeur peut diminuer légèrement la surcharge et réduire l'encombrement en ne créant des intervalles que pour les classes qui vous intéressent. Cette option prend en charge le caractère générique \"*\" qui correspond à zéro caractère ou plus. Par exemple : \"org.example.myapp.*\". La correspondance n'est pas sensible à la casse par défaut. L'ajout de \"(?-i)\" au début d'un élément rend la correspondance sensible à la casse.", + "xpack.apm.agentConfig.profilingInferredSpansIncludedClasses.description": "Si cette option est définie, l'agent ne créera des intervalles générés que pour les méthodes correspondant à cette liste. La définition d'une valeur peut diminuer légèrement la surcharge et réduire l'encombrement en ne créant des intervalles que pour les classes qui vous intéressent. Cette option prend en charge le caractère générique `*` qui correspond à zéro caractère ou plus. Par exemple : `org.example.myapp.*`. La correspondance n'est pas sensible à la casse par défaut. L'ajout de `(?-i)` au début d'un élément rend la correspondance sensible à la casse.", "xpack.apm.agentConfig.profilingInferredSpansIncludedClasses.label": "Classes incluses des intervalles générés par le profilage", "xpack.apm.agentConfig.profilingInferredSpansMinDuration.description": "Durée minimale d'un intervalle généré. Veuillez noter que la durée minimale est également définie de façon implicite par l'intervalle d'échantillonnage. Toutefois, l'augmentation de l'intervalle d'échantillonnage diminue également la précision de la durée des intervalles générés.", "xpack.apm.agentConfig.profilingInferredSpansMinDuration.label": "Durée minimale des intervalles générés par le profilage", @@ -8018,7 +9060,7 @@ "xpack.apm.agentConfig.profilingInferredSpansSamplingInterval.label": "Intervalle d'échantillonnage des intervalles générés par le profilage", "xpack.apm.agentConfig.recording.description": "Lorsque l'enregistrement est activé, l'agent instrumente les requêtes HTTP entrantes, effectue le suivi des erreurs, et collecte et envoie les indicateurs. Lorsque l'enregistrement n'est pas activé, l'agent agit comme un noop, sans collecter de données ni communiquer avec le serveur AMP, sauf pour rechercher la configuration mise à jour. Puisqu'il s'agit d'un commutateur réversible, les threads d'agents ne sont pas détruits lorsque le mode sans enregistrement est défini. Ils restent principalement inactifs, de sorte que la surcharge est négligeable. Vous pouvez utiliser ce paramètre pour contrôler dynamiquement si Elastic APM doit être activé ou désactivé.", "xpack.apm.agentConfig.recording.label": "Enregistrement", - "xpack.apm.agentConfig.sanitizeFiledNames.description": "Il est parfois nécessaire d'effectuer un nettoyage, c'est-à-dire de supprimer les données sensibles envoyées à Elastic APM. Cette configuration accepte une liste de modèles de caractères génériques de champs de noms qui doivent être nettoyés. Ils s'appliquent aux en-têtes HTTP (y compris les cookies) et aux données \"application/x-www-form-urlencoded\" (champs de formulaire POST). La chaîne de la requête et le corps de la requête capturé (comme des données \"application/json\") ne seront pas nettoyés.", + "xpack.apm.agentConfig.sanitizeFiledNames.description": "Il est parfois nécessaire d'effectuer un nettoyage, c'est-à-dire de supprimer les données sensibles envoyées à Elastic APM. Cette configuration accepte une liste de modèles de caractères génériques de champs de noms qui doivent être nettoyés. Ils s'appliquent aux en-têtes HTTP (y compris les cookies) et aux données `application/x-www-form-urlencoded` (champs de formulaire POST). La chaîne de la requête et le corps de la requête capturé (comme des données `application/json`) ne seront pas nettoyés.", "xpack.apm.agentConfig.sanitizeFiledNames.label": "Nettoyer les noms des champs", "xpack.apm.agentConfig.saveConfig.failed.title": "La configuration n'a pas pu être enregistrée", "xpack.apm.agentConfig.saveConfig.succeeded.title": "Configuration enregistrée", @@ -8046,31 +9088,31 @@ "xpack.apm.agentConfig.spanCompressionExactMatchMaxDuration.label": "Durée maximale de compression d'intervalles en correspondance parfaite", "xpack.apm.agentConfig.spanCompressionSameKindMaxDuration.description": "Les intervalles consécutifs qui ont la même destination et qui se trouvent sous ce seuil seront compressés en un seul intervalle composite. Cette option ne s'applique pas aux intervalles composites. Cela réduit la surcharge de collecte, de traitement et de stockage, et supprime l'encombrement dans l'interface utilisateur. Le compromis est que les instructions de base de données de tous les intervalles compressés ne seront pas collectées.", "xpack.apm.agentConfig.spanCompressionSameKindMaxDuration.label": "Durée maximale de compression d'intervalles de même genre", - "xpack.apm.agentConfig.spanFramesMinDuration.description": "(déclassé, utilisez \"span_stack_trace_min_duration\" à la place) Dans ses paramètres par défaut, l'agent APM collectera une trace de la pile avec chaque intervalle enregistré.\nBien qu'il soit très pratique de trouver l'endroit exact dans votre code qui provoque l'intervalle, la collecte de cette trace de la pile provoque une certaine surcharge. \nLorsque cette option est définie sur une valeur négative, telle que \"-1ms\", les traces de pile sont collectées pour tous les intervalles. En choisissant une valeur positive, par ex. \"5ms\", la collecte des traces de pile se limitera aux intervalles dont la durée est égale ou supérieure à la valeur donnée, par ex. 5 millisecondes.\n\nPour désactiver complètement la collecte des traces de pile des intervalles, réglez la valeur sur \"0ms\".", + "xpack.apm.agentConfig.spanFramesMinDuration.description": "(déclassé, utilisez `span_stack_trace_min_duration` à la place) Dans ses paramètres par défaut, l'agent APM collectera une trace de la pile avec chaque intervalle enregistré.\nBien qu'il soit très pratique de trouver l'endroit exact dans votre code qui provoque l'intervalle, la collecte de cette trace de la pile provoque une certaine surcharge. \nLorsque cette option est définie sur une valeur négative, telle que `-1ms`, les traces de pile sont collectées pour tous les intervalles. En choisissant une valeur positive, par ex. `5ms`, la collecte des traces de pile se limitera aux intervalles dont la durée est égale ou supérieure à la valeur donnée, c’est-à-dire 5 millisecondes.\n\nPour désactiver complètement la collecte des traces de pile des intervalles, réglez la valeur sur `0ms`.", "xpack.apm.agentConfig.spanFramesMinDuration.label": "Durée minimale des cadres des intervalles", "xpack.apm.agentConfig.spanMinDuration.description": "Définit la durée minimale des intervalles. Une tentative visant à ignorer les intervalles qui s'exécutent plus rapidement que ce seuil peut avoir lieu.\n\nLa tentative échoue si elle mène à un intervalle qui ne peut pas être ignoré. Les intervalles qui propagent le contexte de trace aux services en aval, tels que les requêtes HTTP sortantes, ne peuvent pas être ignorés. De plus, les intervalles qui conduisent à une erreur ou qui peuvent être le parent d'une opération asynchrone ne peuvent pas être ignorés.\n\nCependant, les appels externes qui ne propagent pas le contexte, tels que les appels à une base de données, peuvent être ignorés à l'aide de ce seuil.", "xpack.apm.agentConfig.spanMinDuration.label": "Durée minimale de l'intervalle", - "xpack.apm.agentConfig.spanStackTraceMinDuration.description": "Bien qu'il soit très pratique de trouver l'endroit exact dans votre code qui provoque l'intervalle, la collecte de cette trace de la pile provoque une certaine surcharge. Lorsque cette option est définie sur la valeur \"0ms\", les traces de pile sont collectées pour tous les intervalles. En choisissant une valeur positive, par ex. \"5ms\", la collecte des traces de pile se limitera aux intervalles dont la durée est égale ou supérieure à la valeur donnée, par ex. 5 millisecondes.\n\nPour désactiver complètement la collecte des traces de pile des intervalles, réglez la valeur sur \"-1ms\".", + "xpack.apm.agentConfig.spanStackTraceMinDuration.description": "Bien qu'il soit très pratique de trouver l'endroit exact dans votre code qui provoque l'intervalle, la collecte de cette trace de la pile provoque une certaine surcharge. Lorsque cette option est définie sur la valeur `0ms`, les traces de pile sont collectées pour tous les intervalles. En choisissant une valeur positive, par ex. `5ms`, la collecte des traces de pile se limitera aux intervalles dont la durée est égale ou supérieure à la valeur donnée, c’est-à-dire 5 millisecondes.\n\nPour désactiver complètement la collecte des traces de pile des intervalles, réglez la valeur sur `-1ms`.", "xpack.apm.agentConfig.spanStackTraceMinDuration.label": "Durée minimale de la trace de pile de l'intervalle", "xpack.apm.agentConfig.stackTraceLimit.description": "En définissant cette option sur 0, la collecte des traces de pile sera désactivée. Toute valeur entière positive sera utilisée comme nombre maximal de cadres à collecter. La valeur -1 signifie que tous les cadres seront collectés.", "xpack.apm.agentConfig.stackTraceLimit.label": "Limite de trace de pile", - "xpack.apm.agentConfig.stressMonitorCpuDurationThreshold.description": "Durée minimale requise pour déterminer si le système est actuellement sous tension ou si la tension précédemment détectée a été allégée. Toutes les mesures réalisées pendant ce laps de temps doivent être cohérentes par rapport au seuil concerné pour pouvoir détecter un changement d'état de tension. La valeur doit être d'au moins \"1m\".", + "xpack.apm.agentConfig.stressMonitorCpuDurationThreshold.description": "Durée minimale requise pour déterminer si le système est actuellement sous tension ou si la tension précédemment détectée a été allégée. Toutes les mesures réalisées pendant ce laps de temps doivent être cohérentes par rapport au seuil concerné pour pouvoir détecter un changement d'état de tension. La valeur doit être d'au moins `1m`.", "xpack.apm.agentConfig.stressMonitorCpuDurationThreshold.label": "Seuil de durée de tension CPU du monitoring", - "xpack.apm.agentConfig.stressMonitorGcReliefThreshold.description": "Seuil utilisé par le monitoring RM pour identifier le moment auquel le tas n'est pas sous tension. Si le \"stress_monitor_gc_stress_threshold\" a été franchi, l'agent le considérera comme un état de tension du tas. Pour déterminer l'état de tension comme terminé, le pourcentage de mémoire occupée dans TOUS les pools de tas doit être inférieur à ce seuil. Le monitoring RM ne se base que sur la consommation de mémoire mesurée après une RM récente.", + "xpack.apm.agentConfig.stressMonitorGcReliefThreshold.description": "Seuil utilisé par le monitoring RM pour identifier le moment auquel le tas n'est pas sous tension. Si le `stress_monitor_gc_stress_threshold` a été franchi, l'agent le considérera comme un état de tension du tas. Pour déterminer l'état de tension comme terminé, le pourcentage de mémoire occupée dans TOUS les pools de tas doit être inférieur à ce seuil. Le monitoring RM ne se base que sur la consommation de mémoire mesurée après une RM récente.", "xpack.apm.agentConfig.stressMonitorGcReliefThreshold.label": "Seuil d'allègement de la tension du monitoring RM", "xpack.apm.agentConfig.stressMonitorGcStressThreshold.description": "Seuil utilisé par le monitoring RM pour identifier la tension du tas. Ce même seuil sera utilisé pour tous les pools de mémoire, de sorte que si L'UN d'entre eux a un pourcentage d'utilisation qui dépasse ce seuil, l'agent l'interprétera comme une tension de segment de mémoire. Le monitoring RM ne se base que sur la consommation de mémoire mesurée après une RM récente.", "xpack.apm.agentConfig.stressMonitorGcStressThreshold.label": "Seuil de tension du monitoring RM", - "xpack.apm.agentConfig.stressMonitorSystemCpuReliefThreshold.description": "Seuil utilisé par le monitoring du CPU système pour déterminer que le système n'est pas sous tension au niveau du processeur. Si le monitor détecte une tension de CPU, le CPU système mesuré doit être inférieur à ce seuil pour une durée d'au moins \"stress_monitor_cpu_duration_threshold\", pour que le monitoring établisse l'allègement de la tension de CPU.", + "xpack.apm.agentConfig.stressMonitorSystemCpuReliefThreshold.description": "Seuil utilisé par le monitoring du CPU système pour déterminer que le système n'est pas sous tension au niveau du processeur. Si le monitor détecte une tension de CPU, le CPU système mesuré doit être inférieur à ce seuil pour une durée d'au moins `stress_monitor_cpu_duration_threshold`, pour que le monitoring établisse l'allègement de la tension de CPU.", "xpack.apm.agentConfig.stressMonitorSystemCpuReliefThreshold.label": "Seuil d'allègement de la tension du monitoring du CPU système", - "xpack.apm.agentConfig.stressMonitorSystemCpuStressThreshold.description": "Seuil utilisé par le monitoring du CPU du système pour détecter la tension du processeur du système. Si le CPU système dépasse ce seuil pour une durée d'au moins \"stress_monitor_cpu_duration_threshold\", le monitoring considère qu'il est en état de tension.", + "xpack.apm.agentConfig.stressMonitorSystemCpuStressThreshold.description": "Seuil utilisé par le monitoring du CPU du système pour détecter la tension du processeur du système. Si le CPU système dépasse ce seuil pour une durée d'au moins `stress_monitor_cpu_duration_threshold`, le monitoring considère qu'il est en état de tension.", "xpack.apm.agentConfig.stressMonitorSystemCpuStressThreshold.label": "Seuil de tension du monitoring du CPU système", - "xpack.apm.agentConfig.traceContinuationStrategy.description": "Cette option permet un certain contrôle sur la façon dont l'agent APM gère les en-tête de contexte de trace W3C dans les requêtes entrantes. Par défaut, les en-têtes \"traceparent\" et \"tracestate\" sont utilisés par les spécifications W3C pour le traçage distribué. Cependant, dans certains cas, il peut être utile de ne pas utiliser l'en-tête \"traceparent\" entrant. Quelques exemples de cas d'utilisation :\n\n* Un service monitoré par Elastic reçoit des requêtes avec les en-têtes \"traceparent\" de services non monitorés.\n* Un service monitoré par Elastic est publiquement exposé, et ne souhaite pas que les données de traçage (ID de traçage, décisions d'échantillonnage) puissent être usurpées par des requêtes d'utilisateur.\n\nLes valeurs valides sont :\n* \"continue\" : comportement par défaut. Une valeur \"traceparent\" entrante est utilisée pour continuer le traçage et déterminer la décision d'échantillonnage.\n* \"restart\" : ignore toujours l'en-tête \"traceparent\" des requêtes entrantes. Un nouveau trace-id sera généré et la décision d'échantillonnage sera prise en fonction de transaction_sample_rate. Une liaison d'intervalle sera effectuée vers le \"traceparent\" entrant.\n* \"restart_external\" : Si une requête entrante inclut le drapeau \"es\" dans \"tracestate\", tout \"traceparent\" sera considéré comme interne et sera géré comme décrit pour \"continue\" ci-dessus. Autrement, tout \"traceparent\" est considéré comme externe et sera géré comme décrit pour \"restart\" ci-dessus.\n\nDepuis Elastic Observability 8.2, les liens d'intervalle sont visibles dans les vues de trace.\n\nCette option ne respecte pas la casse.", + "xpack.apm.agentConfig.traceContinuationStrategy.description": "Cette option permet un certain contrôle sur la façon dont l'agent APM gère les en-tête de contexte de trace W3C dans les requêtes entrantes. Par défaut, les en-têtes `traceparent` et `tracestate` sont utilisés conformément aux spécifications W3C pour le traçage distribué. Cependant, dans certains cas, il peut être utile de ne pas utiliser l'en-tête `traceparent` entrant. Quelques exemples de cas d'utilisation :\n\n* Un service monitoré par Elastic reçoit des requêtes avec les en-têtes `traceparent` de services non monitorés.\n* Un service monitoré par Elastic est publiquement exposé, et ne souhaite pas que les données de traçage (ID de traçage, décisions d'échantillonnage) puissent être usurpées par des requêtes d'utilisateur.\n\nLes valeurs valides sont :\n* \"continue\" : comportement par défaut. Une valeur `traceparent` entrante est utilisée pour continuer le traçage et déterminer la décision d'échantillonnage.\n* \"restart\" : ignore toujours l'en-tête `traceparent` des requêtes entrantes. Un nouveau trace-id sera généré et la décision d'échantillonnage sera prise en fonction de transaction_sample_rate. Une liaison d'intervalle sera effectuée vers le `traceparent` entrant.\n* \"restart_external\" : Si une requête entrante inclut le drapeau de fournisseur `es` dans `tracestate`, tout `traceparent` sera considéré comme interne et sera géré comme décrit pour `continue` ci-dessus. Autrement, tout `traceparent` est considéré comme externe et sera géré comme décrit pour `restart` ci-dessus.\n\nDepuis Elastic Observability 8.2, les liens d'intervalle sont visibles dans les vues de trace.\n\nCette option ne respecte pas la casse.", "xpack.apm.agentConfig.traceContinuationStrategy.label": "Stratégie de poursuite de traçage", - "xpack.apm.agentConfig.traceMethods.description": "Liste de méthodes pour lesquelles une transaction ou un intervalle doit être créé(e).\n\nSi vous souhaitez monitorer un nombre important de méthodes,\nutilisez \"profiling_inferred_spans_enabled\".\n\nCela fonctionne en instrumentant chaque méthode correspondante pour inclure le code qui crée un intervalle pour la méthode.\nSi la création d'un intervalle est très économique en termes de performances,\nl'instrumentation de toute une base de codes ou d'une méthode qui est exécutée dans une boucle serrée entraîne une surcharge significative.\n\nREMARQUE : utilisez les caractères génériques uniquement si cela est nécessaire.\nPlus vous faites correspondre de méthodes, plus l'agent créera une surcharge.\nNotez également qu'il existe une quantité maximale d'intervalles par transaction, \"transaction_max_spans\".\n\nPour en savoir plus, consultez la documentation de l'agent Java.", + "xpack.apm.agentConfig.traceMethods.description": "Liste de méthodes pour lesquelles une transaction ou un intervalle doivent être créés.\n\nSi vous souhaitez monitorer un nombre important de méthodes,\nutilisez `profiling_inferred_spans_enabled`.\n\nCela fonctionne en instrumentant chaque méthode correspondante pour inclure le code qui crée un intervalle pour la méthode.\nSi la création d'un intervalle est très économique en termes de performances,\nl'instrumentation de toute une base de codes ou d'une méthode qui est exécutée dans une boucle serrée entraîne une surcharge significative.\n\nREMARQUE : utilisez les caractères génériques uniquement si cela est nécessaire.\nPlus vous faites correspondre de méthodes, plus l'agent créera une surcharge.\nNotez également qu'il existe une quantité maximale d'intervalles par transaction, `transaction_max_spans`.\n\nPour en savoir plus, consultez la documentation de l'agent Java.", "xpack.apm.agentConfig.traceMethods.label": "Méthodes de traçage", - "xpack.apm.agentConfig.transactionIgnoreUrl.description": "Utilisé pour limiter l'instrumentation des requêtes vers certaines URL. Cette configuration accepte une liste séparée par des virgules de modèles de caractères génériques de chemins d'URL qui doivent être ignorés. Lorsqu'une requête HTTP entrante sera détectée, son chemin de requête sera confronté à chaque élément figurant dans cette liste. Par exemple, l'ajout de \"/home/index\" à cette liste permettrait de faire correspondre et de supprimer l'instrumentation de \"http://localhost/home/index\" ainsi que de \"http://whatever.com/home/index?value1=123\"", + "xpack.apm.agentConfig.transactionIgnoreUrl.description": "Utilisé pour limiter l'instrumentation des requêtes vers certaines URL. Cette configuration accepte une liste séparée par des virgules de modèles de caractères génériques de chemins d'URL qui doivent être ignorés. Lorsqu'une requête HTTP entrante sera détectée, son chemin de requête sera confronté à chaque élément figurant dans cette liste. Par exemple, l'ajout de `/home/index` à cette liste permettrait de faire correspondre et de supprimer l'instrumentation de `http://localhost/home/index` ainsi que de `http://whatever.com/home/index?value1=123`", "xpack.apm.agentConfig.transactionIgnoreUrl.label": "Ignorer les transactions basées sur les URL", - "xpack.apm.agentConfig.transactionIgnoreUserAgents.description": "Utilisé pour limiter l'instrumentation des requêtes de certains agents utilisateurs.\n\nLorsqu'une requête HTTP entrante est détectée,\nl'agent utilisateur des en-têtes de la requête sera testé avec chaque élément de cette liste.\nExemple : \"curl/*\", \"*pingdom*\"", + "xpack.apm.agentConfig.transactionIgnoreUserAgents.description": "Utilisé pour limiter l'instrumentation des requêtes de certains agents utilisateurs.\n\nLorsqu'une requête HTTP entrante est détectée,\nl'agent utilisateur des en-têtes de la requête sera testé avec chaque élément de cette liste.\nExemple : `curl/*`, `*pingdom*`", "xpack.apm.agentConfig.transactionIgnoreUserAgents.label": "La transaction ignore les agents utilisateurs", "xpack.apm.agentConfig.transactionMaxSpans.description": "Limite la quantité d'intervalles enregistrés par transaction.", "xpack.apm.agentConfig.transactionMaxSpans.label": "Nb maxi d'intervalles de transaction", @@ -8081,7 +9123,7 @@ "xpack.apm.agentConfig.unnestExceptions.description": "Lors du reporting d'exceptions,\ndésimbrique les exceptions correspondant au modèle de caractère générique.\nCela peut s'avérer pratique pour Spring avec \"org.springframework.web.util.NestedServletException\",\npar exemple.", "xpack.apm.agentConfig.unnestExceptions.label": "Désimbriquer les exceptions", "xpack.apm.agentConfig.unsavedSetting.tooltip": "Non enregistré", - "xpack.apm.agentConfig.usePathAsTransactionName.description": "Si \"true\" est défini,\nles noms de transaction de frameworks non pris en charge ou partiellement pris en charge seront au format \"$method $path\" au lieu de simplement \"$method unknown route\".\n\nAVERTISSEMENT : si vos URL contiennent des paramètres de chemin tels que \"/user/$userId\",\nsoyez très prudent en activant cet indicateur,\ncar cela peut entraîner une explosion de groupes de transactions.\nConsultez l'option \"transaction_name_groups\" pour savoir comment atténuer ce problème en regroupant les URL ensemble.", + "xpack.apm.agentConfig.usePathAsTransactionName.description": "Si `true` est défini,\nles noms de transaction de frameworks non pris en charge ou partiellement pris en charge seront au format `$method $path` au lieu de simplement `$method unknown route`.\n\nAVERTISSEMENT : si vos URL contiennent des paramètres de chemin tels que `/user/$userId`,\nsoyez très prudent en activant cet indicateur,\ncar cela peut entraîner une explosion de groupes de transactions.\nConsultez l'option `transaction_name_groups` pour savoir comment atténuer ce problème en regroupant les URL ensemble.", "xpack.apm.agentConfig.usePathAsTransactionName.label": "Utiliser le chemin comme nom de transaction", "xpack.apm.agentExplorer.agentLanguageSelect.label": "Langage de l'agent", "xpack.apm.agentExplorer.agentLanguageSelect.placeholder": "Tous", @@ -8162,6 +9204,9 @@ "xpack.apm.alerts.action_variables.transactionType": "Type de transaction pour lequel l'alerte est créée", "xpack.apm.alerts.action_variables.triggerValue": "Valeur ayant dépassé le seuil et déclenché l'alerte", "xpack.apm.alerts.action_variables.viewInAppUrl": "Lien vers la source de l’alerte", + "xpack.apm.alerts.anomalyDetector.failedTransactionRateLabel": "taux d'échecs de transactions", + "xpack.apm.alerts.anomalyDetector.latencyLabel": "latence", + "xpack.apm.alerts.anomalyDetector.throughputLabel": "rendement", "xpack.apm.alerts.anomalySeverity.criticalLabel": "critique", "xpack.apm.alerts.anomalySeverity.majorLabel": "majeur", "xpack.apm.alerts.anomalySeverity.minor": "mineure", @@ -8198,6 +9243,8 @@ "xpack.apm.anomalyDetectionSetup.linkLabel": "Détection des anomalies", "xpack.apm.anomalyDetectionSetup.notEnabledText": "La détection des anomalies n'est pas encore activée. Cliquez pour continuer la configuration.", "xpack.apm.anomalyDetectionSetup.upgradeableJobsText": "Mises à jour disponibles pour les tâches de détection des anomalies existantes.", + "xpack.apm.anomalyRuleType.anomalyDetector": "Types de détecteurs", + "xpack.apm.anomalyRuleType.anomalyDetector.infoLabel": "Vous devez sélectionner au moins un détecteur", "xpack.apm.anomalyScore": "Anomalie {severity, select, minor {mineure} major {majeure} critical {critique}}", "xpack.apm.api.apiKeys.securityRequired": "Le plug-in de sécurité est requis", "xpack.apm.api.fleet.cloud_apm_package_policy.requiredRoleOnCloud": "Opération autorisée uniquement pour les utilisateurs Elastic Cloud disposant du rôle de superutilisateur.", @@ -8288,6 +9335,14 @@ "xpack.apm.correlations.progressAriaLabel": "Progression", "xpack.apm.correlations.refreshButtonTitle": "Actualiser", "xpack.apm.correlations.veryLowImpactText": "Très bas", + "xpack.apm.crashTable.crashMessageAndCulpritColumnLabel": "Message de panne", + "xpack.apm.crashTable.groupIdColumnDescription": "Hachage de la trace de pile. Regroupe les erreurs similaires, même lorsque le message d'erreur est différent en raison des paramètres dynamiques.", + "xpack.apm.crashTable.groupIdColumnLabel": "ID du groupe", + "xpack.apm.crashTable.lastSeenColumnLabel": "Vu en dernier", + "xpack.apm.crashTable.loading": "Chargement...", + "xpack.apm.crashTable.noCrashesLabel": "Pas de pannes trouvées", + "xpack.apm.crashTable.occurrencesColumnLabel": "Occurrences", + "xpack.apm.crashTable.typeColumnLabel": "Type", "xpack.apm.customLink.buttom.create": "Créer un lien personnalisé", "xpack.apm.customLink.buttom.create.title": "Créer", "xpack.apm.customLink.buttom.manage": "Gérer des liens personnalisés", @@ -8295,7 +9350,7 @@ "xpack.apm.dashboard.addDashboard.useContextFilterLabel": "Filtrer par service et par environnement", "xpack.apm.dashboard.addDashboard.useContextFilterLabel.tooltip": "L'activation de cette option applique des filtres au tableau de bord en fonction du service et de l'environnement choisis.", "xpack.apm.data_view.creation_failed": "Une erreur s'est produite lors de la création de la vue de données", - "xpack.apm.dataView.alreadyExistsInActiveSpace": "La vue de données existe déjà dans l'espace actif", + "xpack.apm.dataView.alreadyExistsInActiveSpace": "L'affichage des données existe déjà dans l'espace actif et n'a pas besoin d'être mis à jour", "xpack.apm.dataView.autoCreateDisabled": "La création automatique des vues de données a été désactivée via l'option de configuration \"autoCreateApmDataView\"", "xpack.apm.dataView.noApmData": "Aucune donnée APM", "xpack.apm.dependecyOperationDetailView.header.backLinkLabel": "Toutes les opérations", @@ -8339,6 +9394,8 @@ "xpack.apm.diagnostics.tab.index_templates": "Modèles d'index", "xpack.apm.diagnostics.tab.indices": "Index", "xpack.apm.diagnostics.tab.summary": "Résumé", + "xpack.apm.diagnosticsApmDocuments.em.emptyLabel": "Vide", + "xpack.apm.diagnosticsApmDocuments.filter:BadgeLabel": "Filtrer :", "xpack.apm.durationDistribution.chart.currentEventMarkerLabel": "Échantillon actuel", "xpack.apm.durationDistribution.chart.latencyLabel": "Latence", "xpack.apm.durationDistribution.chart.numberOfSpansLabel": "Intervalles", @@ -8372,9 +9429,12 @@ "xpack.apm.errorGroupTopTransactions.noResults": "Aucune erreur trouvée associée à des transactions", "xpack.apm.errorGroupTopTransactions.title": "5 principales transactions affectées", "xpack.apm.errorKeySelectCustomOptionText": "Ajouter \\{searchValue\\} comme nouvelle clé de groupe d'erreurs", + "xpack.apm.errorOverview.treemap.dropdown.devices.subtitle": "Cet affichage sous forme de compartimentage permet de visualiser plus facilement et rapidement les appareils les plus affectés", + "xpack.apm.errorOverview.treemap.dropdown.versions.subtitle": "Cet affichage sous forme de compartimentage permet de visualiser plus facilement et rapidement les versions les plus affectées.", "xpack.apm.errorRate": "Taux de transactions ayant échoué", "xpack.apm.errorRate.chart.errorRate": "Taux de transactions ayant échoué (moy.)", "xpack.apm.errorRate.tip": "Le pourcentage de transactions ayant échoué pour le service sélectionné. Les transactions du serveur HTTP avec un code du statut 4xx (erreur du client) ne sont pas considérées comme des échecs, car l'appelant, et non le serveur, a provoqué l'échec.", + "xpack.apm.errors.httpErrorRateTitle": "Taux d'erreur HTTP", "xpack.apm.errorSampleDetails.errorOccurrenceTitle": "Exemple d'erreur", "xpack.apm.errorSampleDetails.investigateMenu": "Examiner", "xpack.apm.errorSampleDetails.relatedTransactionSample": "Échantillon de transaction associée", @@ -8386,6 +9446,8 @@ "xpack.apm.errorsTable.columnName": "Nom", "xpack.apm.errorsTable.columnOccurrences": "Occurrences", "xpack.apm.errorsTable.errorMessageAndCulpritColumnLabel": "Message d'erreur et coupable", + "xpack.apm.errorsTable.errorMessageColumnLabel": "Message d'erreur", + "xpack.apm.errorsTable.filterErrorsPlaceholder": "Rechercher les erreurs par message, par type ou par coupable", "xpack.apm.errorsTable.groupIdColumnDescription": "Hachage de la trace de pile. Regroupe les erreurs similaires, même lorsque le message d'erreur est différent en raison des paramètres dynamiques.", "xpack.apm.errorsTable.groupIdColumnLabel": "ID du groupe", "xpack.apm.errorsTable.lastSeenColumnLabel": "Vu en dernier", @@ -8473,7 +9535,7 @@ "xpack.apm.fleet_integration.settings.rum.rumAllowHeaderTitle": "En-têtes personnalisés", "xpack.apm.fleet_integration.settings.rum.rumAllowOriginsHelpText": "En-têtes Origin autorisés pouvant être envoyés par les agents utilisateurs.", "xpack.apm.fleet_integration.settings.rum.rumAllowOriginsLabel": "Origines autorisées", - "xpack.apm.fleet_integration.settings.rum.rumExcludeFromGroupingHelpText": "Exclure les cadres des traces de pile du calcul des groupes d'erreurs en faisant correspondre le \"file_name\" d'un cadre de trace de pile avec ce regexp.", + "xpack.apm.fleet_integration.settings.rum.rumExcludeFromGroupingHelpText": "Exclure les cadres des traces de pile du calcul des groupes d'erreurs en faisant correspondre le `file_name` d'un cadre de trace de pile avec ce regexp.", "xpack.apm.fleet_integration.settings.rum.rumExcludeFromGroupingLabel": "Exclure du regroupement", "xpack.apm.fleet_integration.settings.rum.rumLibraryPatternHelpText": "Identifiez les cadres de la bibliothèque en faisant correspondre le file_name et le abs_path du cadre de la trace de pile avec ce regexp.", "xpack.apm.fleet_integration.settings.rum.rumLibraryPatternLabel": "Modèle du cadre de la bibliothèque", @@ -8547,6 +9609,8 @@ "xpack.apm.formatters.millisTimeUnitLabel": "ms", "xpack.apm.formatters.minutesTimeUnitLabel": "min", "xpack.apm.formatters.secondsTimeUnitLabel": "s", + "xpack.apm.getAgentsColumns.euiButtonIcon.toggleAgentInstancesViewLabel": "Basculer la vue des instances de l'agent", + "xpack.apm.getColumns.euiButtonIcon.editLabel": "Modifier", "xpack.apm.header.badge.readOnly.text": "Lecture seule", "xpack.apm.header.badge.readOnly.tooltip": "Enregistrement impossible", "xpack.apm.helpMenu.upgradeAssistantLink": "Assistant de mise à niveau", @@ -8629,16 +9693,27 @@ "xpack.apm.mobile.charts.nct": "Type de connexion réseau", "xpack.apm.mobile.charts.noResultsFound": "Résultat introuvable", "xpack.apm.mobile.charts.osVersion": "Version du système d'exploitation", + "xpack.apm.mobile.errorOverview.treemap.dropdown.devices": "Appareils", + "xpack.apm.mobile.errorOverview.treemap.dropdown.devices.subtitle": "Compartimentage affichant les appareils les plus affectés.", + "xpack.apm.mobile.errorOverview.treemap.dropdown.osVersions": "Versions du système d'exploitation", + "xpack.apm.mobile.errorOverview.treemap.dropdown.osVersions.subtitle": "Compartimentage affichant les versions du système d'exploitation les plus affectées.", + "xpack.apm.mobile.errorOverview.treemap.dropdown.versions.subtitle": "Compartimentage affichant les applications les plus affectées.", + "xpack.apm.mobile.errorOverview.treemap.versions.devices": "Versions de l'application", + "xpack.apm.mobile.errors.httpErrorRate": "Taux d'erreur HTTP", + "xpack.apm.mobile.errors.httpErrorRateTooltip": "Taux d'erreur HTTP composé de 4xx & 5xx.", + "xpack.apm.mobile.errorsAndCrashes.crashesTab": "Pannes", + "xpack.apm.mobile.errorsAndCrashes.errorsTab": "Erreurs", "xpack.apm.mobile.filters.appVersion": "Version de l'application", "xpack.apm.mobile.filters.device": "Appareil", "xpack.apm.mobile.filters.nct": "NCT", "xpack.apm.mobile.filters.osVersion": "Version du système d'exploitation", "xpack.apm.mobile.location.metrics.http.requests.title": "Le plus utilisé dans", "xpack.apm.mobile.location.metrics.launches": "La plupart des lancements", + "xpack.apm.mobile.location.metrics.mostCrashes": "La plupart des pannes", "xpack.apm.mobile.location.metrics.sessions": "La plupart des sessions", "xpack.apm.mobile.metrics.crash.rate": "Taux de panne", "xpack.apm.mobile.metrics.http.requests": "Requêtes HTTP", - "xpack.apm.mobile.metrics.load.time": "Temps de chargement de l'application le plus lent", + "xpack.apm.mobile.metrics.load.time": "Temps moyen de chargement de l'application", "xpack.apm.mobile.metrics.sessions": "Sessions", "xpack.apm.mobile.stats.table.loading": "Chargement...", "xpack.apm.mobile.stats.table.noDataMessage": "Aucune donnée trouvée", @@ -8651,6 +9726,7 @@ "xpack.apm.mobile.transactions.overview.tabs.os.version": "Version du système d'exploitation", "xpack.apm.mobile.transactions.overview.tabs.transactions": "Transactions", "xpack.apm.mobileServiceDetails.alertsTabLabel": "Alertes", + "xpack.apm.mobileServiceDetails.dashboardsTabLabel": "Tableaux de bord", "xpack.apm.mobileServiceDetails.overviewTabLabel": "Aperçu", "xpack.apm.mobileServiceDetails.serviceMapTabLabel": "Carte des services", "xpack.apm.mobileServiceDetails.transactionsTabLabel": "Transactions", @@ -8691,21 +9767,21 @@ "xpack.apm.onboarding.config_otel.column.configSettings": "Paramètre de configuration (1)", "xpack.apm.onboarding.config_otel.column.configValue": "Valeur de configuration", "xpack.apm.onboarding.config_otel.column.notes": "Notes", - "xpack.apm.onboarding.config_otel.description2": "Les variables d’environnement 'OTEL_METRICS_EXPORTER` et 'OTEL_LOGS_EXPORTER' peuvent ne pas être prises en charge par certains SDK.", + "xpack.apm.onboarding.config_otel.description2": "Les variables d’environnement `OTEL_METRICS_EXPORTER` et `OTEL_LOGS_EXPORTER` peuvent ne pas être prises en charge par certains SDK.", "xpack.apm.onboarding.config_otel.instrumentationGuide": "Guide de l’Instrumentation OpenTelemetry", - "xpack.apm.onboarding.django.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du \"SERVICE_NAME\".", + "xpack.apm.onboarding.django.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du `SERVICE_NAME`.", "xpack.apm.onboarding.django.configure.title": "Configurer l'agent", "xpack.apm.onboarding.django.install.textPre": "Installez l'agent APM pour Python en tant que dépendance.", "xpack.apm.onboarding.django.install.title": "Installer l'agent APM", "xpack.apm.onboarding.djangoClient.configure.commands.addAgentComment": "Ajouter l'agent aux applications installées", "xpack.apm.onboarding.djangoClient.configure.commands.addTracingMiddlewareComment": "Ajoutez notre intergiciel de traçage pour envoyer des indicateurs de performance", "xpack.apm.onboarding.dotNet.configureAgent.title": "Exemple de fichier appsettings.json :", - "xpack.apm.onboarding.dotNet.configureApplication.textPost": "La transmission d'une instance \"IConfiguration\" est facultative mais si cette opération est effectuée, l'agent lira les paramètres de configuration depuis cette instance \"IConfiguration\" (par ex. à partir du fichier \"appsettings.json\").", - "xpack.apm.onboarding.dotNet.configureApplication.textPre": "Si vous utilisez ASP.NET Core avec le package \"Elastic.Apm.NetCoreAll\", appelez la méthode \"UseAllElasticApm\" dans la méthode \"Configure\" dans le fichier \"Startup.cs\".", + "xpack.apm.onboarding.dotNet.configureApplication.textPost": "La transmission d'une instance `IConfiguration` est facultative mais si cette opération est effectuée, l'agent lira les paramètres de configuration depuis cette instance `IConfiguration` (par ex. à partir du fichier `appsettings.json`).", + "xpack.apm.onboarding.dotNet.configureApplication.textPre": "Si vous utilisez ASP.NET Core avec le package `Elastic.Apm.NetCoreAll`, appelez la méthode `UseAllElasticApm` dans la méthode \"Configure\" dans le fichier `Startup.cs`.", "xpack.apm.onboarding.dotNet.configureApplication.title": "Ajouter l'agent à l'application", "xpack.apm.onboarding.dotNet.download.title": "Télécharger l'agent APM", "xpack.apm.onboarding.dotnetClient.createConfig.commands.defaultServiceName": "La valeur par défaut est l'assemblage d'entrée de l'application.", - "xpack.apm.onboarding.flask.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du \"SERVICE_NAME\".", + "xpack.apm.onboarding.flask.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du `SERVICE_NAME`.", "xpack.apm.onboarding.flask.configure.title": "Configurer l'agent", "xpack.apm.onboarding.flask.install.textPre": "Installez l'agent APM pour Python en tant que dépendance.", "xpack.apm.onboarding.flask.install.title": "Installer l'agent APM", @@ -8713,7 +9789,7 @@ "xpack.apm.onboarding.flaskClient.configure.commands.initializeUsingEnvironmentVariablesComment": "Initialisez à l'aide des variables d'environnement", "xpack.apm.onboarding.footer.cta": "Lancer APM", "xpack.apm.onboarding.footer.exploreYourDataDescription": "Une fois toutes les étapes terminées, vous êtes prêt à explorer vos données.", - "xpack.apm.onboarding.go.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du nom du fichier exécutable, ou de la variable d'environnement \"ELASTIC_APM_SERVICE_NAME\".", + "xpack.apm.onboarding.go.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du nom du fichier exécutable, ou de la variable d'environnement `ELASTIC_APM_SERVICE_NAME`.", "xpack.apm.onboarding.go.configure.title": "Configurer l'agent", "xpack.apm.onboarding.go.goClient.title": "Instrumenter votre application", "xpack.apm.onboarding.go.install.textPre": "Installez les packages d'agent APM pour Go.", @@ -8724,7 +9800,7 @@ "xpack.apm.onboarding.introduction.imageAltDescription": "Capture d'écran du tableau de bord principal.", "xpack.apm.onboarding.java.download.title": "Télécharger l'agent APM", "xpack.apm.onboarding.java.startApplication.title": "Lancer votre application avec l'indicateur javaagent", - "xpack.apm.onboarding.node.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du \"serviceName\". Cet agent prend en charge de nombreux frameworks, mais peut également être utilisé avec votre pile personnalisée.", + "xpack.apm.onboarding.node.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du `serviceName`. Cet agent prend en charge de nombreux frameworks, mais peut également être utilisé avec votre pile personnalisée.", "xpack.apm.onboarding.node.configure.title": "Configurer l'agent", "xpack.apm.onboarding.node.install.textPre": "Installez l'agent APM pour Node.js comme dépendance de votre application.", "xpack.apm.onboarding.node.install.title": "Installer l'agent APM", @@ -8733,7 +9809,7 @@ "xpack.apm.onboarding.otel.column.value.copyIconText": "Copier dans le presse-papiers", "xpack.apm.onboarding.otel.configureAgent.title": "Configurer OpenTelemetry dans votre application", "xpack.apm.onboarding.otel.download.title": "Télécharger l’agent APM OpenTelemetry ou le SDK", - "xpack.apm.onboarding.php.Configure the agent.textPre": "APM se lance automatiquement au démarrage de l'application. Configurez l'agent soit depuis le fichier \"php.ini\" :", + "xpack.apm.onboarding.php.Configure the agent.textPre": "APM se lance automatiquement au démarrage de l'application. Configurez l'agent soit depuis le fichier `php.ini` :", "xpack.apm.onboarding.php.configureAgent.title": "Configurer l'agent", "xpack.apm.onboarding.php.download.title": "Télécharger l'agent APM", "xpack.apm.onboarding.php.installPackage.textPre": "Par exemple sur Alpine Linux avec le package APK :", @@ -8759,10 +9835,10 @@ "xpack.apm.pages.alertDetails.alertSummary.serviceEnv": "Environnement de service", "xpack.apm.pages.alertDetails.alertSummary.serviceName": "Nom de service", "xpack.apm.percentOfParent": "({value} de {parentType, select, transaction { transaction } trace {trace} })", - "xpack.apm.profiling.callout.description": "Universal Profiling fournit une visibilité sans précédent du code au milieu du comportement en cours d'exécution de toutes les applications. La fonctionnalité profile chaque ligne de code chez le ou les hôte(s) qui exécute(nt) vos services, y compris votre code applicatif, le kernel et même les bibliothèque tierces.", + "xpack.apm.profiling.callout.description": "Universal Profiling fournit une visibilité sans précédent du code au milieu du comportement en cours d'exécution de toutes les applications. La fonctionnalité profile chaque ligne de code chez le ou les hôtes qui exécutent vos services, y compris votre code applicatif, le kernel et même les bibliothèque tierces.", "xpack.apm.profiling.callout.dismiss": "Rejeter", "xpack.apm.profiling.callout.learnMore": "En savoir plus", - "xpack.apm.profiling.flamegraph.filteredLabel": "Affichage des informations de profilage du ou des hôte(s) des services", + "xpack.apm.profiling.flamegraph.filteredLabel": "Affichage des informations de profilage du ou des hôtes des services", "xpack.apm.profiling.flamegraph.link": "Accéder au flame-graph d'Universal Profiling", "xpack.apm.profiling.flamegraph.noDataFound": "Aucune donnée trouvée", "xpack.apm.profiling.tabs.flamegraph": "Flame-graph", @@ -8824,7 +9900,7 @@ "xpack.apm.serviceDashboards.selectDashboard.modalTitle.edit": "Modifier le tableau de bord", "xpack.apm.serviceDashboards.selectDashboard.modalTitle.link": "Sélectionner le tableau de bord", "xpack.apm.serviceDashboards.selectDashboard.placeholder": "Sélectionner le tableau de bord", - "xpack.apm.serviceDashboards.selectDashboard.prepend": "Tableau de bord", + "xpack.apm.serviceDashboards.selectDashboard.prepend": "Dashboard", "xpack.apm.serviceDashboards.unlinkEmptyButtonLabel": "Dissocier le tableau de bord", "xpack.apm.serviceDashboards.unlinkEmptyButtonLabel.confirm.body": "Vous êtes sur le point de dissocier le tableau de bord de l'environnement du service", "xpack.apm.serviceDashboards.unlinkEmptyButtonLabel.confirm.button": "Dissocier le tableau de bord", @@ -8833,10 +9909,16 @@ "xpack.apm.serviceDetails.dependenciesTabLabel": "Dépendances", "xpack.apm.serviceDetails.errorsTabLabel": "Erreurs", "xpack.apm.serviceDetails.metrics.cpuUsageChartTitle": "Utilisation CPU", + "xpack.apm.serviceDetails.metrics.crashes.title": "Pannes", + "xpack.apm.serviceDetails.metrics.crashOccurrencesChart.title": "Occurrences de panne", + "xpack.apm.serviceDetails.metrics.errorOccurrencesChart.tip": "L'occurrence de panne est mesurée en pannes par minute.", "xpack.apm.serviceDetails.metrics.errorOccurrencesChart.title": "Occurrences d'erreurs", + "xpack.apm.serviceDetails.metrics.errorRateChart.tip": "Le taux d'erreur est mesuré en transactions par minute.", + "xpack.apm.serviceDetails.metrics.errorRateChart.title": "Taux d'erreur", "xpack.apm.serviceDetails.metrics.errorsList.title": "Erreurs", "xpack.apm.serviceDetails.metrics.memoryUsageChartTitle": "Utilisation mémoire système", "xpack.apm.serviceDetails.metricsTabLabel": "Indicateurs", + "xpack.apm.serviceDetails.mobileErrorsTabLabel": "Erreurs & Pannes", "xpack.apm.serviceDetails.overviewTabLabel": "Aperçu", "xpack.apm.serviceDetails.transactionsTabLabel": "Transactions", "xpack.apm.serviceGroup.allServices.title": "Services", @@ -8932,7 +10014,7 @@ "xpack.apm.serviceMap.avgTransDurationPopoverStat": "Latence (moy.)", "xpack.apm.serviceMap.center": "Centre", "xpack.apm.serviceMap.dependencyDetailsButtonText": "Détails des dépendances", - "xpack.apm.serviceMap.disabledDescription": "La carte des services a été désactivée. Elle peut être activée via \"xpack.apm.serviceMapEnabled\"", + "xpack.apm.serviceMap.disabledDescription": "La carte des services a été désactivée. Elle peut être activée via `xpack.apm.serviceMapEnabled`", "xpack.apm.serviceMap.disabledTitle": "Carte des services désactivée", "xpack.apm.serviceMap.download": "Télécharger", "xpack.apm.serviceMap.emptyBanner.docsLink": "En savoir plus dans la documentation", @@ -9026,12 +10108,14 @@ "xpack.apm.servicesGroups.loadingServiceGroups": "Chargement des groupes de services", "xpack.apm.servicesTable.alertsColumnLabel": "Alertes actives", "xpack.apm.servicesTable.environmentColumnLabel": "Environnement", + "xpack.apm.servicesTable.filterServicesPlaceholder": "Rechercher des services par nom", "xpack.apm.servicesTable.healthColumnLabel": "Intégrité", "xpack.apm.servicesTable.latencyAvgColumnLabel": "Latence (moy.)", "xpack.apm.servicesTable.metricsExplanationLabel": "Que sont ces indicateurs ?", "xpack.apm.servicesTable.nameColumnLabel": "Nom", "xpack.apm.servicesTable.notFoundLabel": "Aucun service trouvé", "xpack.apm.servicesTable.throughputColumnLabel": "Rendement", + "xpack.apm.servicesTable.tooltip.maxCountExceededWarning": "Vous avez dépassé la limite de 1 000 services. Veuillez utiliser la barre de requêtes pour affiner les résultats ou créer des groupes de services.", "xpack.apm.servicesTable.tooltip.metricsExplanation": "Les indicateurs du services sont agrégés sur le type de transaction, qui peut être une requête ou un chargement de page. Si ni l'un ni l'autre n'existent, les indicateurs sont agrégés sur le type de transaction disponible en premier.", "xpack.apm.servicesTable.transactionColumnLabel": "Type de transaction", "xpack.apm.servicesTable.transactionErrorRate": "Taux de transactions ayant échoué", @@ -9290,7 +10374,7 @@ "xpack.apm.storageExplorer.table.samplingColumnName": "Taux d’échantillonnage", "xpack.apm.storageExplorer.table.serviceColumnName": "Service", "xpack.apm.storageExplorerLinkLabel": "Explorateur de stockage", - "xpack.apm.technicalPreviewBadgeDescription": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera au maximum de corriger tout problème, mais les fonctionnalités en version d'évaluation technique ne sont pas soumises aux accords de niveau de service d'assistance des fonctionnalités officielles en disponibilité générale.", + "xpack.apm.technicalPreviewBadgeDescription": "Cette fonctionnalité est en version d'évaluation technique et pourra être modifiée ou retirée complètement dans une future version. Elastic s'efforcera de corriger tout problème, mais les fonctionnalités des versions d'évaluation technique ne sont pas soumises aux SLA de support des fonctionnalités officielles en disponibilité générale.", "xpack.apm.technicalPreviewBadgeLabel": "Version d'évaluation technique", "xpack.apm.timeComparison.label": "Comparaison", "xpack.apm.timeComparison.select.dayBefore": "Jour précédent", @@ -9348,6 +10432,7 @@ "xpack.apm.transactionBreakdown.chartTitle": "Temps consacré par type d'intervalle", "xpack.apm.transactionDetail.remainingServices": "Transactions restantes", "xpack.apm.transactionDetail.tooltip": "Infobulle de nombre maximal de groupes de transactions atteint", + "xpack.apm.transactionDetails.agentMissingTransactionLabel": "Trace incomplète", "xpack.apm.transactionDetails.coldstartBadge": "démarrage à froid", "xpack.apm.transactionDetails.distribution.failedTransactionsLatencyDistributionErrorTitle": "Une erreur s'est produite lors de la récupération de la distribution de la latence des transactions ayant échoué.", "xpack.apm.transactionDetails.distribution.latencyDistributionErrorTitle": "Une erreur s'est produite lors de la récupération de la distribution de la latence globale.", @@ -9375,6 +10460,7 @@ "xpack.apm.transactionDetails.tabs.aggregatedCriticalPathLabel": "Chemin critique agrégé", "xpack.apm.transactionDetails.tabs.failedTransactionsCorrelationsLabel": "Corrélations des transactions ayant échoué", "xpack.apm.transactionDetails.tabs.latencyLabel": "Corrélations de latence", + "xpack.apm.transactionDetails.tabs.ProfilingLabel": "Universal Profiling", "xpack.apm.transactionDetails.tabs.traceSamplesLabel": "Échantillons de traces", "xpack.apm.transactionDetails.topErrors.errorMessage": "Impossible de récupérer les erreurs", "xpack.apm.transactionDetails.topErrors.loading": "Chargement...", @@ -9401,16 +10487,18 @@ "xpack.apm.transactionErrorRateAlert.name": "Seuil du taux de transactions ayant échoué", "xpack.apm.transactionErrorRateRuleType.isAbove": "est supérieur à", "xpack.apm.transactionNamesSelectPlaceholder": "Sélectionner le nom de transaction", - "xpack.apm.transactionOverview.treemap.dropdown.devices": "Compartimentage des appareils", + "xpack.apm.transactionOverview.treemap.dropdown.devices": "Appareils", "xpack.apm.transactionOverview.treemap.dropdown.devices.subtitle": "Cette vue sous forme de compartimentage permet de visualiser plus facilement et rapidement les appareils les plus utilisés.", "xpack.apm.transactionOverview.treemap.dropdown.versions.subtitle": "Cette vue sous forme de compartimentage permet de visualiser plus facilement et rapidement les versions les plus utilisées.", "xpack.apm.transactionOverview.treemap.show": "Afficher", - "xpack.apm.transactionOverview.treemap.versions.devices": "Compartimentage des versions", + "xpack.apm.transactionOverview.treemap.versions.devices": "Versions", "xpack.apm.transactions.httpRequestsTitle": "Requêtes HTTP", "xpack.apm.transactions.httpRequestsTooltip": "Total des requêtes HTTP", "xpack.apm.transactions.latency.chart.95thPercentileLabel": "95e centile", "xpack.apm.transactions.latency.chart.99thPercentileLabel": "99e centile", "xpack.apm.transactions.latency.chart.averageLabel": "Moyenne", + "xpack.apm.transactions.profiling.tabs.flamegraph": "Flame-graph", + "xpack.apm.transactions.profiling.tabs.topNFunctions": "Les 10 meilleures fonctions", "xpack.apm.transactions.sessionsCharTooltip": "ID de session unique", "xpack.apm.transactions.sessionsChartTitle": "Sessions", "xpack.apm.transactionsCallout.cardinalityWarning.title": "Le nombre de groupes de transactions dépasse le nombre maximal (1 000) autorisé d'affichages.", @@ -9418,6 +10506,7 @@ "xpack.apm.transactionsTable.linkText": "Afficher les transactions", "xpack.apm.transactionsTable.loading": "Chargement...", "xpack.apm.transactionsTable.noResults": "Aucune transaction trouvée", + "xpack.apm.transactionsTable.tableSearch.placeholder": "Rechercher des transactions par nom", "xpack.apm.transactionsTable.title": "Transactions", "xpack.apm.transactionsTableColumnName.alertsColumnLabel": "Alertes actives", "xpack.apm.transactionTypesSelectCustomOptionText": "Ajouter \\{searchValue\\} en tant que nouveau type de transaction", @@ -9454,17 +10543,17 @@ "xpack.apm.tutorial.config_otel.column.configValue": "Valeur de configuration", "xpack.apm.tutorial.config_otel.column.notes": "Notes", "xpack.apm.tutorial.config_otel.column.value.copyIconText": "Copier dans le presse-papiers", - "xpack.apm.tutorial.config_otel.description2": "Les variables d’environnement 'OTEL_METRICS_EXPORTER` et 'OTEL_LOGS_EXPORTER' peuvent ne pas être prises en charge par certains SDK.", + "xpack.apm.tutorial.config_otel.description2": "Les variables d’environnement `OTEL_METRICS_EXPORTER` et `OTEL_LOGS_EXPORTER` peuvent ne pas être prises en charge par certains SDK.", "xpack.apm.tutorial.config_otel.instrumentationGuide": "Guide de l’Instrumentation OpenTelemetry", "xpack.apm.tutorial.djangoClient.configure.commands.addAgentComment": "Ajouter l'agent aux applications installées", "xpack.apm.tutorial.djangoClient.configure.commands.addTracingMiddlewareComment": "Ajoutez notre intergiciel de traçage pour envoyer des indicateurs de performance", - "xpack.apm.tutorial.djangoClient.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du \"SERVICE_NAME\".", + "xpack.apm.tutorial.djangoClient.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du `SERVICE_NAME`.", "xpack.apm.tutorial.djangoClient.configure.title": "Configurer l'agent", "xpack.apm.tutorial.djangoClient.install.textPre": "Installez l'agent APM pour Python en tant que dépendance.", "xpack.apm.tutorial.djangoClient.install.title": "Installer l'agent APM", "xpack.apm.tutorial.dotNetClient.configureAgent.title": "Exemple de fichier appsettings.json :", - "xpack.apm.tutorial.dotNetClient.configureApplication.textPost": "La transmission d'une instance \"IConfiguration\" est facultative mais si cette opération est effectuée, l'agent lira les paramètres de configuration depuis cette instance \"IConfiguration\" (par ex. à partir du fichier \"appsettings.json\").", - "xpack.apm.tutorial.dotNetClient.configureApplication.textPre": "Si vous utilisez ASP.NET Core avec le package \"Elastic.Apm.NetCoreAll\", appelez la méthode \"UseAllElasticApm\" dans la méthode \"Configure\" dans le fichier \"Startup.cs\".", + "xpack.apm.tutorial.dotNetClient.configureApplication.textPost": "La transmission d'une instance `IConfiguration` est facultative mais si cette opération est effectuée, l'agent lira les paramètres de configuration depuis cette instance `IConfiguration` (par ex. à partir du fichier `appsettings.json`).", + "xpack.apm.tutorial.dotNetClient.configureApplication.textPre": "Si vous utilisez ASP.NET Core avec le package `Elastic.Apm.NetCoreAll`, appelez la méthode `UseAllElasticApm` dans la méthode \"Configure\" dans le fichier `Startup.cs`.", "xpack.apm.tutorial.dotNetClient.configureApplication.title": "Ajouter l'agent à l'application", "xpack.apm.tutorial.dotnetClient.createConfig.commands.defaultServiceName": "La valeur par défaut est l'assemblage d'entrée de l'application.", "xpack.apm.tutorial.dotNetClient.download.title": "Télécharger l'agent APM", @@ -9474,14 +10563,14 @@ "xpack.apm.tutorial.elasticCloudInstructions.title": "Agents APM", "xpack.apm.tutorial.flaskClient.configure.commands.configureElasticApmComment": "Vous pouvez également utiliser ELASTIC_APM dans les paramètres de votre application", "xpack.apm.tutorial.flaskClient.configure.commands.initializeUsingEnvironmentVariablesComment": "Initialisez à l'aide des variables d'environnement", - "xpack.apm.tutorial.flaskClient.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du \"SERVICE_NAME\".", + "xpack.apm.tutorial.flaskClient.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du `SERVICE_NAME`.", "xpack.apm.tutorial.flaskClient.configure.title": "Configurer l'agent", "xpack.apm.tutorial.flaskClient.install.textPre": "Installez l'agent APM pour Python en tant que dépendance.", "xpack.apm.tutorial.flaskClient.install.title": "Installer l'agent APM", "xpack.apm.tutorial.fleet.title": "Fleet", "xpack.apm.tutorial.goClient.configure.commands.initializeUsingEnvironmentVariablesComment": "Initialisez à l'aide des variables d'environnement :", "xpack.apm.tutorial.goClient.configure.commands.usedExecutableNameComment": "En l'absence de spécification, le nom de l'exécutable est utilisé.", - "xpack.apm.tutorial.goClient.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du nom du fichier exécutable, ou de la variable d'environnement \"ELASTIC_APM_SERVICE_NAME\".", + "xpack.apm.tutorial.goClient.configure.textPre": "Les agents sont des bibliothèques exécutées dans les processus de votre application. Les services APM sont créés par programmation à partir du nom du fichier exécutable, ou de la variable d'environnement `ELASTIC_APM_SERVICE_NAME`.", "xpack.apm.tutorial.goClient.configure.title": "Configurer l'agent", "xpack.apm.tutorial.goClient.install.textPre": "Installez les packages d'agent APM pour Go.", "xpack.apm.tutorial.goClient.install.title": "Installer l'agent APM", @@ -9492,19 +10581,19 @@ "xpack.apm.tutorial.javaClient.startApplication.title": "Lancer votre application avec l'indicateur javaagent", "xpack.apm.tutorial.jsClient.enableRealUserMonitoring.title": "Activer la prise en charge du Real User Monitoring (monitoring des utilisateurs réels) dans le serveur APM", "xpack.apm.tutorial.jsClient.installDependency.commands.setServiceVersionComment": "Définir la version de service (requis pour la fonctionnalité source map)", - "xpack.apm.tutorial.jsClient.installDependency.textPre": "Vous pouvez installer l'Agent comme dépendance de votre application avec \"npm install @elastic/apm-rum --save\".\n\nVous pouvez ensuite initialiser l'agent et le configurer dans votre application de cette façon :", + "xpack.apm.tutorial.jsClient.installDependency.textPre": "Vous pouvez installer l'Agent comme dépendance de votre application avec `npm install @elastic/apm-rum --save`.\n\nVous pouvez ensuite initialiser l'agent et le configurer dans votre application de cette façon :", "xpack.apm.tutorial.jsClient.installDependency.title": "Configurer l'agent comme dépendance", - "xpack.apm.tutorial.jsClient.scriptTags.textPre": "Vous pouvez également utiliser les balises Script pour configurer l'agent. Ajoutez un indicateur \"