fbpx
Wikipedia

DTrace (Sun Microsystems)

DTrace es un framework de rastreo y monitoreo abarcativo y dinámico creado por Sun Microsystems para diagnosticar problemas de kernel y aplicaciones en sistemas de producción en tiempo real. Originalmente desarrollado para Solaris, ha sido desde entonces lanzado bajo la licencia CDDL y ha sido portado a otros sistemas operativos tipo Unix.

DTrace
Información general
Tipo de programa Tracing
Desarrollador Sun Microsystems
Lanzamiento inicial Enero de 2005
Licencia Common Development and Distribution License
Enlaces
Sitio web oficial

DTrace puede ser utilizado para obtener una mirada global de un sistema que esté activo, brindando información tal como cantidad de memoria, tiempo de procesador, o recursos de red o del sistema de archivos que estén usando los procesos activos. También puede proveer información mucho más detallada, como el registro de los argumentos con los que una función específica está siendo llamada o una lista de los procesos que están accediendo a un archivo determinado.

Descripción

DTrace está diseñado para proveer vistazos operacionales que le permitan a los usuarios afinar y resolver problemas de aplicaciones y del sistema operativo en sí.

Los programas de rastreo (también conocidos como script) son escritos utilizando lenguaje D no confundir con lenguaje de programación D. Este lenguaje es un subconjunto del lenguaje C, con funciones y variables de rastreo añadidas. Los programas en D son similares en estructura a los programas en AWK; consisten en una lista de una o más pruebas (puntos de instrumentación) y cada prueba está asociada con una acción. Si se cumple la condición para la prueba, se ejecuta la acción asociada (la prueba se "dispara"). Una prueba típica puede dispararse cuando un cierto archivo es abierto, un proceso es iniciado, o una cierta línea de código es ejecutada. Una prueba que se dispara puede analizar la situación de tiempo de ejecución accediendo al conjunto de llamadas y variables de contexto y evaluando expresiones; puede imprimir o registrar alguna información, guardarla en una base de datos o modificar variables de contexto. La lectura y escritura de variables de contexto permite a las pruebas pasarse información entre ellas, permitiéndoles analizar cooperativamente la correlación de distintos eventos.

Consideraciones especiales han sido tenidas en cuenta para hacer a DTrace seguro de usar en un entorno de producción. Por ejemplo, existe un mínimo efecto de prueba cuando el rastreo se está llevando a cabo, y no hay ningún impacto de rendimiento asociado a alguna prueba desactivada; esto es importante porque puede haber decenas de miles de pruebas de DTrace que pueden estar activas. También pueden crearse nuevas pruebas de manera dinámica.

Ejemplos de línea de órdenes

Los scripts de DTrace pueden ser invocados directamente desde la línea de órdenes, proveyendo una o más pruebas y acciones como argumentos. Algunos ejemplos:

# Nuevos procesos con argumentos, dtrace -n 'proc:::exec-success { trace(curpsinfo->pr_psargs); }' # Archivos abiertos por procesos, dtrace -n 'syscall::open*:entry { printf("%s %s",execname,copyinstr(arg0)); }' # Cantidad de llamadas de sistema por programa, dtrace -n 'syscall:::entry { @num[execname] = count(); }' # Cantidad de llamadas de sistema por tipo de llamada, dtrace -n 'syscall:::entry { @num[probefunc] = count(); }' # Llamadas de sistema por proceso, dtrace -n 'syscall:::entry { @num[pid,execname] = count(); }' # Tamaño en disco por proceso, dtrace -n 'io:::start { printf("%d %s %d",pid,execname,args[0]->b_bcount); }' # Páginas paginadas por proceso, dtrace -n 'vminfo:::pgpgin { @pg[execname] = sum(arg0); }' 

Plataformas soportadas

DTrace estuvo disponible por primera vez para su uso en noviembre de 2003, y fue formalmente lanzado como parte del sistema operativo de Sun Solaris en enero de 2005. DTrace fue el primer componente del proyecto OpenSolaris en tener su código fuente lanzado bajo la licencia CDDL (Common Development and Distribution License).

DTrace ha sido portado a FreeBSD como un sustituto de la utilidad ktrace.

Apple añadió soporte para DTrace en Mac OS X 10.5 "Leopard", incluyendo una interfaz gráfica de usuario denominada Instruments.

Hasta febrero de 2009, una versión para Linux estaba siendo desarrollada. La versión en desarrollo de DTrace compila y se ejecuta en muchos kernels de Linux, sin cambios al código fuente del kernel. Esto es deseable para asegurar la portabilidad, pero también para evitar conflictos de licencias (CDDL vs GPL). Pruebas de DTrace en el espacio de usuario son soportadas y el rastreo de llamadas de sistema funciona bien. Todavía se está trabajando en ordenar el lanzamiento y comenzar a generar casos de prueba y pruebas de carga.

Autores

DTrace fue diseñado e implementado por Bryan Cantrill, Mike Shapiro, y Adam Leventhal.

  •   Datos: Q1155967

