1
0
Fork 0
python-docs-fr/howto/instrumentation.po

429 lines
16 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Copyright (C) 2001-2018, Python Software Foundation
# For licence information, see README file.
#
msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-01 16:00+0200\n"
"PO-Revision-Date: 2019-10-31 16:04+0100\n"
"Last-Translator: Pierre Bousquié <pierre.bousquie@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.2.4\n"
#: howto/instrumentation.rst:7
msgid "Instrumenting CPython with DTrace and SystemTap"
msgstr "Instrumenter CPython avec DTrace et SystemTap"
#: howto/instrumentation.rst:0
msgid "author"
msgstr "auteur"
#: howto/instrumentation.rst:9
msgid "David Malcolm"
msgstr "David Malcolm"
#: howto/instrumentation.rst:10
msgid "Łukasz Langa"
msgstr "Łukasz Langa"
#: howto/instrumentation.rst:12
msgid ""
"DTrace and SystemTap are monitoring tools, each providing a way to inspect "
"what the processes on a computer system are doing. They both use domain-"
"specific languages allowing a user to write scripts which:"
msgstr ""
"*DTrace* et *SystemTap* sont des outils de surveillance, chacun fournissant "
"un moyen de d'inspecter ce que font les processus d'un système informatique. "
"Ils utilisent tous les deux des langages dédiés permettant à un utilisateur "
"d'écrire des scripts qui permettent de ::"
#: howto/instrumentation.rst:16
msgid "filter which processes are to be observed"
msgstr "Filtrer les processus à observer."
#: howto/instrumentation.rst:17
msgid "gather data from the processes of interest"
msgstr "Recueillir des données sur le processus choisi."
#: howto/instrumentation.rst:18
msgid "generate reports on the data"
msgstr "Générer des rapports sur les données."
#: howto/instrumentation.rst:20
msgid ""
"As of Python 3.6, CPython can be built with embedded \"markers\", also known "
"as \"probes\", that can be observed by a DTrace or SystemTap script, making "
"it easier to monitor what the CPython processes on a system are doing."
msgstr ""
"À partir de Python 3.6, CPython peut être compilé avec des « marqueurs » "
"intégrés, aussi appelés « sondes », qui peuvent être observés par un script "
"*DTrace* ou *SystemTap*, ce qui facilite le suivi des processus CPython."
#: howto/instrumentation.rst:27
msgid ""
"DTrace markers are implementation details of the CPython interpreter. No "
"guarantees are made about probe compatibility between versions of CPython. "
"DTrace scripts can stop working or work incorrectly without warning when "
"changing CPython versions."
msgstr ""
"Les marqueurs DTrace sont des détails d'implémentation de l'interpréteur "
"CPython. Aucune garantie n'est donnée quant à la compatibilité des sondes "
"entre les versions de CPython. Les scripts DTrace peuvent s'arrêter de "
"fonctionner ou fonctionner incorrectement sans avertissement lors du "
"changement de version de CPython."
#: howto/instrumentation.rst:34
msgid "Enabling the static markers"
msgstr "Activer les marqueurs statiques"
#: howto/instrumentation.rst:36
msgid ""
"macOS comes with built-in support for DTrace. On Linux, in order to build "
"CPython with the embedded markers for SystemTap, the SystemTap development "
"tools must be installed."
msgstr ""
"macOS est livré avec un support intégré pour *DTrace*. Sous Linux, pour "
"construire CPython avec les marqueurs embarqués pour *SystemTap*, les outils "
"de développement *SystemTap* doivent être installés."
#: howto/instrumentation.rst:40
msgid "On a Linux machine, this can be done via::"
msgstr "Sur une machine Linux, cela se fait via ::"
#: howto/instrumentation.rst:44
msgid "or::"
msgstr "ou ::"
#: howto/instrumentation.rst:49
msgid "CPython must then be configured ``--with-dtrace``:"
msgstr "CPython doit être configuré avec l'option ``--with-dtrace`` ::"
#: howto/instrumentation.rst:55
msgid ""
"On macOS, you can list available DTrace probes by running a Python process "
"in the background and listing all probes made available by the Python "
"provider::"
msgstr ""
"Sous macOS, vous pouvez lister les sondes *DTrace* disponibles en exécutant "
"un processus Python en arrière-plan et en listant toutes les sondes mises à "
"disposition par le fournisseur Python ::"
#: howto/instrumentation.rst:72
msgid ""
"On Linux, you can verify if the SystemTap static markers are present in the "
"built binary by seeing if it contains a \".note.stapsdt\" section."
msgstr ""
"Sous Linux, pour vérifier que les marqueurs statiques *SystemTap* sont "
"présents dans le binaire compilé, il suffit de regarder s'il contient une "
"section ``.note.stapsdt``."
#: howto/instrumentation.rst:80
msgid ""
"If you've built Python as a shared library (with --enable-shared), you need "
"to look instead within the shared library. For example::"
msgstr ""
"Si vous avez compilé Python en tant que bibliothèque partagée (avec ``--"
"enable-shared``), vous devez plutôt regarder dans la bibliothèque partagée. "
"Par exemple ::"
#: howto/instrumentation.rst:86
msgid "Sufficiently modern readelf can print the metadata::"
msgstr ""
"Une version suffisamment moderne de *readelf* peut afficher les "
"métadonnées ::"
#: howto/instrumentation.rst:123
msgid ""
"The above metadata contains information for SystemTap describing how it can "
"patch strategically-placed machine code instructions to enable the tracing "
"hooks used by a SystemTap script."
msgstr ""
"Les métadonnées ci-dessus contiennent des informations pour *SystemTap* "
"décrivant comment il peut mettre à jour des instructions de code machine "
"stratégiquement placées pour activer les crochets de traçage utilisés par un "
"script *SystemTap*."
#: howto/instrumentation.rst:129
msgid "Static DTrace probes"
msgstr "Sondes DTrace statiques"
#: howto/instrumentation.rst:131
msgid ""
"The following example DTrace script can be used to show the call/return "
"hierarchy of a Python script, only tracing within the invocation of a "
"function called \"start\". In other words, import-time function invocations "
"are not going to be listed:"
msgstr ""
"L'exemple suivant de script *DTrace* montre la hiérarchie d'appel/retour "
"d'un script Python, en ne traçant que l'invocation d'une fonction ``start``. "
"En d'autres termes, les appels de fonctions lors de la phase d'import ne "
"seront pas répertoriées ::"
#: howto/instrumentation.rst:228
msgid "It can be invoked like this::"
msgstr "Il peut être utilisé de cette manière ::"
#: howto/instrumentation.rst:234
msgid "The output looks like this:"
msgstr "La sortie ressemble à ceci ::"
#: howto/instrumentation.rst:199
msgid "Static SystemTap markers"
msgstr "Marqueurs statiques *SystemTap*"
#: howto/instrumentation.rst:201
msgid ""
"The low-level way to use the SystemTap integration is to use the static "
"markers directly. This requires you to explicitly state the binary file "
"containing them."
msgstr ""
"La façon la plus simple d'utiliser l'intégration *SystemTap* est d'utiliser "
"directement les marqueurs statiques. Pour cela vous devez pointer "
"explicitement le fichier binaire qui les contient."
#: howto/instrumentation.rst:205
msgid ""
"For example, this SystemTap script can be used to show the call/return "
"hierarchy of a Python script:"
msgstr ""
"Par exemple, ce script *SystemTap* peut être utilisé pour afficher la "
"hiérarchie d'appel/retour d'un script Python ::"
#: howto/instrumentation.rst:245
msgid "where the columns are:"
msgstr "où les colonnes sont ::"
#: howto/instrumentation.rst:247
msgid "time in microseconds since start of script"
msgstr "temps en microsecondes depuis le début du script"
#: howto/instrumentation.rst:249
msgid "name of executable"
msgstr "nom de l'exécutable"
#: howto/instrumentation.rst:251
msgid "PID of process"
msgstr "PID du processus"
#: howto/instrumentation.rst:253
msgid ""
"and the remainder indicates the call/return hierarchy as the script executes."
msgstr ""
"et le reste indique la hiérarchie d'appel/retour lorsque le script s'exécute."
#: howto/instrumentation.rst:255
msgid ""
"For a `--enable-shared` build of CPython, the markers are contained within "
"the libpython shared library, and the probe's dotted path needs to reflect "
"this. For example, this line from the above example:"
msgstr ""
"Pour une compilation `--enable-shared` de CPython, les marqueurs sont "
"contenus dans la bibliothèque partagée *libpython*, et le chemin du module "
"de la sonde doit le refléter. Par exemple, la ligne de l'exemple ci-dessus :"
#: howto/instrumentation.rst:263
msgid "should instead read:"
msgstr "doit plutôt se lire comme ::"
#: howto/instrumentation.rst:269
msgid "(assuming a debug build of CPython 3.6)"
msgstr ""
"(en supposant une version compilée avec le débogage activé de CPython 3.6)"
#: howto/instrumentation.rst:273
msgid "Available static markers"
msgstr "Marqueurs statiques disponibles"
#: howto/instrumentation.rst:277
msgid ""
"This marker indicates that execution of a Python function has begun. It is "
"only triggered for pure-Python (bytecode) functions."
msgstr ""
"Ce marqueur indique que l'exécution d'une fonction Python a commencé. Il "
"n'est déclenché que pour les fonctions en Python pur (code intermédiaire)."
#: howto/instrumentation.rst:280
msgid ""
"The filename, function name, and line number are provided back to the "
"tracing script as positional arguments, which must be accessed using ``"
"$arg1``, ``$arg2``, ``$arg3``:"
msgstr ""
"Le nom de fichier, le nom de la fonction et le numéro de ligne sont renvoyés "
"au script de traçage sous forme d'arguments positionnels, auxquels il faut "
"accéder en utilisant ``$arg1``, ``$arg2``, ``$arg3`` :"
#: howto/instrumentation.rst:284
msgid ""
"``$arg1`` : ``(const char *)`` filename, accessible using "
"``user_string($arg1)``"
msgstr ""
"``$arg1`` : ``(const char *)`` nom de fichier, accessible via "
"``user_string($arg1)``"
#: howto/instrumentation.rst:286
msgid ""
"``$arg2`` : ``(const char *)`` function name, accessible using "
"``user_string($arg2)``"
msgstr ""
"``$arg2`` : ``(const char *)`` nom de la fonction, accessible via "
"``user_string($arg2)``"
#: howto/instrumentation.rst:289
msgid "``$arg3`` : ``int`` line number"
msgstr "``$arg3`` : numéro de ligne ``int``"
#: howto/instrumentation.rst:293
msgid ""
"This marker is the converse of :c:func:`function__entry`, and indicates that "
"execution of a Python function has ended (either via ``return``, or via an "
"exception). It is only triggered for pure-Python (bytecode) functions."
msgstr ""
"Ce marqueur est l'inverse de :c:func:`function__entry`, et indique que "
"l'exécution d'une fonction Python est terminée (soit via ``return``, soit "
"via une exception). Il n'est déclenché que pour les fonctions en Python pur "
"(code intermédiaire)."
#: howto/instrumentation.rst:297
msgid "The arguments are the same as for :c:func:`function__entry`"
msgstr "Les arguments sont les mêmes que pour :c:func:`function__entry`"
#: howto/instrumentation.rst:301
msgid ""
"This marker indicates a Python line is about to be executed. It is the "
"equivalent of line-by-line tracing with a Python profiler. It is not "
"triggered within C functions."
msgstr ""
"Ce marqueur indique qu'une ligne Python est sur le point d'être exécutée. "
"C'est l'équivalent du traçage ligne par ligne avec un profileur Python. Il "
"n'est pas déclenché dans les fonctions C."
#: howto/instrumentation.rst:305
msgid "The arguments are the same as for :c:func:`function__entry`."
msgstr "Les arguments sont les mêmes que pour :c:func:`function__entry`."
#: howto/instrumentation.rst:309
msgid ""
"Fires when the Python interpreter starts a garbage collection cycle. "
"``arg0`` is the generation to scan, like :func:`gc.collect()`."
msgstr ""
"Fonction appelée lorsque l'interpréteur Python lance un cycle de collecte du "
"ramasse-miettes. ``arg0`` est la génération à scanner, comme :func:`gc."
"collect()`."
#: howto/instrumentation.rst:314
msgid ""
"Fires when the Python interpreter finishes a garbage collection cycle. "
"``arg0`` is the number of collected objects."
msgstr ""
"Fonction appelée lorsque l'interpréteur Python termine un cycle de collecte "
"du ramasse-miettes. ``Arg0`` est le nombre d'objets collectés."
#: howto/instrumentation.rst:319
msgid ""
"Fires before :mod:`importlib` attempts to find and load the module. ``arg0`` "
"is the module name."
msgstr ""
"Fonction appelée avant que :mod:`importlib` essaye de trouver et de charger "
"le module. ``arg0`` est le nom du module."
#: howto/instrumentation.rst:326
msgid ""
"Fires after :mod:`importlib`'s find_and_load function is called. ``arg0`` is "
"the module name, ``arg1`` indicates if module was successfully loaded."
msgstr ""
"Fonction appelée après que la fonction ``find_and_load`` du module :mod:"
"`importlib` soit appelée. ``arg0`` est le nom du module, ``arg1`` indique si "
"le module a été chargé avec succès."
#: howto/instrumentation.rst:335
msgid ""
"Fires when :func:`sys.audit` or :c:func:`PySys_Audit` is called. ``arg0`` is "
"the event name as C string, ``arg1`` is a :c:type:`PyObject` pointer to a "
"tuple object."
msgstr ""
"Fonction appelée quand les fonctions :func:`sys.audit` ou :c:func:"
"`PySys_Audit` sont appelées. ``arg0`` est le nom de l'évènement de type "
"chaîne de caractère C. ``arg1`` est un pointeur sur un tuple d'objet de "
"type :c:type:`PyObject`."
#: howto/instrumentation.rst:343
msgid "SystemTap Tapsets"
msgstr "*Tapsets* de *SystemTap*"
#: howto/instrumentation.rst:345
msgid ""
"The higher-level way to use the SystemTap integration is to use a \"tapset"
"\": SystemTap's equivalent of a library, which hides some of the lower-level "
"details of the static markers."
msgstr ""
"La façon la plus simple d'utiliser l'intégration *SystemTap* est d'utiliser "
"un *« tapset »*. L'équivalent pour *SystemTap* d'une bibliothèque, qui "
"permet de masquer les détails de niveau inférieur des marqueurs statiques."
#: howto/instrumentation.rst:349
msgid "Here is a tapset file, based on a non-shared build of CPython:"
msgstr ""
"Voici un fichier *tapset*, basé sur une version non partagée compilée de "
"CPython ::"
#: howto/instrumentation.rst:372
msgid ""
"If this file is installed in SystemTap's tapset directory (e.g. ``/usr/share/"
"systemtap/tapset``), then these additional probepoints become available:"
msgstr ""
"Si ce fichier est installé dans le répertoire *tapset* de *SystemTap* (par "
"exemple ``/usr/share/systemtap/tapset``), alors ces sondes supplémentaires "
"deviennent disponibles ::"
#: howto/instrumentation.rst:378
msgid ""
"This probe point indicates that execution of a Python function has begun. It "
"is only triggered for pure-Python (bytecode) functions."
msgstr ""
"Cette sonde indique que l'exécution d'une fonction Python a commencé. Elle "
"n'est déclenchée que pour les fonctions en Python pur (code intermédiaire)."
#: howto/instrumentation.rst:383
#, fuzzy
msgid ""
"This probe point is the converse of ``python.function.return``, and "
"indicates that execution of a Python function has ended (either via "
"``return``, or via an exception). It is only triggered for pure-Python "
"(bytecode) functions."
msgstr ""
"Cette sonde est l'inverse de :c:func:`python.function.return`, et indique "
"que l'exécution d'une fonction Python est terminée (soit via ``return``, "
"soit via une exception). Elle est uniquement déclenchée pour les fonctions "
"en Python pur (code intermédiaire)."
#: howto/instrumentation.rst:390
msgid "Examples"
msgstr "Exemples"
#: howto/instrumentation.rst:391
msgid ""
"This SystemTap script uses the tapset above to more cleanly implement the "
"example given above of tracing the Python function-call hierarchy, without "
"needing to directly name the static markers:"
msgstr ""
"Ce script *SystemTap* utilise le *tapset* ci-dessus pour implémenter plus "
"proprement l'exemple précédent de traçage de la hiérarchie des appels de "
"fonctions Python, sans avoir besoin de nommer directement les marqueurs "
"statiques ::"
#: howto/instrumentation.rst:410
msgid ""
"The following script uses the tapset above to provide a top-like view of all "
"running CPython code, showing the top 20 most frequently-entered bytecode "
"frames, each second, across the whole system:"
msgstr ""
"Le script suivant utilise le *tapset* ci-dessus pour fournir une vue de "
"l'ensemble du code CPython en cours d'exécution, montrant les 20 cadres de "
"la pile d'appel (*stack frames*) les plus fréquemment utilisées du code "
"intermédiaire, chaque seconde, sur l'ensemble du système ::"