diff --git a/application_events.json b/application_events.json
index 41340a2..1b3a8bf 100644
--- a/application_events.json
+++ b/application_events.json
@@ -1,2397 +1,5 @@
{
"events": [
- {
- "timestamp": "2025-08-27T13:56:47.005439",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.021104097366333,
- "points_saved": 20,
- "points_rate": 1.9957880694260268,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.028723204135894777,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:56:57.019315",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.013875961303711,
- "points_saved": 20,
- "points_rate": 1.9972286532492851,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.024221587181091308,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:57:07.033888",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.014573335647583,
- "points_saved": 20,
- "points_rate": 1.9970895743314978,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025725579261779784,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:57:17.049143",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015254497528076,
- "points_saved": 20,
- "points_rate": 1.996953747399661,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.026339006423950196,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:57:27.078683",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.029540061950684,
- "points_saved": 20,
- "points_rate": 1.9941093885126895,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.027506673336029054,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:57:37.093286",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.014602422714233,
- "points_saved": 20,
- "points_rate": 1.997083773853845,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025444185733795165,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:57:47.108416",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015130519866943,
- "points_saved": 20,
- "points_rate": 1.9969784677619669,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.0243044376373291,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:57:57.133115",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.024160623550415,
- "points_saved": 20,
- "points_rate": 1.9951795218656707,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.024517512321472167,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:58:07.147544",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.01438283920288,
- "points_saved": 20,
- "points_rate": 1.9971275635385983,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.023736071586608887,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:58:17.178413",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.030943393707275,
- "points_saved": 20,
- "points_rate": 1.9938304120574168,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.03028717041015625,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:58:27.194612",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.016709327697754,
- "points_saved": 20,
- "points_rate": 1.996663709178113,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.029086375236511232,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:58:37.210040",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015428066253662,
- "points_saved": 20,
- "points_rate": 1.9969191399206099,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025285911560058594,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:58:47.225039",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.014999151229858,
- "points_saved": 20,
- "points_rate": 1.997004662506034,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02554795742034912,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:58:57.247390",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.021734714508057,
- "points_saved": 20,
- "points_rate": 1.9956624845643556,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.024332153797149658,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:59:07.263175",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016401052474976,
- "points_saved": 20,
- "points_rate": 1.9967251605863119,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025391173362731934,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:59:17.279076",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.0159010887146,
- "points_saved": 20,
- "points_rate": 1.9968248311212826,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.029484033584594727,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:59:27.294526",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
- "details": {
- "duration": 10.015449523925781,
- "points_saved": 20,
- "points_rate": 1.9969148616067858,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.3,
- "cpu_max": 0.3,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02646416425704956,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:59:37.309678",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015151977539062,
- "points_saved": 20,
- "points_rate": 1.9969741891939246,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.027064502239227295,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:59:47.324791",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015113115310669,
- "points_saved": 20,
- "points_rate": 1.9969819381695122,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.029129648208618165,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T13:59:57.339992",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015201091766357,
- "points_saved": 20,
- "points_rate": 1.9969643960960795,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02653287649154663,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:00:07.358429",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.017419338226318,
- "points_saved": 20,
- "points_rate": 1.9965221904687873,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.028737640380859374,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:00:17.375669",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.018257856369019,
- "points_saved": 20,
- "points_rate": 1.996355083562276,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02790191173553467,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:00:27.391556",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.015378952026367,
- "points_saved": 20,
- "points_rate": 1.9969289325745871,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02555577754974365,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:00:37.416445",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.024889469146729,
- "points_saved": 20,
- "points_rate": 1.9950344651233651,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.028536367416381835,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:00:48.827022",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 23 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 11.411084413528442,
- "points_saved": 23,
- "points_rate": 2.0155840730379917,
- "variables_saved": 92,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025070916051449982,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:00:58.841964",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.014942407608032,
- "points_saved": 20,
- "points_rate": 1.997015977326703,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.024640440940856934,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:01:08.857932",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015967607498169,
- "points_saved": 20,
- "points_rate": 1.9968115696607853,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.026328134536743163,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:01:18.873050",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.015117883682251,
- "points_saved": 20,
- "points_rate": 1.9969809873717248,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.024656879901885986,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:01:28.894512",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.021462678909302,
- "points_saved": 20,
- "points_rate": 1.9957166574187875,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02650352716445923,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:01:38.914765",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.020252466201782,
- "points_saved": 20,
- "points_rate": 1.9959576934273675,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025162339210510254,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:01:48.930510",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015744924545288,
- "points_saved": 20,
- "points_rate": 1.996855965349776,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025660991668701172,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:01:58.946005",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015495538711548,
- "points_saved": 20,
- "points_rate": 1.9969056870622817,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.027606546878814697,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:02:08.961664",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.015147924423218,
- "points_saved": 20,
- "points_rate": 1.9969749973664837,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.028531742095947266,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:02:18.977513",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
- "details": {
- "duration": 10.016359806060791,
- "points_saved": 20,
- "points_rate": 1.9967333829100484,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.3,
- "cpu_max": 0.3,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.024178755283355714,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:02:28.994318",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016804456710815,
- "points_saved": 20,
- "points_rate": 1.9966447469782527,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02420414686203003,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:02:39.015044",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.020726203918457,
- "points_saved": 20,
- "points_rate": 1.9958633329567768,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02776545286178589,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:02:49.031416",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015865087509155,
- "points_saved": 20,
- "points_rate": 1.9968320085443363,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.023036086559295656,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:02:59.047156",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015740394592285,
- "points_saved": 20,
- "points_rate": 1.996856868494558,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02540404796600342,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:03:09.064305",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.017655611038208,
- "points_saved": 20,
- "points_rate": 1.9964751012165454,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.028286099433898926,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:03:19.093431",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
- "details": {
- "duration": 10.029126167297363,
- "points_saved": 20,
- "points_rate": 1.994191683939058,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.3,
- "cpu_max": 0.3,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02432166337966919,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:03:29.120310",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 21 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.026878833770752,
- "points_saved": 21,
- "points_rate": 2.09437057614295,
- "variables_saved": 84,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025248595646449497,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:03:39.135434",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 19 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015124082565308,
- "points_saved": 19,
- "points_rate": 1.897130763769157,
- "variables_saved": 76,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.031084035572252776,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:03:49.153890",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 21 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.018455743789673,
- "points_saved": 21,
- "points_rate": 2.0961314335313266,
- "variables_saved": 84,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.026339792069934663,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:03:59.186011",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
- "details": {
- "duration": 10.032121658325195,
- "points_saved": 20,
- "points_rate": 1.993596238279559,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.3,
- "cpu_max": 0.3,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.028376305103302003,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:04:09.202781",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.016769409179688,
- "points_saved": 20,
- "points_rate": 1.9966517330099824,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02478766441345215,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:04:19.218591",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.015810489654541,
- "points_saved": 20,
- "points_rate": 1.9968428936088853,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025968873500823976,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:04:29.248012",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.029421091079712,
- "points_saved": 20,
- "points_rate": 1.994133043011649,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025960683822631836,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:04:39.267118",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
- "details": {
- "duration": 10.019105911254883,
- "points_saved": 20,
- "points_rate": 1.9961861045438356,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.3,
- "cpu_max": 0.3,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.027033650875091554,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:04:49.283059",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.01594090461731,
- "points_saved": 20,
- "points_rate": 1.9968168932366681,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.028374361991882324,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:04:59.299508",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015941858291626,
- "points_saved": 20,
- "points_rate": 1.9968167031084694,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.028056025505065918,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:05:09.321389",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.022388219833374,
- "points_saved": 20,
- "points_rate": 1.9955323582878042,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.023109078407287598,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:05:19.341608",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
- "details": {
- "duration": 10.01969313621521,
- "points_saved": 20,
- "points_rate": 1.9960691139044906,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.3,
- "cpu_max": 0.3,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025216078758239745,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:05:29.358945",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
- "details": {
- "duration": 10.017320156097412,
- "points_saved": 20,
- "points_rate": 1.9965419581629584,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.3,
- "cpu_max": 0.3,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.026267945766448975,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:05:39.374227",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015824317932129,
- "points_saved": 20,
- "points_rate": 1.9968401366817512,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025633883476257325,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:05:49.393449",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.019222021102905,
- "points_saved": 20,
- "points_rate": 1.9961629713240372,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.028391826152801513,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:05:59.415798",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.021840810775757,
- "points_saved": 20,
- "points_rate": 1.9956413574735146,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025433313846588135,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:06:09.433617",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.017818689346313,
- "points_saved": 20,
- "points_rate": 1.9964426009495932,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.026223516464233397,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:06:19.450860",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.017751693725586,
- "points_saved": 20,
- "points_rate": 1.9964559525393897,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025254976749420167,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:06:29.468207",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.017346858978271,
- "points_saved": 20,
- "points_rate": 1.9965366360529437,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.026182115077972412,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:06:39.485954",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.017746925354004,
- "points_saved": 20,
- "points_rate": 1.996456902837286,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.028033947944641112,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:06:49.501585",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015121936798096,
- "points_saved": 20,
- "points_rate": 1.9969801791943174,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02716832160949707,
- "csv_write_time_avg": 3.838539123535157e-06
- }
- },
- {
- "timestamp": "2025-08-27T14:06:59.536618",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.035542488098145,
- "points_saved": 20,
- "points_rate": 1.992916678268206,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.028007280826568604,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:07:09.555740",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.018564939498901,
- "points_saved": 20,
- "points_rate": 1.9962938924664335,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025681781768798827,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:07:19.572501",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.017317771911621,
- "points_saved": 20,
- "points_rate": 1.9965424333527324,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025381839275360106,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:07:29.591652",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.01863408088684,
- "points_saved": 20,
- "points_rate": 1.996280115485525,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.024657058715820312,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:07:39.606641",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.5% CPU",
- "details": {
- "duration": 10.01550579071045,
- "points_saved": 20,
- "points_rate": 1.9969036430042642,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.5,
- "cpu_max": 0.5,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.029073095321655272,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:07:49.630674",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
- "details": {
- "duration": 10.024032831192017,
- "points_saved": 20,
- "points_rate": 1.995204957606038,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.3,
- "cpu_max": 0.3,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02725496292114258,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:07:59.653475",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.022800922393799,
- "points_saved": 20,
- "points_rate": 1.995450189508832,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02631688117980957,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:08:09.670024",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016549587249756,
- "points_saved": 20,
- "points_rate": 1.9966955512762954,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025326800346374512,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:08:19.687419",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
- "details": {
- "duration": 10.016871929168701,
- "points_saved": 20,
- "points_rate": 1.9966312978167224,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.3,
- "cpu_max": 0.3,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.026478385925292967,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:08:29.703307",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016411066055298,
- "points_saved": 20,
- "points_rate": 1.996723164425447,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.023625600337982177,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:08:39.719741",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016433477401733,
- "points_saved": 20,
- "points_rate": 1.9967186968417832,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.030253803730010985,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:08:49.738273",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
- "details": {
- "duration": 10.018017292022705,
- "points_saved": 20,
- "points_rate": 1.9964030223750857,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.3,
- "cpu_max": 0.3,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.027418076992034912,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:08:59.756288",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.018024206161499,
- "points_saved": 20,
- "points_rate": 1.9964016445178054,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025104820728302002,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:09:09.772623",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016841173171997,
- "points_saved": 20,
- "points_rate": 1.996637428330779,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.023850083351135254,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:09:19.788551",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.01592755317688,
- "points_saved": 20,
- "points_rate": 1.9968195550352543,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.026356923580169677,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:09:29.804634",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016082763671875,
- "points_saved": 20,
- "points_rate": 1.9967886120649467,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.027746212482452393,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:09:39.829243",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.024609327316284,
- "points_saved": 20,
- "points_rate": 1.995090217181985,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02703680992126465,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:09:49.845155",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.01591181755066,
- "points_saved": 20,
- "points_rate": 1.9968226921641268,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02495620250701904,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:09:59.863130",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.01741337776184,
- "points_saved": 20,
- "points_rate": 1.9965233784201224,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02633258104324341,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:10:09.879803",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.01669454574585,
- "points_saved": 20,
- "points_rate": 1.9966666557176909,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02307605743408203,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:10:19.897571",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.018308162689209,
- "points_saved": 20,
- "points_rate": 1.9963450589876257,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02619529962539673,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:10:29.917262",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.019691467285156,
- "points_saved": 20,
- "points_rate": 1.9960694463797712,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025498843193054198,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:10:39.932874",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015106678009033,
- "points_saved": 20,
- "points_rate": 1.9969832217479613,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.0290574312210083,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:10:49.949841",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.017471313476562,
- "points_saved": 20,
- "points_rate": 1.9965118315930572,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02466146945953369,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:10:59.966801",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016960620880127,
- "points_saved": 20,
- "points_rate": 1.9966136193358346,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02556014060974121,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:11:09.984109",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.016795873641968,
- "points_saved": 20,
- "points_rate": 1.996646457838646,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.024088728427886962,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:11:20.000311",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016155242919922,
- "points_saved": 20,
- "points_rate": 1.9967741628343187,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.024353623390197754,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:11:30.016474",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016722202301025,
- "points_saved": 20,
- "points_rate": 1.9966611428442762,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02748662233352661,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:11:40.033833",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.017358541488647,
- "points_saved": 20,
- "points_rate": 1.9965343076387345,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.0254666805267334,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:11:50.050929",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 21 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016591548919678,
- "points_saved": 21,
- "points_rate": 2.0965215460208038,
- "variables_saved": 84,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.027227606092180525,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:12:00.066418",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.015993595123291,
- "points_saved": 20,
- "points_rate": 1.9968063887079404,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.026085758209228517,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:12:10.082600",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016181707382202,
- "points_saved": 20,
- "points_rate": 1.996768887016042,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02995798587799072,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:12:20.099405",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016291618347168,
- "points_saved": 20,
- "points_rate": 1.9967469760330607,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02729356288909912,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:12:30.115152",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.016260147094727,
- "points_saved": 20,
- "points_rate": 1.9967532498445655,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02628539800643921,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:12:40.132367",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.017215251922607,
- "points_saved": 20,
- "points_rate": 1.9965628667269972,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02460993528366089,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:12:50.149091",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016724824905396,
- "points_saved": 20,
- "points_rate": 1.9966606200733774,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.026575648784637453,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:13:00.170355",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
- "details": {
- "duration": 10.020750999450684,
- "points_saved": 20,
- "points_rate": 1.9958583943555086,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.2,
- "cpu_max": 0.2,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.024937188625335692,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:13:10.187701",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.01734972000122,
- "points_saved": 20,
- "points_rate": 1.9965360658285536,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.031006360054016115,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:13:20.204659",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
- "details": {
- "duration": 10.01695966720581,
- "points_saved": 20,
- "points_rate": 1.996613809425362,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.3,
- "cpu_max": 0.3,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.02824826240539551,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:13:30.220892",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016739845275879,
- "points_saved": 20,
- "points_rate": 1.9966576260271403,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.028960752487182616,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:13:40.237555",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016663312911987,
- "points_saved": 20,
- "points_rate": 1.9966728814992698,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.024840009212493897,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:13:50.254907",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.017352104187012,
- "points_saved": 20,
- "points_rate": 1.9965355906418107,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.027096426486968993,
- "csv_write_time_avg": 0.0
- }
- },
- {
- "timestamp": "2025-08-27T14:14:00.271688",
- "level": "info",
- "event_type": "performance_report",
- "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
- "details": {
- "duration": 10.016781091690063,
- "points_saved": 20,
- "points_rate": 1.9966494043273073,
- "variables_saved": 80,
- "udp_points_sent": 0,
- "points_lost": 0,
- "cpu_average": 0.0,
- "cpu_max": 0.0,
- "delay_average": 0.0,
- "delay_max": 0.0,
- "read_errors": 0,
- "csv_errors": 0,
- "udp_errors": 0,
- "read_time_avg": 0.025026535987854003,
- "csv_write_time_avg": 0.0
- }
- },
{
"timestamp": "2025-08-27T14:14:10.289240",
"level": "info",
@@ -22295,8 +19903,2095 @@
"read_time_avg": 0.025055718421936036,
"csv_write_time_avg": 0.0
}
+ },
+ {
+ "timestamp": "2025-08-28T11:33:33.372908",
+ "level": "info",
+ "event_type": "application_started",
+ "message": "Application initialization completed successfully",
+ "details": {}
+ },
+ {
+ "timestamp": "2025-08-28T11:33:33.430043",
+ "level": "info",
+ "event_type": "dataset_activated",
+ "message": "Dataset activated: DAR",
+ "details": {
+ "dataset_id": "DAR",
+ "variables_count": 5,
+ "streaming_count": 4,
+ "prefix": "dar"
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:33:33.460611",
+ "level": "info",
+ "event_type": "csv_recording_started",
+ "message": "🔥 CRITICAL PRIORITY: CSV recording started with MAXIMUM PRIORITY, async buffering, and performance monitoring: 1 datasets activated",
+ "details": {
+ "activated_datasets": 1,
+ "total_datasets": 1,
+ "priority": "CRITICAL",
+ "recording_protection": true,
+ "performance_monitoring": true,
+ "async_csv_buffering": true,
+ "csv_flush_interval": 5.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:33:34.524972",
+ "level": "info",
+ "event_type": "application_started",
+ "message": "Application initialization completed successfully",
+ "details": {}
+ },
+ {
+ "timestamp": "2025-08-28T11:33:34.580367",
+ "level": "info",
+ "event_type": "dataset_activated",
+ "message": "Dataset activated: DAR",
+ "details": {
+ "dataset_id": "DAR",
+ "variables_count": 5,
+ "streaming_count": 4,
+ "prefix": "dar"
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:33:34.607615",
+ "level": "info",
+ "event_type": "csv_recording_started",
+ "message": "🔥 CRITICAL PRIORITY: CSV recording started with MAXIMUM PRIORITY, async buffering, and performance monitoring: 1 datasets activated",
+ "details": {
+ "activated_datasets": 1,
+ "total_datasets": 1,
+ "priority": "CRITICAL",
+ "recording_protection": true,
+ "performance_monitoring": true,
+ "async_csv_buffering": true,
+ "csv_flush_interval": 5.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:33:44.571308",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 11.05330491065979,
+ "points_saved": 20,
+ "points_rate": 1.8094135791650903,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.026587748527526857,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:33:54.600105",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.028796911239624,
+ "points_saved": 20,
+ "points_rate": 1.9942571553707802,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.024851322174072266,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:34:04.641585",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 21 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.041480302810669,
+ "points_saved": 21,
+ "points_rate": 2.0913251200743757,
+ "variables_saved": 105,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.025102887834821428,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:34:14.683930",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.04234528541565,
+ "points_saved": 20,
+ "points_rate": 1.9915666541605281,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.025813543796539308,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:34:38.779501",
+ "level": "info",
+ "event_type": "application_started",
+ "message": "Application initialization completed successfully",
+ "details": {}
+ },
+ {
+ "timestamp": "2025-08-28T11:34:38.836715",
+ "level": "info",
+ "event_type": "dataset_activated",
+ "message": "Dataset activated: DAR",
+ "details": {
+ "dataset_id": "DAR",
+ "variables_count": 5,
+ "streaming_count": 4,
+ "prefix": "dar"
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:34:38.867538",
+ "level": "info",
+ "event_type": "csv_recording_started",
+ "message": "🔥 CRITICAL PRIORITY: CSV recording started with MAXIMUM PRIORITY, async buffering, and performance monitoring: 1 datasets activated",
+ "details": {
+ "activated_datasets": 1,
+ "total_datasets": 1,
+ "priority": "CRITICAL",
+ "recording_protection": true,
+ "performance_monitoring": true,
+ "async_csv_buffering": true,
+ "csv_flush_interval": 5.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:34:39.921694",
+ "level": "info",
+ "event_type": "application_started",
+ "message": "Application initialization completed successfully",
+ "details": {}
+ },
+ {
+ "timestamp": "2025-08-28T11:34:39.970775",
+ "level": "info",
+ "event_type": "dataset_activated",
+ "message": "Dataset activated: DAR",
+ "details": {
+ "dataset_id": "DAR",
+ "variables_count": 5,
+ "streaming_count": 4,
+ "prefix": "dar"
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:34:39.998379",
+ "level": "info",
+ "event_type": "csv_recording_started",
+ "message": "🔥 CRITICAL PRIORITY: CSV recording started with MAXIMUM PRIORITY, async buffering, and performance monitoring: 1 datasets activated",
+ "details": {
+ "activated_datasets": 1,
+ "total_datasets": 1,
+ "priority": "CRITICAL",
+ "recording_protection": true,
+ "performance_monitoring": true,
+ "async_csv_buffering": true,
+ "csv_flush_interval": 5.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:34:49.965979",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 11.050297737121582,
+ "points_saved": 20,
+ "points_rate": 1.8099059840544773,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.024531733989715577,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:34:59.997955",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.031975507736206,
+ "points_saved": 20,
+ "points_rate": 1.9936252819374314,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.0238170862197876,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:35:04.042699",
+ "level": "info",
+ "event_type": "plot_session_created",
+ "message": "Plot session 'DAR_Brix' created and started",
+ "details": {
+ "session_id": "DAR_1756373704042_2",
+ "variables": [
+ "HMI_Instrument.QTM306.PVFiltered",
+ "HMI_Instrument.QTM307.PVFiltered"
+ ],
+ "time_window": 60,
+ "trigger_variable": null,
+ "auto_started": true
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:35:10.027126",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 21 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.029170989990234,
+ "points_saved": 21,
+ "points_rate": 2.09389191000526,
+ "variables_saved": 105,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02757338115147182,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:35:20.059899",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 1.1% CPU",
+ "details": {
+ "duration": 10.032772541046143,
+ "points_saved": 20,
+ "points_rate": 1.9934669024116587,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 1.1,
+ "cpu_max": 1.1,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.023769295215606688,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:35:30.100655",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.040756702423096,
+ "points_saved": 20,
+ "points_rate": 1.991881746838212,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02984442710876465,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:35:40.130909",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.030253887176514,
+ "points_saved": 20,
+ "points_rate": 1.9939674733029056,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.028123116493225096,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:35:50.160629",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.029719591140747,
+ "points_saved": 20,
+ "points_rate": 1.994073694509466,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02180706262588501,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:36:00.188328",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.02769947052002,
+ "points_saved": 20,
+ "points_rate": 1.994475408721322,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.024769437313079835,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:36:10.217239",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.028911352157593,
+ "points_saved": 20,
+ "points_rate": 1.9942343987014357,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.024850332736968996,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:36:20.246284",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.02904486656189,
+ "points_saved": 20,
+ "points_rate": 1.9942078499102684,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.028755903244018555,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:36:30.284115",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.037322521209717,
+ "points_saved": 20,
+ "points_rate": 1.9925632515781273,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02550164461135864,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:36:40.313363",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.029756307601929,
+ "points_saved": 20,
+ "points_rate": 1.9940663946980695,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02613931894302368,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:36:50.345919",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.03255558013916,
+ "points_saved": 20,
+ "points_rate": 1.993510012502974,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.023859620094299316,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:37:00.374986",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.029067039489746,
+ "points_saved": 20,
+ "points_rate": 1.9942034409830358,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.027230775356292723,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:37:10.414125",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.038630962371826,
+ "points_saved": 20,
+ "points_rate": 1.9923035396924884,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.028196072578430174,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:37:20.444189",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.030572414398193,
+ "points_saved": 20,
+ "points_rate": 1.9939041535946027,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.025574612617492675,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:37:30.474272",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 1.4% CPU",
+ "details": {
+ "duration": 10.029633522033691,
+ "points_saved": 20,
+ "points_rate": 1.9940908066145007,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 1.4,
+ "cpu_max": 1.4,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.025190091133117674,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:37:40.502556",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.028733968734741,
+ "points_saved": 20,
+ "points_rate": 1.9942696717602997,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02564680576324463,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:37:50.532186",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.029629230499268,
+ "points_saved": 20,
+ "points_rate": 1.994091659857342,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.025796997547149658,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:38:00.563050",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.030356407165527,
+ "points_saved": 20,
+ "points_rate": 1.9939470930177832,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.021843528747558592,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:38:10.591666",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.029124021530151,
+ "points_saved": 20,
+ "points_rate": 1.9941921106035525,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.026372814178466798,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:38:20.620020",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.5% CPU",
+ "details": {
+ "duration": 10.028353929519653,
+ "points_saved": 20,
+ "points_rate": 1.9943452475413357,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.5,
+ "cpu_max": 0.5,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.024402165412902833,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:38:30.649625",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.0296049118042,
+ "points_saved": 20,
+ "points_rate": 1.994096494913901,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.026334893703460694,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:38:40.679725",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.030100107192993,
+ "points_saved": 20,
+ "points_rate": 1.9939980445117578,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.027379381656646728,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:38:50.709077",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 21 points saved, 0 lost, 0.9% CPU",
+ "details": {
+ "duration": 10.029351234436035,
+ "points_saved": 21,
+ "points_rate": 2.093854279217579,
+ "variables_saved": 105,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.9,
+ "cpu_max": 0.9,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02336076327732631,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:39:00.737411",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.028334856033325,
+ "points_saved": 20,
+ "points_rate": 1.9943490407051419,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02444404363632202,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:39:10.765357",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.02794599533081,
+ "points_saved": 20,
+ "points_rate": 1.9944263769781323,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.030722618103027344,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:39:20.793434",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.028076648712158,
+ "points_saved": 20,
+ "points_rate": 1.994400392080018,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.024748051166534425,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:39:30.821754",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.028319835662842,
+ "points_saved": 20,
+ "points_rate": 1.9943520278317948,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.03250187635421753,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:39:40.850869",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.5% CPU",
+ "details": {
+ "duration": 10.029114723205566,
+ "points_saved": 20,
+ "points_rate": 1.9941939594851377,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.5,
+ "cpu_max": 0.5,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.022691547870635986,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:39:50.882336",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.03146767616272,
+ "points_saved": 20,
+ "points_rate": 1.9937262069363002,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.024371254444122314,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:40:00.915797",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.03346061706543,
+ "points_saved": 20,
+ "points_rate": 1.993330194168796,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02608722448348999,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:40:10.945510",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.02971339225769,
+ "points_saved": 20,
+ "points_rate": 1.9940749269504296,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.024936223030090333,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:40:20.980724",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.035213232040405,
+ "points_saved": 20,
+ "points_rate": 1.9929820660057374,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02791149616241455,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:40:31.013217",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.032493352890015,
+ "points_saved": 20,
+ "points_rate": 1.9935223773897335,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02767869234085083,
+ "csv_write_time_avg": 4.935264587402344e-06
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:40:41.048932",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.035715103149414,
+ "points_saved": 20,
+ "points_rate": 1.992882399952106,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02478899955749512,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:40:51.085054",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
+ "details": {
+ "duration": 10.035555124282837,
+ "points_saved": 20,
+ "points_rate": 1.9929141689039593,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.3,
+ "cpu_max": 0.3,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.028175580501556396,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:41:01.115586",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.031099081039429,
+ "points_saved": 20,
+ "points_rate": 1.9937994668803118,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.024589574337005614,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:41:11.149861",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.034274578094482,
+ "points_saved": 20,
+ "points_rate": 1.9931684990623426,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.022878360748291016,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:41:36.275072",
+ "level": "info",
+ "event_type": "application_started",
+ "message": "Application initialization completed successfully",
+ "details": {}
+ },
+ {
+ "timestamp": "2025-08-28T11:41:36.339265",
+ "level": "info",
+ "event_type": "dataset_activated",
+ "message": "Dataset activated: DAR",
+ "details": {
+ "dataset_id": "DAR",
+ "variables_count": 5,
+ "streaming_count": 4,
+ "prefix": "dar"
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:41:36.374379",
+ "level": "info",
+ "event_type": "csv_recording_started",
+ "message": "🔥 CRITICAL PRIORITY: CSV recording started with MAXIMUM PRIORITY, async buffering, and performance monitoring: 1 datasets activated",
+ "details": {
+ "activated_datasets": 1,
+ "total_datasets": 1,
+ "priority": "CRITICAL",
+ "recording_protection": true,
+ "performance_monitoring": true,
+ "async_csv_buffering": true,
+ "csv_flush_interval": 5.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:41:37.430975",
+ "level": "info",
+ "event_type": "application_started",
+ "message": "Application initialization completed successfully",
+ "details": {}
+ },
+ {
+ "timestamp": "2025-08-28T11:41:37.501872",
+ "level": "info",
+ "event_type": "dataset_activated",
+ "message": "Dataset activated: DAR",
+ "details": {
+ "dataset_id": "DAR",
+ "variables_count": 5,
+ "streaming_count": 4,
+ "prefix": "dar"
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:41:37.538291",
+ "level": "info",
+ "event_type": "csv_recording_started",
+ "message": "🔥 CRITICAL PRIORITY: CSV recording started with MAXIMUM PRIORITY, async buffering, and performance monitoring: 1 datasets activated",
+ "details": {
+ "activated_datasets": 1,
+ "total_datasets": 1,
+ "priority": "CRITICAL",
+ "recording_protection": true,
+ "performance_monitoring": true,
+ "async_csv_buffering": true,
+ "csv_flush_interval": 5.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:41:47.488379",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 11.062530517578125,
+ "points_saved": 20,
+ "points_rate": 1.807904617141659,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.030272746086120607,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:41:57.525104",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.6% CPU",
+ "details": {
+ "duration": 10.036218166351318,
+ "points_saved": 20,
+ "points_rate": 1.9927825071653489,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.6,
+ "cpu_max": 0.6,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02471696138381958,
+ "csv_write_time_avg": 5.161762237548828e-06
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:42:07.560517",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 21 points saved, 0 lost, 0.6% CPU",
+ "details": {
+ "duration": 10.035918951034546,
+ "points_saved": 21,
+ "points_rate": 2.09248401690562,
+ "variables_saved": 105,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.6,
+ "cpu_max": 0.6,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.026660760243733723,
+ "csv_write_time_avg": 1.1387325468517484e-05
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:42:17.595300",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.034274339675903,
+ "points_saved": 20,
+ "points_rate": 1.9931685464208644,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.0249661922454834,
+ "csv_write_time_avg": 1.0788440704345703e-05
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:42:27.628520",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.033728837966919,
+ "points_saved": 20,
+ "points_rate": 1.9932769086126203,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02343226671218872,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:42:37.671864",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.043344497680664,
+ "points_saved": 20,
+ "points_rate": 1.9913685132097831,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.026372647285461424,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:42:47.704001",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.03213620185852,
+ "points_saved": 20,
+ "points_rate": 1.9935933481739279,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02840700149536133,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:42:57.743786",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.039785861968994,
+ "points_saved": 20,
+ "points_rate": 1.992074360446331,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.024693286418914794,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:43:07.775130",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.031343698501587,
+ "points_saved": 20,
+ "points_rate": 1.9937508474550087,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02475273609161377,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:43:17.804674",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.02954387664795,
+ "points_saved": 20,
+ "points_rate": 1.9941086300610864,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.023361611366271972,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:43:27.834490",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.029816389083862,
+ "points_saved": 20,
+ "points_rate": 1.9940544496674308,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.028212642669677733,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:43:37.863026",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.02853536605835,
+ "points_saved": 20,
+ "points_rate": 1.9943091657920602,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.026638269424438477,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:43:47.893147",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.029614448547363,
+ "points_saved": 20,
+ "points_rate": 1.9940945988104952,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.022437942028045655,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:43:57.923172",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.030456781387329,
+ "points_saved": 20,
+ "points_rate": 1.9939271397003884,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.023342883586883544,
+ "csv_write_time_avg": 2.9206275939941406e-06
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:44:07.960230",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.3% CPU",
+ "details": {
+ "duration": 10.036494255065918,
+ "points_saved": 20,
+ "points_rate": 1.9927276887450023,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.3,
+ "cpu_max": 0.3,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02336353063583374,
+ "csv_write_time_avg": 1.6689300537109375e-05
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:44:17.992125",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.032444715499878,
+ "points_saved": 20,
+ "points_rate": 1.9935320420057234,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.025166285037994385,
+ "csv_write_time_avg": 5.209445953369141e-06
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:44:28.021713",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.029677152633667,
+ "points_saved": 20,
+ "points_rate": 1.9940821320203963,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02351400852203369,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:44:47.075785",
+ "level": "info",
+ "event_type": "application_started",
+ "message": "Application initialization completed successfully",
+ "details": {}
+ },
+ {
+ "timestamp": "2025-08-28T11:44:47.137570",
+ "level": "info",
+ "event_type": "dataset_activated",
+ "message": "Dataset activated: DAR",
+ "details": {
+ "dataset_id": "DAR",
+ "variables_count": 5,
+ "streaming_count": 4,
+ "prefix": "dar"
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:44:47.184500",
+ "level": "info",
+ "event_type": "csv_recording_started",
+ "message": "🔥 CRITICAL PRIORITY: CSV recording started with MAXIMUM PRIORITY, async buffering, and performance monitoring: 1 datasets activated",
+ "details": {
+ "activated_datasets": 1,
+ "total_datasets": 1,
+ "priority": "CRITICAL",
+ "recording_protection": true,
+ "performance_monitoring": true,
+ "async_csv_buffering": true,
+ "csv_flush_interval": 5.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:44:48.263964",
+ "level": "info",
+ "event_type": "application_started",
+ "message": "Application initialization completed successfully",
+ "details": {}
+ },
+ {
+ "timestamp": "2025-08-28T11:44:48.315808",
+ "level": "info",
+ "event_type": "dataset_activated",
+ "message": "Dataset activated: DAR",
+ "details": {
+ "dataset_id": "DAR",
+ "variables_count": 5,
+ "streaming_count": 4,
+ "prefix": "dar"
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:44:48.350237",
+ "level": "info",
+ "event_type": "csv_recording_started",
+ "message": "🔥 CRITICAL PRIORITY: CSV recording started with MAXIMUM PRIORITY, async buffering, and performance monitoring: 1 datasets activated",
+ "details": {
+ "activated_datasets": 1,
+ "total_datasets": 1,
+ "priority": "CRITICAL",
+ "recording_protection": true,
+ "performance_monitoring": true,
+ "async_csv_buffering": true,
+ "csv_flush_interval": 5.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:44:58.308846",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 11.053984642028809,
+ "points_saved": 20,
+ "points_rate": 1.8093023147469538,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02687157392501831,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:45:08.344552",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 21 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.035706281661987,
+ "points_saved": 21,
+ "points_rate": 2.0925283593017077,
+ "variables_saved": 105,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.025235789162772044,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:45:18.371814",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.027262449264526,
+ "points_saved": 20,
+ "points_rate": 1.9945623345549262,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.0248296856880188,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:45:28.399483",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.027669191360474,
+ "points_saved": 20,
+ "points_rate": 1.9944814311616277,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02909252643585205,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:45:38.426081",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.026597261428833,
+ "points_saved": 20,
+ "points_rate": 1.9946946584697982,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02520465850830078,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:45:48.454113",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.028031826019287,
+ "points_saved": 20,
+ "points_rate": 1.9944093065308082,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.022002780437469484,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:45:58.481206",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.027093410491943,
+ "points_saved": 20,
+ "points_rate": 1.994595959290936,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.025601422786712645,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:46:08.512400",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.03119421005249,
+ "points_saved": 20,
+ "points_rate": 1.99378055904426,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.02338963747024536,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:46:18.539835",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.027434825897217,
+ "points_saved": 20,
+ "points_rate": 1.9945280470282665,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.023752331733703613,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:46:28.569282",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.8% CPU",
+ "details": {
+ "duration": 10.029447317123413,
+ "points_saved": 20,
+ "points_rate": 1.9941278285448218,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.8,
+ "cpu_max": 0.8,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.025089740753173828,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:46:38.605877",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.03659462928772,
+ "points_saved": 20,
+ "points_rate": 1.992707759825044,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.028610849380493165,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:46:48.633826",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.02794861793518,
+ "points_saved": 20,
+ "points_rate": 1.9944258553768028,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.025719118118286134,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:46:58.663226",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.02940058708191,
+ "points_saved": 20,
+ "points_rate": 1.9941371197956181,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.021583831310272215,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:47:05.669646",
+ "level": "info",
+ "event_type": "plot_session_created",
+ "message": "Plot session 'CTS306 Conductivimeter' created and started",
+ "details": {
+ "session_id": "CTS306_1756374425668_2",
+ "variables": [
+ "CTS306_PEW",
+ "HMI_Instrument.CTS306.PVFiltered",
+ "AUX Blink_2.0S"
+ ],
+ "time_window": 60,
+ "trigger_variable": null,
+ "auto_started": true
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:47:08.700320",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.0% CPU",
+ "details": {
+ "duration": 10.037094116210938,
+ "points_saved": 20,
+ "points_rate": 1.9926085945231844,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.0,
+ "cpu_max": 0.0,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.024063658714294434,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:47:15.826474",
+ "level": "info",
+ "event_type": "plot_session_created",
+ "message": "Plot session 'CTS306 Conductivimeter' created and started",
+ "details": {
+ "session_id": "CTS306_1756374435825_3",
+ "variables": [
+ "CTS306_PEW",
+ "HMI_Instrument.CTS306.PVFiltered",
+ "AUX Blink_2.0S"
+ ],
+ "time_window": 60,
+ "trigger_variable": null,
+ "auto_started": true
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:47:18.688433",
+ "level": "info",
+ "event_type": "plot_session_created",
+ "message": "Plot session 'CTS306 Conductivimeter' created and started",
+ "details": {
+ "session_id": "CTS306_1756374438688_4",
+ "variables": [
+ "CTS306_PEW",
+ "HMI_Instrument.CTS306.PVFiltered",
+ "AUX Blink_2.0S"
+ ],
+ "time_window": 60,
+ "trigger_variable": null,
+ "auto_started": true
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:47:18.729670",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 1.4% CPU",
+ "details": {
+ "duration": 10.02935004234314,
+ "points_saved": 20,
+ "points_rate": 1.9941471696133397,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 1.4,
+ "cpu_max": 1.4,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.0249284029006958,
+ "csv_write_time_avg": 0.0
+ }
+ },
+ {
+ "timestamp": "2025-08-28T11:47:28.771992",
+ "level": "info",
+ "event_type": "performance_report",
+ "message": "Performance report: 20 points saved, 0 lost, 0.2% CPU",
+ "details": {
+ "duration": 10.042321920394897,
+ "points_saved": 20,
+ "points_rate": 1.9915712878494871,
+ "variables_saved": 100,
+ "udp_points_sent": 0,
+ "points_lost": 0,
+ "cpu_average": 0.2,
+ "cpu_max": 0.2,
+ "delay_average": 0.0,
+ "delay_max": 0.0,
+ "read_errors": 0,
+ "csv_errors": 0,
+ "udp_errors": 0,
+ "read_time_avg": 0.025986552238464355,
+ "csv_write_time_avg": 0.0
+ }
}
],
- "last_updated": "2025-08-28T11:32:22.613789",
+ "last_updated": "2025-08-28T11:47:28.771992",
"total_entries": 1000
}
\ No newline at end of file
diff --git a/config/data/plot_variables.json b/config/data/plot_variables.json
index a4ea62c..23ab4d6 100644
--- a/config/data/plot_variables.json
+++ b/config/data/plot_variables.json
@@ -58,18 +58,25 @@
"plot_id": "DAR",
"variables": [
{
- "color": "#3498db",
- "enabled": true,
- "line_width": 2,
"variable_name": "HMI_Instrument.QTM306.PVFiltered",
- "y_axis": "left"
+ "color": "#3498db",
+ "line_width": 2,
+ "y_axis": "left",
+ "enabled": true
},
{
- "color": "#e30d4d",
- "enabled": true,
- "line_width": 2,
"variable_name": "HMI_Instrument.QTM307.PVFiltered",
- "y_axis": "left"
+ "color": "#e30d4d",
+ "line_width": 2,
+ "y_axis": "left",
+ "enabled": true
+ },
+ {
+ "variable_name": "AUX Blink_2.0S",
+ "color": "#3498db",
+ "line_width": 2,
+ "y_axis": "left",
+ "enabled": true
}
]
},
@@ -89,6 +96,13 @@
"line_width": 2,
"y_axis": "left",
"enabled": true
+ },
+ {
+ "variable_name": "AUX Blink_2.0S",
+ "color": "#a0db33",
+ "line_width": 2,
+ "y_axis": "left",
+ "enabled": true
}
]
}
diff --git a/core/config_manager.py b/core/config_manager.py
index 6a3f6c8..f048ca4 100644
--- a/core/config_manager.py
+++ b/core/config_manager.py
@@ -626,12 +626,15 @@ class ConfigManager:
# Expand symbolic variable for PLC communication
expanded_var = self._expand_symbolic_variable(var_config)
if expanded_var:
+ # Ensure the expanded variable has the proper name
+ expanded_var["name"] = var_name
expanded_variables[var_name] = expanded_var
else:
- # If expansion fails, keep the original symbolic config for counting
+ # If expansion fails, keep original symbolic config
# but mark it as non-functional for PLC communication
fallback_var = var_config.copy()
fallback_var["_expansion_failed"] = True
+ fallback_var["name"] = var_name # Ensure fallback has name
expanded_variables[var_name] = fallback_var
if self.logger:
@@ -641,8 +644,10 @@ class ConfigManager:
f"variable '{var_name}' in dataset '{dataset_id}'"
)
else:
- # Keep manual variables as they are
- expanded_variables[var_name] = var_config
+ # Keep manual variables as they are, ensure they have name
+ manual_var = var_config.copy()
+ manual_var["name"] = var_name
+ expanded_variables[var_name] = manual_var
return expanded_variables
@@ -867,14 +872,14 @@ class ConfigManager:
# Keep the configType as "symbol" for reference but make it functional
expanded_var["configType"] = "symbol"
- if self.logger:
- symbol_name = var_config.get("symbol")
- var_name = expanded_var.get("name", symbol_name)
- area = expanded_var.get("area", "unknown")
- offset = expanded_var.get("offset", "unknown")
- self.logger.info(
- f"Expanded symbolic variable '{symbol_name}' -> {var_name} ({area}:{offset})"
- )
+ # if self.logger:
+ # symbol_name = var_config.get("symbol")
+ # var_name = expanded_var.get("name", symbol_name)
+ # area = expanded_var.get("area", "unknown")
+ # offset = expanded_var.get("offset", "unknown")
+ # self.logger.info(
+ # f"Expanded symbolic variable '{symbol_name}' -> {var_name} ({area}:{offset})"
+ # )
return expanded_var
diff --git a/frontend/src/components/rjsf/VariableSelectorWidget.jsx b/frontend/src/components/rjsf/VariableSelectorWidget.jsx
index dba95ac..c7f7d3e 100644
--- a/frontend/src/components/rjsf/VariableSelectorWidget.jsx
+++ b/frontend/src/components/rjsf/VariableSelectorWidget.jsx
@@ -312,10 +312,10 @@ export function VariableSelectorWidget(props) {
📊 {selectedVariable.dataset}
- {selectedVariable.type.toUpperCase()}
+ {selectedVariable.type?.toUpperCase() || 'UNKNOWN'}
- {selectedVariable.address}
+ {selectedVariable.address || 'N/A'}
{selectedVariable.streaming && (
@@ -324,7 +324,7 @@ export function VariableSelectorWidget(props) {
)}
- PLC Address: {selectedVariable.area}{selectedVariable.db ? `${selectedVariable.db}.` : ''}{selectedVariable.offset}
+ PLC Address: {selectedVariable.area || ''}{selectedVariable.db ? `${selectedVariable.db}.` : ''}{selectedVariable.offset || ''}
{selectedVariable.streaming ? ' • Real-time streaming enabled' : ' • Static logging only'}
diff --git a/main.py b/main.py
index 109bc65..755ff2f 100644
--- a/main.py
+++ b/main.py
@@ -453,12 +453,16 @@ def get_expanded_dataset_variables():
hasattr(streamer.config_manager, "datasets")
and streamer.config_manager.datasets
):
- for dataset_id, dataset_config in streamer.config_manager.datasets.items():
- if "variables" in dataset_config and dataset_config["variables"]:
+ for dataset_id in streamer.config_manager.datasets.keys():
+ # Use proper expansion method for symbolic variables
+ expanded_vars = streamer.config_manager.get_expanded_dataset_variables(
+ dataset_id
+ )
+ if expanded_vars:
expanded_data["variables"].append(
{
"dataset_id": dataset_id,
- "variables": dataset_config["variables"],
+ "variables": expanded_vars,
}
)
diff --git a/system_state.json b/system_state.json
index ca1dcc1..7c68642 100644
--- a/system_state.json
+++ b/system_state.json
@@ -7,6 +7,6 @@
]
},
"auto_recovery_enabled": true,
- "last_update": "2025-08-28T11:31:29.749311",
+ "last_update": "2025-08-28T11:46:10.725708",
"plotjuggler_path": "C:\\Program Files\\PlotJuggler\\plotjuggler.exe"
}
\ No newline at end of file