The dataChanged() signal applies only to the model, not to your log file. How is your model being notified that the data in the file is changed? What is causing your model to reload the data from the file (besides your manual push button method)?

I don't see anything in the code you have posted that indicates your program is watching the disk file for changes. There is no automatic connection between the disk file and your model. You have to write some code to watch the disk file that will trigger your model to reload it when it is changed.