A method comprising: generating multiple events associated with execution of a recipe control module by a controller (104a, 104b) in a process control system that is associated with production or processing of a product, the recipe control module defining production or processing requirements for a batch of the product and having a set of phases, each phase associated with a sequential control module, each sequential control module configured to implement the associated phase of the recipe control module, the recipe control module and each sequential control module configured to generate the events, each event associated with a unique identifier; storing the events in a buffer; communicating the events from the buffer to a control data access server for delivery to a supervisory device (106a, 106b) associated with the controller, the control data access server configured to provide secure data access to and from a control execution environment (202a-202n) of the controller; delivering, by the control data access server, the events to a notification client for storage in a notification queue; retrieving, by a notification manager, the events from the notification queue and storing the events in an event list; determining, by an event system data component, if one or more events are missing using the unique identifiers associated with the events from the event list; receiving a request from the control data access server to recover one or more of the events for the supervisory device in response to determining that at least one event is missing; recovering at least one of the events from the buffer; and communicating (820, 822) the at least one recovered event to the control data access server for delivery to the supervisory device. generating multiple events associated with execution of a recipe control module by a controller (104a, 104b) in a process control system that is associated with production or processing of a product, the recipe control module defining production or processing requirements for a batch of the product and having a set of phases, each phase associated with a sequential control module, each sequential control module configured to implement the associated phase of the recipe control module, the recipe control module and each sequential control module configured to generate the events, each event associated with a unique identifier; storing the events in a buffer; communicating the events from the buffer to a control data access server for delivery to a supervisory device (106a, 106b) associated with the controller, the control data access server configured to provide secure data access to and from a control execution environment (202a-202n) of the controller; delivering, by the control data access server, the events to a notification client for storage in a notification queue; retrieving, by a notification manager, the events from the notification queue and storing the events in an event list; determining, by an event system data component, if one or more events are missing using the unique identifiers associated with the events from the event list; receiving a request from the control data access server to recover one or more of the events for the supervisory device in response to determining that at least one event is missing; recovering at least one of the events from the buffer; and communicating (820, 822) the at least one recovered event to the control data access server for delivery to the supervisory device.