Collecting information for troubleshooting

From OPC Labs Knowledge Base
Revision as of 15:55, 24 November 2021 by User (talk | contribs) (→‎Assets to collect)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This article describes the assets that you need to collect for a successful "deep" troubleshooting.


Find the simplest case that shows first symptoms of a problem, and use that in a test. The logs are tedious to analyze even if they are short; any unnecessary communication adds tremendously to the complexity of the investigation.

  1. For OPC Classic, install OPC Analyzer. For OPC UA, install Wireshark.
  2. Enable extended tracing (mainly for OPC UA; see QuickOPC: How to enable extended tracing). Configure it so that the information is logged to a file, and contains timestamps and other details.
  3. Instrument your code so that EasyDAClient.LogEntry, EasyAEClient.LogEntry, EasyUAClient.LogEntry or EasyUASubscriber.LogEntry notifications are logged to a file, together with their timestamps and other details.
  4. Instrument your code so that it collects and logs relevant application-specific occurrences, together with their timestamps and other details.
  5. Enable logging on the side of the OPC server, if possible.

Learning material

Assets to collect

We will need following files from you:

  1. Trace files from OPC Analyzer (for OPC Classic) or Wireshark (for OPC UA).
  2. Extended tracing output (mainly for OPC UA).
  3. EasyXXClient.LogEntry records (mainly for OPC UA).
  4. A log of relevant occurrences in your own application.
  5. OPC server log(s), if available.

It is important that all logs contain timestamps (with milliseconds precision, or at least the highest precision achievable), so that we can correlate them properly.

In addition, please include any relevant observations and explanations as to what has been attempted and how the test ran.