Як я можу прочитати повідомлення NotifyOSD після їх відображення?


14

Я хотів би прочитати список повідомлень, які notify-osdчас від часу відображаються. Я все ще використовую 12.04, якщо це має значення. Чи можливо це?

Ці два питання з 2010 року показують , що лог - файл повинен існувати ~/.cache/notify-osd.log. У мене немає такого файлу, і я хотів би дізнатися, чи це помилка (у такому випадку це питання слід закрити) чи цей файл журналу залежить від іншого налаштування (наприклад, Налаштування системи -> Конфіденційність)?

Мені не байдуже зберігати дані між перезавантаженнями. Я просто хочу переглядати повідомлення з поточного сеансу.

EDIT: Зараз два хороших відповіді, але я хотів би знати, чи зберігаються ці повідомлення де-небудь (загальна здогадка, / tmp? ОЗУ?) Протягом короткого періоду після появи на екрані. Якийсь буфер повинен існувати, коли вони з’являються один за одним, по кілька секунд кожен, навіть якщо є 20-30 повідомлень протягом проміжку хвилини чи двох.

Я не зазначив у своєму первісному запитанні, що мене ще не цікавить ще один показник PPA + або надмірний диск, я просто хочу знати, чи можна побачити повідомлення протягом короткого часу після їх появи.

Мій приклад для цього - повернутися назад і знайти, яку пісню відтворювали кілька хвилин тому на поточній радіостанції. У мене це як фонова музика, і час від часу мелодія застрягає в голові після того, як я її почую. У мене немає можливості повернутися, щоб побачити, що грав 1-2 пісні тому.


1
Причина, коли ви більше не бачите журналу: bugs.launchpad.net/ubuntu/+source/notify-osd/+bug/904835
Seth

Який додаток / плеєр ви використовуєте для відтворення радіо потоку?
Башарат Сіальві

@BasharatSial Radiotray
Том Броссман

1
@TomBrossman Radiotray має history pluginвідстежувати пісні, що відтворювалися раніше.
Башарат Сіальві

@BasharatSial Дякую, це, мабуть, найпростіше рішення для мене.
Том Броссман

Відповіді:


6

Після уважного огляду (ЛОТ) у 2011 році я виявив зміну коду щодо того, щоб notify-osdне виводити за замовчуванням файл журналу, оскільки це використовувалося для налагодження та писав на жорсткий диск кожен раз, коли це робилося. Щоб активувати цю функцію, ви можете зробити її двома способами, тимчасовим методом та більш постійним.

Тимчасовий метод

Відкрийте термінал I наберіть наступне:

Для 64-бітових систем:

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

Для 32-бітових систем:

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

Тепер ви побачите .cache/notify-osd.logфайл і інформацію про налагодження в ньому.

Постійний метод (УВАГА: глобальні зміни)

Для більш постійного рішення виконайте наступне (Глобальна зміна. Прочитайте попередження, про яке згадував Рінцвінд нижче. Це вплине на всіх і вб'є кішку!):

sudo nano /etc/environment

Додайте наступний рядок у кінці та збережіть:

LOG=1

Перезавантажте комп'ютер для тестування.

Постійний метод (конкретна зміна користувача)

Для більш постійного рішення виконайте наступне (Зміни, характерні для користувача. Це вплине лише на вас і собаку. Кішка все одно виживе.):

sudo nano ~/.bashrc

Додайте наступний рядок у кінці та збережіть:

LOG=1

Перезавантажте комп'ютер для тестування.

Ви повинні побачити, що інформація починає відображатися у .cache/notify-osd.logфайлі. Наприклад, це я після відключення 2-кратного провідного з'єднання:

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

3
Невелике попередження: це може бути поганою ідеєю ... LOG = 1 в / etc / середовище робить його загальносистемною змінною і може зламати речі ... Бог знає, що реагує на LOG (часто. Вони повинні були зробити щось подібне до NOTIFYOSDLOG ). Можливо, для початку я додав би його до bashrc для 1 користувача просто для впевненості.
Rinzwind

@Rinzwind Так, я так думав. Додав bashrc.
Луїс Альварадо

Спасибі Луїс. Я прийняв це, тому що для нього не потрібен інший PPA, що чудово. (Я дав нагороду @Stump лише тому, що у вас стільки реп, що ви цього не пропустите, сподіваюся, ви не заперечуєте).
Том Броссман

1
@TomBrossman Я буду ненавиджу вас, поки Ubuntu не купить Microsoft ^^.
Луїс Альварадо

15

Ви можете встановити індикатор-сповіщення про пакет, який відстежує отримані повідомлення. Ви можете встановити наступне

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

Вам доведеться вийти з системи та знову увійти. Він відображається як поштова скринька на верхній панелі та стає зеленим, коли ви отримуєте нові повідомлення.

Сповіщення

Це 13.04, але має працювати і 12.04.


Це не відображає сповіщень про індикатори + піктограми системного лотка вUbuntu 19.04(GNOME Shell)
MD. Мохуддін Ахмед

6

Це покаже всі повідомлення сповіщень від часу його запуску до його зупинки.

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

Скопіюйте та вставте його у вікно терміналу ( Ctrl+ Alt+ T).

Щоб зупинити його, використовуйте Ctrl+ Cабо закрийте вікно.

Це ефективно, хоча й недискримінаційно та неочищено, але може бути точним, щоб просто відстежувати потрібні деталі конкретного агента сповіщення, змінюючи grepрегулярний вираз "member=Notify\|string". Текст може бути масажується sed, і awkт.д. , щоб добре виглядати.

Передостаннє прив'язка сценарію до автоматичного виконання з агентом вибору, який слід контролювати, було б найбільш корисним.

перехресне посилання:
- чіткі реквізити Чи є спосіб перегляду історії сповіщень?


1
+1 Це цікаво, але воно повинно працювати вже для перегляду минулих повідомлень.
Том Броссман

1
саме This will show all notification messages **from the time it is started** until it is stopped. всі інші запропоновані рішення повинні бути виконані, перш ніж набути чинності. Це не відрізняється, за винятком ... Щоб зробити його "липким", скрипт можна включити як частину процедури ініціалізації завантаження. Також вихід може бути переданий у файл журналу. для більш детальної інформації додано посилання ref. посилання, які потрібно додати - багато-багато-багато
troll la la la
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.