OPC Data Client does not log events on itself, but allows you to implement such functionality. It generates notifications with log entries that contain the necessary data. You can receive these notifications, and implement any kind of event logging with them in your code.
Note that you should not programmatically use the logging event notifications for any kind of direct actions on the OPC subsystem. For example, the notifications that inform you about the connections and disconnections to/from OPC servers have no direct relation to your OPC method calls, because the component internally merges the requests from multiple objects, and also makes optimizations to prevent unnecessary disconnections etc. The purpose of event logging is different from OPC communication.
The EasyUAClient component has a static LogEntry event. This event is raised for loggable entries originating in the OPC-UA client engine and the EasyUAClient component. Each event notification carries a LogEntryEventArgs object, which contains information such as the source of the event, the event message, event type, timestamp, etc.
In COM, you cannot access static members of the EasyUAClient object, and therefore you cannot directly use its LogEntry event. To get around this, create an instance of the EasyUAClientManagement object instead, and use its (non-static) LogEntry event to achieve the same result.
Event logging for OPC UA PubSub works similarly to event logging for OPC UA Client-Server (described above), except that you will use the LogEntry Event on the EasyUASubscriber Class.
Event logging for OPC “Classic” specifications works similarly to event logging for OPC UA Client-Server (described above), except that you will use the LogEntry Event on the EasyDAClient Class or the EasyAEClient Class.
Currently, only limited contents is provided for OPC Classic: Basically, logged entries only cover callback errors, (some) queue errors, and licensing information.