Examining an item doesn't generate an event, so you can't tell when the book has been read.
Builders often settle for updating the journal when the book is discovered (e.g. on opening the container).
You could make an item with a unique property, using the "on item activated" event to "read" the book, displaying an alternate description and updating the journal.
Or, you could use a placeable book "on used".
In both cases, the regular description would say "use the object to read it".