He estado leyendo sobre apport y su uso durante una semana. Pero no podía entender las cosas a continuación.
Guión:
He desarrollado una aplicación y la he empaquetado. Y su nombre es MyApp.deb
. El nombre del paquete binario es MyApp
. La aplicación se instala en la ruta /opt/myapplication/bin/MyApp
.
Requisito:
- Cuando mi aplicación falla, quiero poder recopilar el volcado del núcleo.
- En cada bloqueo posterior, tiene que crear un nuevo bloqueo, pero no sobrescribir el existente. Algo como renombrar automáticamente con la marca de tiempo actual, etc., me ayudaría.
- Cuando instalo mi aplicación en una máquina del cliente, mi instalador no debe modificar los parámetros de su sistema. Digamos, por ejemplo, que no debo cambiar el patrón de la generación de su archivo principal, porque el usuario / cliente podría odiar mi aplicación, ya que cambiaría los parámetros de su sistema sin su consentimiento.
- Estoy de acuerdo con la ruta de la generación de archivos principales. Ya sea el directorio actual o
/var/crash
Cosas que he explorado hasta ahora:
Apport es una buena utilidad que permite la generación de archivos principales. Usando /proc/sys/kernel/core_pattern
puedo formatear archivos principales. Esto proporciona flexibilidad para redirigir los archivos principales a un directorio predefinido, nombrar archivos principales con pid, patrón de ruta de archivo agregado o preparado previamente, etc. Para los paquetes que no son Ubuntu, tengo que escribir ganchos para generar volcados de núcleo (informes) . Apport después de recopilar el informe se cargará.
Cosas que no entiendo:
- ¿Apport es el que debo estar mirando? Quiero decir, ¿es suficiente mi propósito? ¿O debería estar mirando otra cosa?
- ¿En qué tipo de paquete se encuentra mi solicitud? ¿Lo llamo no ubuntu? Tercera parte? ¿Qué es? ¿Veo diferentes terminologías en los documentos?
- Como mencioné, se
MyApp
ejecuta desde/opt/myapplication/bin/MyApp
, entonces, ¿dónde se generarán los archivos principales? Dir actual o/var/crash
? ¿Apport detecta los bloqueos provocados por el disparo/opt
? ¿Lo interpreta? - Pregunta importante: si he desarrollado la aplicación y si Apport sube el informe a los repositorios de Ubuntu, no tiene sentido. Entonces, ¿cómo puedo decirle a Apport que me envíe el informe?
- Me sale este error:
executable does not belong to a package, ignoring
. Entonces, ¿qué estoy haciendo mal? - Para poder reconocer mi paquete, ¿debo convertirlo en un paquete fuente? ¿Es obligatorio? ¿Solo quiero crear un paquete binario?
- También vi en algún lugar de los documentos que Apport reconoce:
- Paquetes de Ubuntu o
- Launchpad, pero mi aplicación no es ninguna de estas. Entonces, ¿cómo me ayuda Apport en el escenario actual?
Respuestas:
fuente