UaWatch — per-session subscription event-log tool. More...
#include <atomic>#include <chrono>#include <csignal>#include <cstdio>#include <ctime>#include <fstream>#include <iomanip>#include <iostream>#include <memory>#include <mutex>#include <sstream>#include <string>#include <thread>#include <unordered_map>#include <vector>#include <unistd.h>#include <ifw/fnd/defs/base.hpp>#include <ifw/fnd/defs/iCommAdapter.hpp>#include <ifw/fnd/defs/logger.hpp>#include <eso/uatools/ualib/client.hpp>#include <eso/uatools/uawatch/Config.hpp>Functions | |
| int | main (int argc, char **argv) |
UaWatch — per-session subscription event-log tool.
Each named watcher in the YAML config gets its own thread and its own ualib::Client (=> its own OPC UA session). The tool logs every notification and every connection-state transition with a thread tag and an ISO-8601 timestamp, so an operator can perturb the environment (reboot PLC, unplug cable, restart server, set TwinCAT to config mode) and see how each session reacts in real time.
Companion of UaStressTest: UaStressTest measures throughput and latency, UaWatch observes session-level events. Different problem, different shape.
| int main | ( | int | argc, |
| char ** | argv ) |