dtrace, microsystems, dtrace, framework, rastreo, monitoreo, abarcativo, dinámico, creado, microsystems, para, diagnosticar, problemas, kernel, aplicaciones, sistemas, producción, tiempo, real, originalmente, desarrollado, para, solaris, sido, desde, entonces,. DTrace es un framework de rastreo y monitoreo abarcativo y dinamico creado por Sun Microsystems para diagnosticar problemas de kernel y aplicaciones en sistemas de produccion en tiempo real Originalmente desarrollado para Solaris ha sido desde entonces lanzado bajo la licencia CDDL y ha sido portado a otros sistemas operativos tipo Unix DTraceInformacion generalTipo de programaTracingDesarrolladorSun MicrosystemsLanzamiento inicialEnero de 2005LicenciaCommon Development and Distribution LicenseEnlacesSitio web oficial editar datos en Wikidata DTrace puede ser utilizado para obtener una mirada global de un sistema que este activo brindando informacion tal como cantidad de memoria tiempo de procesador o recursos de red o del sistema de archivos que esten usando los procesos activos Tambien puede proveer informacion mucho mas detallada como el registro de los argumentos con los que una funcion especifica esta siendo llamada o una lista de los procesos que estan accediendo a un archivo determinado Indice 1 Descripcion 2 Ejemplos de linea de ordenes 3 Plataformas soportadas 4 AutoresDescripcion EditarDTrace esta disenado para proveer vistazos operacionales que le permitan a los usuarios afinar y resolver problemas de aplicaciones y del sistema operativo en si Los programas de rastreo tambien conocidos como script son escritos utilizando lenguaje D no confundir con lenguaje de programacion D Este lenguaje es un subconjunto del lenguaje C con funciones y variables de rastreo anadidas Los programas en D son similares en estructura a los programas en AWK consisten en una lista de una o mas pruebas puntos de instrumentacion y cada prueba esta asociada con una accion Si se cumple la condicion para la prueba se ejecuta la accion asociada la prueba se dispara Una prueba tipica puede dispararse cuando un cierto archivo es abierto un proceso es iniciado o una cierta linea de codigo es ejecutada Una prueba que se dispara puede analizar la situacion de tiempo de ejecucion accediendo al conjunto de llamadas y variables de contexto y evaluando expresiones puede imprimir o registrar alguna informacion guardarla en una base de datos o modificar variables de contexto La lectura y escritura de variables de contexto permite a las pruebas pasarse informacion entre ellas permitiendoles analizar cooperativamente la correlacion de distintos eventos Consideraciones especiales han sido tenidas en cuenta para hacer a DTrace seguro de usar en un entorno de produccion Por ejemplo existe un minimo efecto de prueba cuando el rastreo se esta llevando a cabo y no hay ningun impacto de rendimiento asociado a alguna prueba desactivada esto es importante porque puede haber decenas de miles de pruebas de DTrace que pueden estar activas Tambien pueden crearse nuevas pruebas de manera dinamica Ejemplos de linea de ordenes EditarLos scripts de DTrace pueden ser invocados directamente desde la linea de ordenes proveyendo una o mas pruebas y acciones como argumentos Algunos ejemplos Nuevos procesos con argumentos dtrace n proc exec success trace curpsinfo gt pr psargs Archivos abiertos por procesos dtrace n syscall open entry printf s s execname copyinstr arg0 Cantidad de llamadas de sistema por programa dtrace n syscall entry num execname count Cantidad de llamadas de sistema por tipo de llamada dtrace n syscall entry num probefunc count Llamadas de sistema por proceso dtrace n syscall entry num pid execname count Tamano en disco por proceso dtrace n io start printf d s d pid execname args 0 gt b bcount Paginas paginadas por proceso dtrace n vminfo pgpgin pg execname sum arg0 Plataformas soportadas EditarDTrace estuvo disponible por primera vez para su uso en noviembre de 2003 y fue formalmente lanzado como parte del sistema operativo de Sun Solaris en enero de 2005 DTrace fue el primer componente del proyecto OpenSolaris en tener su codigo fuente lanzado bajo la licencia CDDL Common Development and Distribution License DTrace ha sido portado a FreeBSD como un sustituto de la utilidad ktrace Apple anadio soporte para DTrace en Mac OS X 10 5 Leopard incluyendo una interfaz grafica de usuario denominada Instruments Hasta febrero de 2009 una version para Linux estaba siendo desarrollada La version en desarrollo de DTrace compila y se ejecuta en muchos kernels de Linux sin cambios al codigo fuente del kernel Esto es deseable para asegurar la portabilidad pero tambien para evitar conflictos de licencias CDDL vs GPL Pruebas de DTrace en el espacio de usuario son soportadas y el rastreo de llamadas de sistema funciona bien Todavia se esta trabajando en ordenar el lanzamiento y comenzar a generar casos de prueba y pruebas de carga Autores EditarDTrace fue disenado e implementado por Bryan Cantrill Mike Shapiro y Adam Leventhal Datos Q1155967Obtenido de https es wikipedia org w index php title DTrace Sun Microsystems amp oldid 128027276, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos