Protokolliert OS X Benachrichtigungen von der Benachrichtigungszentrale?

Der hilfreiche Begleiter des OSX-Benachrichtigungscenters Growl protokolliert standardmäßig alle eingegangenen Benachrichtigungen . Sie können festlegen, wie groß das Protokoll werden darf, oder das Protokollieren in der Anwendung deaktivieren.

Seit dem neusten Update bietet Growl an, alle Benachrichtigungen an das OS X Notification Center weiterzuleiten.

Protokolliert OS X auch Meldungen des Benachrichtigungscenters? Wenn ja, wo finde ich sie?

Warum ich das frage:

OS X protokolliert alle Ihre Downloads in einer SQLite 3.x-Datenbank. Ich möchte wissen, ob etwas Ähnliches auch mit Benachrichtigungen passiert. Dies könnte ein Datenschutzproblem sein, wenn Sie an private Nachrichten oder E-Mails denken, wenn zu viele Informationen gespeichert werden.

Antworten (5)

Dies ist eine alte Frage, aber für den Fall, dass jemand darüber stolpert und sich speziell Sorgen über die Auswirkungen des Notification Center auf die Privatsphäre macht, lautet die Antwort JA, OS X führt ein Protokoll der Benachrichtigungen auf der Festplatte.

Das Format ist eine SQLite-Datenbank und kann in diesem Ordner gefunden werden:

~/Library/Application Support/NotificationCenter

Darin finden Sie mindestens eine .db-Datei für Ihr Konto. Ich habe einige gesehen, die OS X anscheinend einmal als beschädigt angesehen hat, also heißen sie .db.corrupt.

Wenn Sie den Strings-Befehl für diese Datei ausführen, werden Ihnen eine Menge Binärdaten angezeigt, einige „NSSomething“-Klassennamen und ja, Ihre iMessages, Dateipfade, Twitter- und Facebook-Benachrichtigungen und alles andere, was von einer App an die Benachrichtigungszentrale gesendet wurde oder das System.

Wenn Sie diese Datei zu einem bestimmten Zeitpunkt loswerden möchten, können Sie usernoted vorübergehend beenden (es startet sich selbst neu) und die Datei auf einmal löschen (führen Sie dies als Ihr Benutzerkonto aus, nicht mit sudo):

killall usernoted && rm ~/Library/Application\ Support/NotificationCenter/*.db

Dies wird in 99% der Fälle usernoted abfangen, während es vorübergehend nicht läuft, die alte Datenbank erfolgreich löschen und usernoted wird eine neue leere erstellen, wenn es wieder startet.

Dies ist keine gute Lösung, wenn Sie sich wirklich Sorgen um die Privatsphäre machen, aber abgesehen davon, dass Sie Ihr System verschlüsseln oder eine Ramdisk für diesen Ordner verwenden, gibt es wirklich keine Lösung.

Ab OS 10.10 Mavericks scheint sich die Benachrichtigungsdatenbank in einem temporären Verzeichnis statt in ~/Library. Bei meiner Maschine ist es drin$TMPDIR/../0/com.apple.notificationcenter/db/db
Schneller Weg, um das Verzeichnis für den aktuellen Benutzer zu finden:find /private/var/folders -user $USER -name com.apple.notificationcenter 2>/dev/null
Wie lese ich db-wal? stringsscheint alles als ASCII zu dekodieren.

In Mac OSX (oder macos) 10.10 und höher wurde diese Datei verschoben. Der Dateiname ist nicht für alle gleich, daher müssen Sie ein wenig nachforschen, um ihn zu finden:

  1. Starten Sie „Aktivitätsmonitor“ (unter /Programme/Dienstprogramme)
  2. Suchen Sie nach dem Prozess usernotedund doppelklicken Sie darauf
  3. Gehen Sie auf die Registerkarte "Dateien und Ports öffnen"

Es befindet sich in einem Unterordner /com.apple.notificationcenter/db unter /private/var/folders .

(Dank an https://stackoverflow.com/questions/26754189/new-location-of-the-notification-center-db-file-in-10-10 für den neuen Speicherort!)

Ja, OSX protokolliert die Benachrichtigungen. Sie befinden sich in der sqlite3 db- und db-wal-Datei.
Wie in 10.14.6 - Mojave konnte der Pfad der Datei gefunden werden über:

lsof -p $(ps aux | grep -m1 usernoted | awk '{ print $2 }')| awk '{ print $NF }' | grep 'db2/db$' | xargs dirname
Vielen Dank! Dadurch wird die db-walDatei gefunden. Wenn ich es jedoch versuche und lese, fragt es nach einer Passphrase. Irgendeine Idee, wie man das bekommt?

Auf High Sierra 10.4.3 können Sie mit den folgenden Befehlen suchen

getconf DARWIN_USER_DIR
/var/folders/60/23gd59655q70qf_ckxjyhrzr0000gn/0/
ls /var/folders/60/23gd59655q70qf_ckxjyhrzr0000gn/0/com.apple.notificationcenter/

Es gibt einen db- und einen db2-Ordner - anscheinend wurde die Datenbank im November auf db2 migriert.

Ja, Benachrichtigungen werden der Benachrichtigungszentrale hinzugefügt, wenn Sie sie beim Erscheinen nicht bestätigen/anklicken. Sie können darauf zugreifen, indem Sie auf das Symbol der Benachrichtigungszentrale in der oberen rechten Ecke Ihrer Menüleiste klicken.

Geben Sie hier die Bildbeschreibung ein

Sie sind jedoch alle unter der Growl-App und nicht unter der Ursprungs-App aufgeführt, und das Klicken auf sie scheint nirgendwohin zu führen, sodass die Funktionalität im Vergleich zu Standard-Growl-Benachrichtigungen und dem Growl-Rollup etwas eingeschränkt ist.

Dies ist wahrscheinlich eine Einschränkung, wie die Growl-Entwickler das Benachrichtigungszentrum ansprechen können, und ich nehme an, wir müssen nur warten, bis alle Apps das Benachrichtigungszentrum direkt (neben/anstelle von Growl) integrieren, um etwas funktionalere Benachrichtigungen zu erhalten.

Danke Gerry, das war mir bewusst. :) Ich suche irgendwo in der Bibliothek nach einem permanenten Protokoll, in dem Informationen über alle jemals geposteten Benachrichtigungen gespeichert sind. OS X zum Beispiel protokolliert alle Ihre Downloads . Ich frage mich, ob etwas Ähnliches auch mit Benachrichtigungen passiert. Das könnte ein Datenschutzproblem sein, wenn man an private Nachrichten oder E-Mails denkt.