¿Cómo puedo leer los mensajes de NotifyOSD después de que se muestran?

14

Me gustaría leer una lista de mensajes que se muestran notify-osdde vez en cuando. Todavía estoy usando 12.04, si importa. es posible?

Estas dos preguntas de 2010 indican que debe existir un archivo de registro en ~/.cache/notify-osd.log. No tengo ese archivo y me gustaría saber si se trata de un error (en cuyo caso esta pregunta debería cerrarse) o si este archivo de registro depende de otra configuración (como Configuración del sistema -> Privacidad).

No me importa almacenar datos entre reinicios. Solo quiero buscar mensajes de la sesión actual.

EDITAR: Dos buenas respuestas ahora, pero me gustaría saber si estos mensajes se almacenan en algún lugar (¿suposición total, / tmp? ¿RAM?) Durante un breve período después de aparecer en la pantalla. Debe existir algún tipo de búfer a medida que aparecen uno tras otro, unos pocos segundos cada uno, incluso si hay 20-30 notificaciones en el lapso de un minuto o dos.

No mencioné en mi pregunta original que no estoy interesado en otro indicador PPA + o en escrituras excesivas en la unidad, solo quiero saber si es posible ver los mensajes por un corto tiempo después de que aparezcan.

Mi caso de uso para esto es regresar y encontrar qué canción se escuchó hace unos minutos en una estación de radio en streaming. Lo tengo puesto como música de fondo, y ocasionalmente una melodía se me pega en la cabeza después de escucharlo. No tengo forma de volver a ver lo que sonó hace 1-2 canciones.

Tom Brossman
fuente
1
La razón por la que ya no ve el registro: bugs.launchpad.net/ubuntu/+source/notify-osd/+bug/904835
Seth
¿Qué aplicación / reproductor estás usando para reproducir transmisiones de radio?
Basharat Sialvi
@BasharatSial Radiotray
Tom Brossman
1
@TomBrossman Radiotray tiene history pluginque mantener la pista de las canciones reproducidas anteriormente.
Basharat Sialvi
@BasharatSial Gracias, esa es probablemente la solución más simple para mí.
Tom Brossman

Respuestas:

6

Después de mirar cuidadosamente alrededor (MUCHO), encontré un cambio de código en 2011 sobre hacer notify-osdque el archivo de registro no se muestre de forma predeterminada porque se usó con fines de depuración y se escribió en el HDD cada vez que lo hizo. Para activar esta función, puede hacerlo de 2 maneras, un método temporal y uno más permanente.

Método Temporal

Abra la terminal, escribo lo siguiente:

Para sistemas de 64 bits:

sudo killall notify-osd
LOG=1 /usr/lib/x86_64-linux-gnu/notify-osd &

Para sistemas de 32 bits:

sudo killall notify-osd
LOG=1 /usr/lib/notify-osd/notify-osd &

Ahora verá el .cache/notify-osd.logarchivo y la información de depuración en él.

Método permanente (ADVERTENCIA: cambio global)

Para una solución más permanente, haga lo siguiente (Cambio global. Lea la Advertencia mencionada por Rinzwind a continuación. ¡Esto afectará a todos y matará al gato!):

sudo nano /etc/environment

Agregue la siguiente línea al final y guarde:

LOG=1

Reinicie la computadora para probar.

Método permanente (cambio específico del usuario)

Para una solución más permanente, haga lo siguiente (Cambio específico del usuario. Esto solo lo afectará a usted y al perro. El gato aún sobrevivirá):

sudo nano ~/.bashrc

Agregue la siguiente línea al final y guarde:

LOG=1

Reinicie la computadora para probar.

Debería ver que la información comienza a aparecer en el .cache/notify-osd.logarchivo. Por ejemplo, esto me después de desconectar 2 veces mi conexión por cable:

GNU nano 2.2.6 Archivo: .cache / notify-osd.log

[2013-05-04T18:49:55-00:00, NetworkManager ] Connected
Intel

[2013-05-04T18:50:26-00:00, NetworkManager ] Disconnected - you are now offline
Ethernet network

[2013-05-04T18:50:29-00:00, NetworkManager replaced] Connected
Intel
Luis Alvarado
fuente
3
Pequeña advertencia: esto podría ser una mala idea ... LOG = 1 en / etc / environment lo convierte en una variable de todo el sistema y podría romper cosas ... Dios sabe lo que reacciona en LOG (ofc. Deberían haberlo hecho algo así como NOTIFYOSDLOG ) Quizás para empezar, lo agregaría a bashrc para 1 usuario solo para estar seguro.
Rinzwind
@Rinzwind Sí, eso creo. Se agregó el bashrc.
Luis Alvarado
Gracias luis Acepté esto porque no requiere otro PPA que es genial. (Le di la recompensa a @Stump solo porque tienes tanta reputación que no te la perderás, espero que no te importe).
Tom Brossman
1
@TomBrossman Te odiaré hasta que Ubuntu compre Microsoft ^^.
Luis Alvarado
15

Puede instalar el paquete de indicadores-notificaciones que realiza un seguimiento de las notificaciones que recibe. Puedes instalar con lo siguiente

sudo add-apt-repository ppa:jconti/recent-notifications
sudo apt-get update
sudo apt-get install indicator-notifications

Tendrá que cerrar sesión y volver a iniciarla. Aparece como un buzón en el panel superior y se vuelve verde cuando recibe nuevos mensajes.

Notificaciones

Esto es en 13.04 pero también debería funcionar en 12.04.

Tocón
fuente
Esto no muestra notificaciones de indicador + iconos de la bandeja del sistema enUbuntu 19.04(GNOME Shell)
MD. Mohiuddin Ahmed
6

Esto mostrará todos los mensajes de notificación desde el momento en que se inicia hasta que se detiene.

dbus-monitor "interface='org.freedesktop.Notifications'"    |     \
grep --line-buffered  "member=Notify\|string"

Cópielo y péguelo en una ventana de terminal ( Ctrl+ Alt+ T).

Para detenerlo, use Ctrl+ Co cierre la ventana.

Esto es efectivo aunque no discriminatorio y crudo, pero se puede perfeccionar para monitorear los detalles exactos deseados de un agente notificador específico al alterar la grepexpresión regular "member=Notify\|string". El texto se puede masajear con sed, awketc. para que se vea bien.

Penúltimamente, sería muy útil vincular el script para que se ejecute automáticamente con el agente de elección para ser monitoreado.

referencia cruzada:
- detalles explícitos en ¿Hay alguna forma de ver el historial de notificaciones?

troll la la la
fuente
1
+1 Esto es interesante pero ya debe estar ejecutándose para ver mensajes pasados.
Tom Brossman
1
exactamente This will show all notification messages **from the time it is started** until it is stopped. Todas las otras soluciones propuestas deben ejecutarse antes de ser efectivas. Esto no es diferente, excepto ... Para hacerlo "pegajoso", el script se puede incluir como parte de la rutina de inicialización de arranque. También la salida se puede canalizar a un archivo de registro. enlace agregado para más detalles ref. enlaces para agregar - muchos muchos muchos
troll la la la