Comment lire les messages NotifyOSD après leur affichage?

14

Je voudrais lire une liste de messages affichés notify-osdde temps en temps. J'utilise toujours 12.04, si c'est important. Est-ce possible?

Ces deux questions de 2010 indiquent qu'un fichier journal devrait exister à ~/.cache/notify-osd.log. Je n'ai pas un tel fichier, et j'aimerais savoir s'il s'agit d'un bogue (auquel cas cette question doit être fermée) ou si ce fichier journal dépend d'un autre paramètre (comme Paramètres système -> Confidentialité)?

Je ne me soucie pas de stocker des données entre les redémarrages. Je veux juste parcourir les messages de la session en cours.

EDIT: Deux bonnes réponses maintenant, mais j'aimerais savoir si ces messages sont stockés quelque part , (estimation totale, / tmp? RAM?) Pendant une courte période après leur apparition à l'écran. Une sorte de mémoire tampon doit exister telle qu’elles apparaissent les unes après les autres, quelques secondes chacune, même s’il y a 20 à 30 notifications sur une ou deux minutes.

J'ai omis de mentionner dans ma question d'origine que je ne suis pas intéressé par un autre indicateur PPA + ou des écritures de lecteur excessives, je veux juste savoir s'il est possible de voir les messages pendant une courte période après leur apparition.

Mon cas d'utilisation pour cela est de revenir en arrière et de trouver quelle chanson a été jouée il y a quelques minutes sur une station de radio en streaming. Je l'ai en tant que musique de fond, et parfois un morceau me vient à l'esprit après l'avoir entendu. Je n'ai aucun moyen de revenir en arrière pour voir ce qui a joué il y a 1-2 chansons.

Tom Brossman
la source
1
La raison pour laquelle vous ne voyez plus le journal: bugs.launchpad.net/ubuntu/+source/notify-osd/+bug/904835
Seth
Quelle application / quel lecteur utilisez-vous pour lire le flux radio?
Basharat Sialvi
@BasharatSial Radiotray
Tom Brossman
1
@TomBrossman Radiotray a history pluginpour garder la trace des chansons précédemment jouées.
Basharat Sialvi
@BasharatSial Merci, c'est probablement la solution la plus simple pour moi.
Tom Brossman

Réponses:

6

Après avoir soigneusement regardé autour (BEAUCOUP), j'ai trouvé un changement de code en 2011 sur le fait de notify-osdne pas sortir par défaut dans le fichier journal car cela a été utilisé à des fins de débogage et écrit sur le disque dur à chaque fois. Pour activer cette fonctionnalité, vous pouvez le faire de 2 façons, une méthode temporaire et une méthode plus permanente.

Méthode temporaire

Ouvrez le terminal, je tape ce qui suit:

Pour les systèmes 64 bits:

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

Pour les systèmes 32 bits:

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

Vous allez maintenant voir le .cache/notify-osd.logfichier et les informations de débogage qu'il contient.

Méthode permanente (AVERTISSEMENT: changement global)

Pour une solution plus permanente, procédez comme suit (Changement global. Lisez l'avertissement mentionné par Rinzwind ci-dessous. Cela affectera tout le monde et tuera le chat!):

sudo nano /etc/environment

Ajoutez la ligne suivante à la fin et enregistrez:

LOG=1

Redémarrez l'ordinateur pour tester.

Méthode permanente (changement spécifique à l'utilisateur)

Pour une solution plus permanente, procédez comme suit (changement spécifique à l'utilisateur. Cela n'affectera que vous et le chien. Le chat survivra toujours.):

sudo nano ~/.bashrc

Ajoutez la ligne suivante à la fin et enregistrez:

LOG=1

Redémarrez l'ordinateur pour tester.

Vous devriez voir les informations commencer à apparaître dans le .cache/notify-osd.logfichier. Par exemple, cela me déconnecte 2 fois ma connexion filaire:

Fichier GNU nano 2.2.6: .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
la source
3
Petit avertissement: cela pourrait être une mauvaise idée ... LOG = 1 dans / etc / environment en fait une variable à l'échelle du système et pourrait casser des choses ... Dieu sait ce qui réagit sur LOG (ofc. Ils auraient dû en faire quelque chose comme NOTIFYOSDLOG ). Peut-être pour commencer je l'ajouterais à bashrc pour 1 utilisateur juste pour être sûr.
Rinzwind
@Rinzwind Oui, je le pensais. Ajout du bashrc.
Luis Alvarado
Merci Luis. J'ai accepté cela car il ne nécessite pas d'autre PPA, ce qui est génial. (J'ai donné la prime à @Stump uniquement parce que vous avez tellement de représentants que vous ne le manquerez pas, j'espère que cela ne vous dérange pas).
Tom Brossman
1
@TomBrossman Je te détesterai jusqu'à ce qu'Ubuntu achète Microsoft ^^.
Luis Alvarado
15

Vous pouvez installer le package indicateur-notifications qui garde une trace des notifications que vous recevez. Vous pouvez installer avec les éléments suivants

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

Vous devrez vous déconnecter et vous reconnecter. Il apparaît comme une boîte aux lettres dans le panneau supérieur et devient vert lorsque vous recevez de nouveaux messages.

Notifications

Ceci est le 13.04 mais devrait également fonctionner le 12.04.

Souche
la source
Cela ne montre aucune notification d'indicateur + icônes de barre d'état système dansUbuntu 19.04(GNOME Shell)
MD. Mohiuddin Ahmed
6

Cela affichera tous les messages de notification du moment où il est démarré jusqu'à ce qu'il soit arrêté.

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

Copiez-le et collez-le dans une fenêtre de terminal ( Ctrl+ Alt+ T).

Pour l'arrêter, utilisez Ctrl+ Cou fermez la fenêtre.

Ceci est efficace bien que non discriminant et brut mais peut être affiné pour contrôler simplement les détails exacts souhaités, d'un agent notifiant spécifique en modifiant l' grepexpression régulière "member=Notify\|string". Le texte peut ensuite être massé avec sed, awketc. pour bien paraître.

Avant-propos, la liaison du script à exécuter automatiquement avec l'agent de choix à surveiller serait très utile.

référence croisée:
- détails explicites dans Existe-t-il un moyen d'afficher l'historique des notifications?

troll la la la
la source
1
+1 C'est intéressant, mais il doit déjà être en cours d'exécution pour afficher les messages précédents.
Tom Brossman
1
exactement This will show all notification messages **from the time it is started** until it is stopped. Toutes les autres solutions proposées doivent être exécutées avant d'être efficaces. Ce n'est pas différent, sauf ... Pour le rendre "collant", le script peut être inclus dans le cadre de la routine d'initialisation de démarrage. La sortie peut également être dirigée vers un fichier journal. lien ajouté pour plus de détails réf. liens à ajouter - beaucoup beaucoup beaucoup
troll la la la