Ich verwende python-watchdog
, um bestimmte Pfade auf Änderungen wie Hinzufügen, Löschen, Ändern usw. zu überwachen. Zusammen mit den Zeit- und Nachrichteninformationen möchte ich den Benutzernamen des Benutzers erfassen, der diese Änderung vorgenommen hat. Ich schaute auf getpass
, und ich suchte nach einer Variable innerhalb der Protokollierung selbst, aber konnte nichts finden.Wie erfasst man den Benutzernamen des Betriebssystembenutzers in der Protokollierungsbibliothek von Python?
Irgendwelche Hinweise? Mein Watchdog-Code ist unter
print 'starting the watcher mate...'
create_log_file()
logging.basicConfig(filename = log_file, level = logging.INFO, format = '%(asctime)s - %(message)s', datefmt = '%Y-%m-%d %H:%M:%S')
path = sys.argv[1] if len(sys.argv) > 1 else '/etc/nginx/'
event_handler = LoggingEventHandler()
observer = Observer()
observer.schedule(event_handler, path, recursive=True)
observer.start()
Dies könnte helfen: http://stackoverflow.com/questions/842059/is-there-a-portable-way-to-get-the-current-username-in-python –