Well to do this you do not need to add any events yourself, that is taken care for you. If you want to show the user info regarding more than just one event you should probably think of retrieving these calls and storing them in an array or database...
So you need to create a class derived from CActive and in the ConstructL function you would have something like this
// Get the file server session owned by control environment
RFs& fsSession = CCoeEnv::Static()->FsSession();
// create the log engine, a view of the logengine, a filter
iLogClient = CLogClient::NewL(fsSession);
iLogView = CLogViewEvent::NewL(*iLogClient);
iLogFilter = CLogFilter::NewL();
// Add to the active scheduler
Then when the request has been dealt with you should do something in your runL() that would add these to an database or somewhere...
TBool eventsInView = iLogView->SetFilterL(*iLogFilter, iStatus);
...//whatever you want to do here //
There won't be any events in the view if you are testing this on the emulator so you need to use AddEvent etc
const CLogEvent& event = iLogView->Event();
// Are there any more entries
// if there is another entry, issue the request
// to move to the next entry.