remove - ¿Es posible obtener un coredump de Linux que solo contenga callstack, threads y variables locales?
remove export variable bash (1)
Puede canalizar volcados de núcleo a un programa y, por lo tanto, escribir su propio filtro. Extracto del núcleo del hombre
Desde kernel 2.6.19, Linux admite una sintaxis alternativa para el archivo / proc / sys / kernel / core_pattern. Si el primer carácter de este archivo es un símbolo de tubería (|), entonces el resto de la línea se interpreta como un programa para ser ejecutado. En lugar de escribirse en un archivo de disco, el volcado de núcleo se proporciona como entrada estándar al programa.
También puede controlar qué correlaciones se escriben en el volcado del núcleo, esto puede usarse para reducir el tamaño del volcado del núcleo.
Desde kernel 2.6.23, el archivo específico de Linux / proc / PID / coredump_filter se puede usar para controlar qué segmentos de memoria se escriben en el archivo de volcado del núcleo
Por supuesto, todo esto depende de la versión del kernel y las opciones de configuración.
ver el enlace que he proporcionado para ejemplos o detalles.
Mi compañía está utilizando la funcionalidad de coredump en Linux (CentOS específicamente) para rastrear algunos problemas difíciles de encontrar. Desafortunadamente, tenemos un montón de pequeñas máquinas virtuales que se ejecutan con un espacio limitado en HD y los vertederos completos están causando problemas debido a la gran cantidad de espacio que ocupan los montones.
¿Es posible simplemente hacer que Linux descargue la pila de llamadas, los hilos y las variables locales cuando ocurre una falla de segmentación? Intenté simplemente limitar los volcados a 50 megas, pero no parece que todos los detalles deseados estén en esos primeros 50 megabytes (ulimit -c 51200). Estamos bien truncando el montón así, pero no he podido averiguar qué tamaño funcionaría.
Sé que es posible escribir tu propio CallStack cuando lo desees con un código adicional, pero estamos en el punto en el que estamos terminando y sería una venta difícil para estos últimos dos problemas con los que nos estamos encontrando.