Changes between Version 1 and Version 2 of es:FAQ/Debugging


Ignore:
Timestamp:
Sep 25, 2014, 9:34:12 PM (5 years ago)
Author:
Emilio Jimenez
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • es:FAQ/Debugging

    v1 v2  
    1 [[TranslatedPages(revision=1)]]
     1[[TranslatedPages(revision=4)]]
    22[[TOC(titleindex, heading=FAQ Contents, notitle, depth=2, FAQ/General Questions, FAQ/Installing YAM, FAQ/Using YAM, FAQ/ARexx Scripting, FAQ/Debugging)]]
    33
    4 = [wiki:"Debugging" Debugging] =
     4= [wiki:"Debugging" Depurando] =
    55[[PageOutline(2-6,,inline)]]
    66
    7 == Basics about YAM's debugging facilities ==
    8 This article discusses how you can get more detailed information from YAM in case you run into a problem which might point out being an actual bug in YAM or any other respective component used by YAM. For the development of YAM, but also for identifying the root of a problem, certain so-called debugging statements are included in the source code of YAM. Part of these statements are normally only available in so-called debug versions of YAM. But some statements are even present in the normal final release versions.
     7== Conceptos básicos sobre servicio de depuración de YAM ==
     8Este artículo explica como puede obtener información más detallada de YAM en caso de tener algún problema que podría estar siendo un fallo en realidad de YAM o cualquier otro componente utilizado por YAM. Para el desarrollo de YAM, y también para la identificación de la base del problema, ciertos puntos llamados de depuración se incluyen en el código fuente de YAM. Parte de estos puntos normalmente están sólo disponibles en las llamadas versiones de depuración de YAM. Pero algunos puntos están presentes incluso en la versiones finales.
    99
    10 So in case you have been instructed by a YAM developer to run a debug version or you want to see if there might be an issue you would like to investigate a bit deeper, the following instructions might help you. Please note, however, that most of the things discussed here are hardly of any help for novice users. So please proceed with debugging only in case you have been instructed by a YAM developer to do so.
     10Así que en caso de que haya sido instado por un desarrollador de YAM para ejecutar una versión de depuración o quiere ver si puede haber algún asunto que le gustaría investigar un poco en profundidad, las siguientes instrucciones pueden ayudarle. Por favor tenga en cuenta, sin embargo, que la mayoría de las cosas explicadas aquí son difícilmente de cualquier ayuda  para usuarios novatos. Así que por favor proceda con la depuración sólo en caso de que haya sido instado por un desarrollador de YAM a hacerlo.
    1111
    12 __IMPORTANT NOTE:__
     12__NOTA IMPORTANTE:__
    1313
    14 Debug output is meant to help us to find bugs in YAM and may contain private data, like passwords, user names, etc. Please make sure to strip such data from the catched output **before** making it public in any form (e.g. in the bug tracker). We take absolutely **no responsibility** for possibly hacked mail accounts due to accidently published private information. So please be aware of that when dealing with debug output.
     14Salida de depuración significa ayudarnos a nosotros para encontrar fallos en YAM y puede contener información privada, como contraseñas, nombres de usuario, etc. Por favor asegúrese de quitar este tipo de información de la obtenida **antes** de hacerla pública en cualquier forma (p.ej. en el seguimiento de fallos). Nosotros no tenemos absolutamente **ninguna responsabilidad** por posible hackeado de cuentas de correo debido a publicaciones de información privada accidentalmente. Así que por favor tenga cuidado con esto cuando facilite información de depuración.
    1515
    16 Different debugging facilities in YAM:
     16Diferentes servicios de depuración en YAM:
    1717
    18 YAM provides two different debugging facilities:
     18YAM provee dos diferentes servicios para la depuración:
    1919
    20 1. debugging and output of all text based communication between YAM and the server you are communicating to (POP3, SMTP, etc.).
    21 2. a full blown debugging log containing lots of internal stuff
     201. depuración y salida de todo el texto basado en la comunicación entre YAM y el servidor de correo con el que se está comunicando (POP3, SMTP, etc.).
     212. un registro completo que contiene gran cantidad de información interna
    2222
    23 The first one is available in every YAM executable (even the release version) and is enabled by either adding the `DEBUG` ToolType to YAM's icon or by running YAM from a Shell via {{{"YAM DEBUG"}}}. The latter method should be the preferred one, because the output can be redirected to a file ({{{"YAM DEBUG >debug.log"}}}) then, which you can edit afterwards.
     23El primero está disponible en cada ejecutable de YAM (incluso en las versiones definitivas) y se activa añadiendo el tooltype `DEBUG` en el icono de YAM o ejecutando YAM desde el Shell vía {{{"YAM DEBUG"}}}. El último método debería ser el preferido, porque la salida entonces puede ser redireccionada a un archivo ({{{"YAM DEBUG >debug.log"}}}), el cual puede editar posteriormente.
    2424
    25 The second facility is not contained in the normal release version of YAM, but in a special debug executable. This executable is also available on YAM's download page. Please make sure to catch the right debug archive for you platform and install the "YAM.debug" executable beside your normal "YAM" executable.
     25El segundo servicio no está contenido en las versiones definitivas de YAM, pero si en un ejecutable especial de depuración. Este ejecutable está también disponible en la página de descarga de YAM. Por favor asegúrese de obtener el archivo de depuración correcto para su plataforma e instale el ejecutable "YAM.debug" junto al ejecutable normal de "YAM".
    2626
    27 To make use of this special debug version, you also need a way to catch the serial output that this debug version sends its debugging information to. This can either be achieved by using a null-modem connection to a second computer (connected to your Amiga via a serial nullmodem cable) or via the Sashimi application available on AmiNet (for OS3/68k, for Morphos/PPC or for AmigaOS4/PPC). Sashimi is an application to cath all output sent to the serial line of your computer and as such allows you to catch the debugging information sent by YAM. In case you are not using Sashimi to capture the debug output, it will be send over the serial line to the remote computer and must be logged there with an appropriate terminal program (e.g. HyperTerminal or TeraTerm Pro under Windows or miniterm under Unix).
     27Para utilizar esta versión especial de depuración, también necesita un modo de obtener la salida serie a donde esta versión de depuración envía la información de depurado. Esto puede hacerse o bien conectando con un cable serie null-modem a otro ordenador (conectado a su Amiga vía cable serie nullmodem) o vía la aplicación Sashimi disponible en AmiNet (para OS3/68k, para Morphos/PPC o para AmigaOS4/PPC). Sashimi es una aplicación que puede captar todas las salidas enviadas al puerto serie de su ordenador, y por tanto, permite coger toda la información de depuración enviada por YAM. En caso de que no utilice Sashimi para capturar la salida de depuración, se enviará la información a través del puerto serie al ordenador conectado y deberá identificarse con un programa terminal apropiado (p.ej. HyperTerminal o TeraTerm Pro bajo Windows o miniterm bajo Unix).
    2828
    29 __Using Sashimi:__
     29__Utilizando Sashimi:__
    3030
    31 If you are using Sashimi to log the debugging information locally, please run Sashimi before running YAM like this:
     31Si está utilizando Sashimi para registrar localmente la información de depuración, por favor ejecute Sashimi antes de iniciar YAM de esta forma:
    3232
    3333{{{
     
    3535}}}
    3636
    37 Sashimi offers some more options to influence its behaviour. Please refer to Sashimi's documentation for further information.
     37Sashimi ofrece algunas opciones más que influyen en su comportamiento. Por favor vea la documentación de Sashimi para más información.
    3838
    39 Other required third-party debug tools:
     39Otras herramientas de depuración de terceras partes necesarias:
    4040
    41 Depending on the platform you are running YAM you should have the following tools installed and running before you start running a debug session of YAM:
     41Dependiendo de en que plataforma esté ejecutando YAM debera tener las siguientes herramientas instaladas y funcionando antes de iniciar una sesión de depurado de YAM:
    4242
    43 AmigaOS3 or MorphOS:
     43AmigaOS3 o MorphOS:
    4444
    45 * Enforcer or CyberGuard - to catch illegal memory accesses.
    46 * SegTracker - to enable Enforcer/CyberGuard to show the hunk and source code information of the memory fault.
     45* Enforcer o CyberGuard - para captar accesos de memoria ilegales.
     46* SegTracker - para activar Enforcer/CyberGuard que muestre la información del hunk y código fuente del fallo de memoria.
    4747
    4848AmigaOS4:
    4949
    50 * MemGuard - to enable OS4 to track for memory leaks and such
     50* MemGuard - para activar en OS4 el seguimiento de fallos de memoria y otros
    5151
    52 All these tools are available mostly on AmiNet or from other public places . Please read their documentation carefully. Usually no special options need to be specified to get a usable output in case of a crash. The only important point is to start those tools before running YAM.
     52Todas estas herramientas están disponibles mayormente en AmiNet o en otros lugares de acceso público. Por favor lea su documentación detenidamente. Usualmente no necesita opciones especiales para obtener salidas de información útiles en caso de fallo. El único punto importante es iniciar todas estas herramientas antes de iniciar YAM.
    5353
    54 __How to define which debugging information to get:__
     54__Como se define la información de depuración a obtener:__
    5555
    56 Once you are able to catch the serial output that is sent by the debug version of YAM, you need to tell YAM what kind of debug information you want to have. This is done by using an environment variable (ENV variable) called "yamdebug". You just need to set this variable to a string which contains certain command which YAM will interpret as soon as it will be started (see below).
     56Una vez que está dispuesto para obtener la información al puerto serie que envía la versión de depuración de YAM, necesita decirle a YAM qué tipo de información quiere tener. Esto se hace utilizando una variable de entorno (ENV variable) llamada "yamdebug". Sólo necesita definir la variable como una cadena de texto que contenga ciertos comandos que YAM interpretará tan pronto como se inicie (vea más abajo).
    5757
    58 YAM's internal debugging facility is split into two parts: debug classes and debug flags. Debug flags are normally used to define a certain debug output to a function or area of the application (e.g. information about arexx, the startup, tcp/ip related, etc.). Debug classes, however, are used to define that the debug output/information is of a certain nature (e.g. a warning, an error or such). So most of the time you will probably want to set debug flags and only define a whole debug class to be shown or hided in case you receive too much or too less information.
     58El servicio de depurado interno de YAM se divide en dos partes: clases de depuración e indicadores de depuración. Los indicadores de depuración normalmente se utilizan para definir una cierta salida de depuración a una función o área de la aplicación (p.ej. información acerca de arexx, el inicio, relativo a la pila tcp/ip, etc.). Las clases de depuración, sin embargo, se utilizan para definir de que naturaleza es la información de salida de depuración (p.ej. una advertencia, un error o tal). Así que la mayoría de las veces probablemente querrá definir indicadores de depuración y sólo definir una clase de depuración completa para mostrar u ocultar en caso de recibir demasiada o escasa información.
    5959
    60 All currently available debug flags are:
     60Todos los indicadores de depuración actualmente disponibles son:
    6161
    62 * always - print out always, not specifically related
    63 * startup - startup/shutdown stuff
    64 * timerio - timer.device stuff
    65 * config - all about configuration handling
    66 * filter - mail filtering (including spam filtering)
    67 * folder - folder management
    68 * mail - stuff related to single mails
    69 * mime - MIME stuff
    70 * gui - GUI handling
    71 * rexx - ARexx stuff
    72 * net - network and TCP/IP stuff
    73 * util - miscellaneous utility stuff
    74 * import - mail import and export
    75 * xpk - the XPK compression system
    76 * image - image handling and caching
    77 * update - YAM's automatic update feature
    78 * html - HTML document handling
    79 * spam - information about the spam filter engine
    80 * uidl - UIDL handling ("avoid duplicate mails")
    81 * hash - hash table stuff
    82 * print - printing of mails
    83 * theme - theme stuff
    84 * thread - thread handling
    85 * all - all of the above
     62* always - imprime siempre, sin relación específica a nada
     63* startup - relacionado con inicio/salida del programa
     64* timerio - relacionado con timer.device
     65* config - todo sobre manejo de la configuración
     66* filter - filtrado de correo (incluído filtrado spam)
     67* folder - gestión de carpetas
     68* mail - relacionado con mensajes
     69* mime - relacionado con MIME
     70* gui - manejo de GUI
     71* rexx - relacionado con ARexx
     72* net - relacionado con la red y la pial TCP/IP
     73* util - relacionado con otras utilidades
     74* import - importado y exportado de correo
     75* xpk - el sistema de compresión XPK
     76* image - manejo de imágenes y almacenado caché
     77* update - función automática de actualización de YAM
     78* html - manejo de documento HTML
     79* spam - información sobre el funcioamiento del filtro spam
     80* uidl - manejo UIDL ("evitar mensajes duplicados")
     81* hash - relacionado con la tabla hash
     82* print - impresión de correos
     83* theme - relacionado con temas
     84* thread - manejo de conversaciones
     85* all - todo lo anterior (de arriba)
    8686
    87 By default only the always and startup flags are active. That means, in case you start the debug version of YAM without having the "yamdebug" ENV: variable setup it will only print minor information about the startup and shutdown of YAM. Several flags can be combined and must be separated by either a space, a comma or a semicolon. Flags can also be excluded (negated) by prepending a '!'.
     87Por defecto sólo  los indicadores relacionados con inicio están activados. Esto significa, que en caso de iniciar la versión de depurado de YAM sin tener la variable de entorno definida "yamdebug" en ENV: sólo imprimirá poca información sobre el inicio y apagado de YAM. Se pueden combinar varios indicadores y debe estar separado o por un espacio, una coma o un punto y coma. Los indicadores también se pueden excluir (negar) anteponiéndole un '!'.
    8888
    89 The following debug classes are available:
     89Están disponibles las siguientes clases de depuración:
    9090
    91 * @ctrace - generate a trace of all functions being entered and left
    92 * @report -print out report information
    93 * @assert - print out assertions
    94 * @timeval - print out timing measurements
    95 * @debug - print out normal debugging messages
    96 * @error - print out error messages
    97 * @warning - print out warning messages
    98 * @mtrack - print out memory tracking warnings
    99 * @tags - print out tag lists
    100 * @all - all of the above
     91* @ctrace - genera un seguimiento de todas las funciones de entrada y salida
     92* @report -imprime la información tipo informe
     93* @assert - imprime afirmaciones
     94* @timeval - imprime medidas de tiempo
     95* @debug - imprime mensajes normales de depuración
     96* @error - imprime mensajes de error
     97* @warning - imprime mensajes de advertencia
     98* @mtrack - imprime adertencias de seguimiento de la memoria
     99* @tags - imprime listas de etiquetas
     100* @all - todo lo anterior (de arriba)
    101101
    102 By default the classes @report, @assert, @debug, @error, @warning and @mtrack are active.
     102Por defecto las clases @report, @assert, @debug, @error, @warning y @mtrack están activadas.
    103103
    104 Debug classes must be prepended by a '@' character as can be seen by the above list. Several classes can be combined and must be separated by either a space, a comma or a semicolon. Classes can also be excluded (negated) by prepending a '!'.
     104Las clases de depuración deben tener antepuesto un caracter de '@' (arroba) como se puede ver en la lista anterior. Se pueden combinar varias clases y se deben separar o por un espacio, una coma o un punto y coma. Las clases también se pueden excluir (negar) anteponiendo un '!'.
    105105
    106 There are two special classes which influence the way the output is generated.
     106Hay dos clases especiales que influyen en el formato de la información de salida generada.
    107107
    108 Adding "stdout" will output all messages to the Shell window YAM was started from (or to the automatically opened window when YAM was started from the Workbench). These messages can be redirected to a file.
     108Añadiendo "stdout" todos los mensajes saldrán por la ventana Shell desde donde YAM fue iniciado (o a la ventana abierta automáticamente cuando YAM se inicie desde el Workbench). Estos mensajes se pueden redireccionar a un archivo.
    109109
    110 Adding "file:path_to_file" will generate a file named "path_to_file" and write all debugging messages directly to this file.
     110Añadiendo "file:ruta_archivo" generará un archivo llamado "ruta_archivo" y escribirá en él directamente todos los mensajes de depuración.
    111111
    112112
    113 __Examples:__
     113__Ejemplos:__
    114114
    115115{{{
    116116setenv yamdebug "net image !startup"
    117117}}}
    118 This will enable debugging of the network stuff and image handling, but anything related to the startup/shutdown process will be excluded.All debug messages will be transmitted via the serial line to a connected terminal. Optionally these can be captured with a tool like Sashimi.
     118Esto activará la depuración de lo relacionado con la red y manejo de imágenes, pero todo lo relacionado con inicio/apagado se excluirá. Todos los mensajes de depuración se transmitirán vía puerto serie a un terminal conectado. Opcionalmente esto se puede capturar con una herramienta como Sashimi.
    119119
    120120{{{
    121121setenv yamdebug all,@!all,@error,stdout
    122122}}}
    123 This will enable all debug flags, but only for error messages. All debug messages will be printed to the Shell window YAM was started from.
     123Esto activa todos los indicadores de depuración, pero sólo para mensajes de error. Todos los mensajes de depuración se imprimirán en la ventana Shell desde donde YAM fue iniciado.
    124124
    125125{{{
    126126setenv yamdebug @ctrace,@error,@!assert,stdout
    127127}}}
    128 This will enable trace information and error messages, but no assertions
     128Esto activa el seguimiento de información y mensajes de error, pero no afirmaciones
    129129
    130130{{{
    131131setenv yamdebug @all,file:ram:t/debuglog.txt
    132132}}}
    133 This will enable all debug classes. Beware: the debug log file will become HUGE!!! All debug messages will be directly written to the file "ram:t/debuglog.txt" instead of the serial line.
     133Esto activa todas las clases de depuración. Cuidado: el archivo de registro de depuración puede hacerse muy extenso!!! Todos los mensajes de depuración se escribirán directamente en el archivo "ram:t/debuglog.txt" en vez de en el puerto serie.
    134134
    135 Debug classes and flags can even be combined on one line. That means, e.g. {{{setenv yamdebug @all,all}}} will enable all debug classes and flags and produce the most verbose debug log possible (really, really HUGE!!!)
     135Las clases de depuración y los indicadores incluso se pueden combinar en una línea. Esto signifca, p.ej. {{{setenv yamdebug @all,all}}} activará todas las clases e indicadores de depuración y produce el registro de depuración más detallado posible (realmente, muy muy extenso!!!)