uatools 1.0.0-pre2
 
Loading...
Searching...
No Matches
UaWatch.cpp File Reference

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)
 

Detailed Description

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.

Function Documentation

◆ main()

int main ( int argc,
char ** argv )