Capítulo 8. Depuración de sistemas de archivos GFS2 con tracepoints GFS2 y el archivo debugfs glocks
Esta sección describe tanto la interfaz glock debugfs
como los tracepoints de GFS2. Está pensada para usuarios avanzados que estén familiarizados con los aspectos internos del sistema de archivos que quieran aprender más sobre el diseño de GFS2 y cómo depurar problemas específicos de GFS2.
8.1. Tipos de tracepoint GFS2
Actualmente hay tres tipos de tracepoints GFS2: glock (pronunciado \ "gee-lock") tracepoints, bmap tracepoints y log tracepoints. Estos pueden ser usados para monitorear un sistema de archivos GFS2 en ejecución y dar información adicional a la que puede ser obtenida con las opciones de depuración soportadas en versiones anteriores de Red Hat Enterprise Linux. Los tracepoints son particularmente útiles cuando un problema, como un cuelgue o un problema de rendimiento, es reproducible y por lo tanto la salida del tracepoint puede obtenerse durante la operación problemática. En GFS2, los glocks son el principal mecanismo de control de la caché y son la clave para entender el rendimiento del núcleo de GFS2. Los tracepoints bmap (mapa de bloques) pueden utilizarse para supervisar las asignaciones de bloques y el mapeo de bloques (búsqueda de bloques ya asignados en el árbol de metadatos del disco) a medida que se producen y comprobar cualquier problema relacionado con la localidad de acceso. Los tracepoints de registro hacen un seguimiento de los datos que se escriben y liberan del diario y pueden proporcionar información útil sobre esa parte de GFS2.
Los tracepoints están diseñados para ser lo más genéricos posible. Esto debería significar que no será necesario cambiar la API durante el transcurso de Red Hat Enterprise Linux 8. Por otro lado, los usuarios de esta interfaz deberían ser conscientes de que se trata de una interfaz de depuración y no forma parte del conjunto normal de API de Red Hat Enterprise Linux 8, y como tal Red Hat no garantiza que no se produzcan cambios en la interfaz de tracepoints de GFS2.
Los tracepoints son una característica genérica de Red Hat Enterprise Linux y su alcance va mucho más allá de GFS2. En particular, se utilizan para implementar la infraestructura blktrace
y los tracepoints de blktrace
pueden utilizarse en combinación con los de GFS2 para obtener una imagen más completa del rendimiento del sistema. Debido al nivel en el que operan los tracepoints, pueden producir grandes volúmenes de datos en un periodo de tiempo muy corto. Se han diseñado para que supongan una carga mínima para el sistema cuando están activados, pero es inevitable que tengan algún efecto. El filtrado de los eventos por diversos medios puede ayudar a reducir el volumen de datos y a centrarse en la obtención de sólo la información que es útil para entender cualquier situación particular.