Skip to main content

Module log_reporting

Module log_reporting 

Source
Expand description

BUFFER_READY intrinsic reporting for the log objects (Clause 13.3.7).

A Trend Log, Event Log or Trend Log Multiple that reports intrinsically tells the recipients of its Notification Class each time Notification_Threshold more records have been collected since its last report, so they can fetch the new ones with ReadRange. The three tables (12-29, 12-31 and 12-35) give each log the same event rows, and the crate’s BufferReadyReporting keeps them for any of the three: it runs the algorithm on the log’s Total_Record_Count, its pMonitoredValue, and serves and takes the rows itself. [BufferReadyReport] carries one report’s counts to the server.

Event_State never leaves NORMAL. Each report is a NORMAL to NORMAL transition, so it stamps the TO_NORMAL slots of Event_Time_Stamps, Event_Message_Texts and Acked_Transitions, and Event_Enable’s TO_NORMAL flag decides whether it goes out.

An object adopts it in three steps: hold one and lend it to its LogLifecycle, which restarts Records_Since_Notification at a purge; offer each read and write to its read and write; and invoke impl_buffer_ready_reporting! with the field and the log buffer.