pymscada 0.1.11b2__tar.gz → 0.1.11b4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pymscada might be problematic. Click here for more details.
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/PKG-INFO +1 -1
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/pyproject.toml +1 -1
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/checkout.py +6 -9
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/files.yaml +2 -3
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/opnotes.yaml +1 -1
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/ping.yaml +0 -3
- pymscada-0.1.11b4/src/pymscada/demo/tags.yaml +119 -0
- pymscada-0.1.11b4/src/pymscada/demo/wwwserver.yaml +80 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/module_config.py +18 -9
- pymscada-0.1.11b2/src/pymscada/demo/tags.yaml +0 -268
- pymscada-0.1.11b2/src/pymscada/demo/wwwserver.yaml +0 -273
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/LICENSE +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/README.md +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/__init__.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/__main__.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/bus_client.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/bus_server.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/config.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/console.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/README.md +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/__init__.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/accuweather.yaml +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/bus.yaml +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/history.yaml +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/logixclient.yaml +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/modbus_plc.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/modbusclient.yaml +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/modbusserver.yaml +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/openweather.yaml +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/pymscada-bus.service +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/pymscada-demo-modbus_plc.service +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/pymscada-files.service +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/pymscada-history.service +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/pymscada-io-accuweather.service +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/pymscada-io-logixclient.service +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/pymscada-io-modbusclient.service +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/pymscada-io-modbusserver.service +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/pymscada-io-ping.service +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/pymscada-io-snmpclient.service +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/pymscada-opnotes.service +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/pymscada-wwwserver.service +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/demo/snmpclient.yaml +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/files.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/history.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/iodrivers/__init__.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/iodrivers/accuweather.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/iodrivers/logix_client.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/iodrivers/logix_map.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/iodrivers/modbus_client.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/iodrivers/modbus_map.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/iodrivers/modbus_server.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/iodrivers/openweather.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/iodrivers/ping_client.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/iodrivers/ping_map.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/iodrivers/snmp_client.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/iodrivers/snmp_map.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/main.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/misc.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/opnotes.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/pdf/__init__.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/pdf/one.pdf +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/pdf/two.pdf +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/periodic.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/protocol_constants.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/samplers.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/tag.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/tools/snmp_client2.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/tools/walk.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/validate.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/src/pymscada/www_server.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/__init__.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/bus_echo.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/iodrivers/test_logix.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/iodrivers/test_modbus.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_assets/busserver.yaml +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_assets/db.sqlite +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_assets/hist_tag_0_0.dat +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_assets/hist_tag_0_10_2.dat +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_assets/hist_tag_0_15.dat +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_assets/hist_tag_0_26.dat +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_assets/hist_tag_0_50.dat +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_bus_server.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_config.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_history.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_misc.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_openweather.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_opnotes.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_periodic.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_samplers.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_tag.py +0 -0
- {pymscada-0.1.11b2 → pymscada-0.1.11b4}/tests/test_validate.py +0 -0
|
@@ -57,21 +57,18 @@ def make_config(overwrite: bool):
|
|
|
57
57
|
else:
|
|
58
58
|
continue
|
|
59
59
|
print(f'{rt} {target}')
|
|
60
|
-
|
|
61
|
-
|
|
60
|
+
rd_bytes = config_file.read_bytes()
|
|
61
|
+
if target.name.lower() != 'readme.md':
|
|
62
62
|
for k, v in PATH.items():
|
|
63
|
-
rd_bytes = rd_bytes.replace(k.encode(),str(v).encode())
|
|
64
|
-
|
|
65
|
-
else:
|
|
66
|
-
target.write_bytes(config_file.read_bytes())
|
|
63
|
+
rd_bytes = rd_bytes.replace(k.encode(), str(v).encode())
|
|
64
|
+
target.write_bytes(rd_bytes)
|
|
67
65
|
|
|
68
66
|
|
|
69
67
|
def read_with_subst(file: Path):
|
|
70
68
|
"""Read the file and replace DIR markers."""
|
|
71
69
|
rd = file.read_bytes().decode()
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
rd = rd.replace(k, str(v))
|
|
70
|
+
for k, v in PATH.items():
|
|
71
|
+
rd = rd.replace(k, str(v))
|
|
75
72
|
lines = rd.splitlines()
|
|
76
73
|
return lines
|
|
77
74
|
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
__bus__:
|
|
2
|
+
desc: Bus Server Info
|
|
3
|
+
type: str
|
|
4
|
+
__files__:
|
|
5
|
+
desc: File Server
|
|
6
|
+
type: dict
|
|
7
|
+
__history__:
|
|
8
|
+
desc: History
|
|
9
|
+
type: bytes
|
|
10
|
+
__opnotes__:
|
|
11
|
+
desc: Operator Notes
|
|
12
|
+
type: dict
|
|
13
|
+
__alarms__:
|
|
14
|
+
desc: Alarms
|
|
15
|
+
type: dict
|
|
16
|
+
IntSet:
|
|
17
|
+
desc: Integer Setpoint
|
|
18
|
+
type: int
|
|
19
|
+
min: -100
|
|
20
|
+
max: 100
|
|
21
|
+
init: 1
|
|
22
|
+
IntVal:
|
|
23
|
+
desc: Integer Value
|
|
24
|
+
type: int
|
|
25
|
+
min: -100
|
|
26
|
+
max: 100
|
|
27
|
+
init: 1
|
|
28
|
+
FloatSet:
|
|
29
|
+
desc: Float Setpoint
|
|
30
|
+
type: float
|
|
31
|
+
min: -1.e+100
|
|
32
|
+
max: 1.e+100
|
|
33
|
+
units: 'm'
|
|
34
|
+
dp: 1
|
|
35
|
+
init: 2
|
|
36
|
+
FloatVal:
|
|
37
|
+
desc: Float Value
|
|
38
|
+
type: float
|
|
39
|
+
min: -1.e+100
|
|
40
|
+
max: 1.e+100
|
|
41
|
+
units: 'm'
|
|
42
|
+
dp: 1
|
|
43
|
+
init: 2
|
|
44
|
+
MultiSet:
|
|
45
|
+
desc: Multi Setpoint
|
|
46
|
+
multi:
|
|
47
|
+
- zero
|
|
48
|
+
- one
|
|
49
|
+
- two
|
|
50
|
+
- three
|
|
51
|
+
init: 0
|
|
52
|
+
MultiVal:
|
|
53
|
+
desc: Multi Value
|
|
54
|
+
multi:
|
|
55
|
+
- zero
|
|
56
|
+
- one
|
|
57
|
+
- two
|
|
58
|
+
- three
|
|
59
|
+
init: 0
|
|
60
|
+
StringSet:
|
|
61
|
+
desc: String Setpoint
|
|
62
|
+
type: str
|
|
63
|
+
init: a string
|
|
64
|
+
StringVal:
|
|
65
|
+
desc: String Value
|
|
66
|
+
type: str
|
|
67
|
+
init: a string
|
|
68
|
+
TimeSet:
|
|
69
|
+
desc: Time Setpoint
|
|
70
|
+
type: int
|
|
71
|
+
init: 1234567890
|
|
72
|
+
format: time
|
|
73
|
+
TimeVal:
|
|
74
|
+
desc: Time Value
|
|
75
|
+
type: int
|
|
76
|
+
init: 1234567890
|
|
77
|
+
format: time
|
|
78
|
+
DateSet:
|
|
79
|
+
desc: Date Setpoint
|
|
80
|
+
type: int
|
|
81
|
+
init: 1234567890
|
|
82
|
+
format: date
|
|
83
|
+
DateVal:
|
|
84
|
+
desc: Date Value
|
|
85
|
+
type: int
|
|
86
|
+
init: 1234567890
|
|
87
|
+
format: date
|
|
88
|
+
DateTimeSet:
|
|
89
|
+
desc: Date Time Setpoint
|
|
90
|
+
type: int
|
|
91
|
+
init: 1234567890
|
|
92
|
+
format: datetime
|
|
93
|
+
DateTimeVal:
|
|
94
|
+
desc: Date Time Value
|
|
95
|
+
type: int
|
|
96
|
+
init: 1234567890
|
|
97
|
+
format: datetime
|
|
98
|
+
MultiSelect:
|
|
99
|
+
desc: Select Dict Multi
|
|
100
|
+
type: dict
|
|
101
|
+
init:
|
|
102
|
+
labels: [A, B, C, D, E, F, G, H]
|
|
103
|
+
values: [0, 1, 2, 3, 3, 4, 4, 3]
|
|
104
|
+
locks: [1, 0, 0, 0, 0, 0, 0, 1]
|
|
105
|
+
FloatSelect:
|
|
106
|
+
desc: Select Dict Float
|
|
107
|
+
type: dict
|
|
108
|
+
init:
|
|
109
|
+
labels: [Floats, For, This, Tag]
|
|
110
|
+
values: [0.1, 0.1, 0.2, 0.3]
|
|
111
|
+
locks: [0, 1, 0, 0]
|
|
112
|
+
localhost_ping:
|
|
113
|
+
desc: Ping time to localhost
|
|
114
|
+
type: int
|
|
115
|
+
units: ms
|
|
116
|
+
google_ping:
|
|
117
|
+
desc: Ping time to google
|
|
118
|
+
type: int
|
|
119
|
+
units: ms
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
bus_ip: 127.0.0.1
|
|
2
|
+
bus_port: 1324
|
|
3
|
+
ip: 0.0.0.0
|
|
4
|
+
port: 8324
|
|
5
|
+
get_path:
|
|
6
|
+
serve_path: __HOME__
|
|
7
|
+
pages:
|
|
8
|
+
- name: Notes
|
|
9
|
+
parent:
|
|
10
|
+
items:
|
|
11
|
+
- type: opnotes
|
|
12
|
+
site: [Site 1, Site 2]
|
|
13
|
+
by: [B1, B2]
|
|
14
|
+
- name: Default Main
|
|
15
|
+
parent:
|
|
16
|
+
items:
|
|
17
|
+
- {desc: Default tags, type: h1}
|
|
18
|
+
- {tagname: IntSet, type: setpoint}
|
|
19
|
+
- {tagname: IntVal, type: value}
|
|
20
|
+
- {tagname: FloatSet, type: setpoint}
|
|
21
|
+
- {tagname: FloatVal, type: value}
|
|
22
|
+
- {tagname: MultiSet, type: setpoint}
|
|
23
|
+
- {tagname: MultiVal, type: value}
|
|
24
|
+
- {tagname: StringSet, type: setpoint}
|
|
25
|
+
- {tagname: StringVal, type: value}
|
|
26
|
+
- {tagname: TimeSet, type: setpoint}
|
|
27
|
+
- {tagname: TimeVal, type: value}
|
|
28
|
+
- {tagname: DateSet, type: setpoint}
|
|
29
|
+
- {tagname: DateVal, type: value}
|
|
30
|
+
- {tagname: DateTimeSet, type: setpoint}
|
|
31
|
+
- {tagname: DateTimeVal, type: value}
|
|
32
|
+
- type: selectdict
|
|
33
|
+
tagname: MultiSelect
|
|
34
|
+
opts:
|
|
35
|
+
type: multi
|
|
36
|
+
multi:
|
|
37
|
+
- Zero
|
|
38
|
+
- One
|
|
39
|
+
- Two
|
|
40
|
+
- Three
|
|
41
|
+
- Four
|
|
42
|
+
- Five
|
|
43
|
+
- {tagname: FloatSelect, type: selectdict, opts: {type: float, dp: 2}}
|
|
44
|
+
- name: Files
|
|
45
|
+
parent:
|
|
46
|
+
items:
|
|
47
|
+
- type: files
|
|
48
|
+
- name: Ping Values
|
|
49
|
+
parent:
|
|
50
|
+
items:
|
|
51
|
+
- {desc: Default tags, type: h1}
|
|
52
|
+
- {tagname: localhost_ping, type: value}
|
|
53
|
+
- {tagname: google_ping, type: value}
|
|
54
|
+
- name: Ping Trend
|
|
55
|
+
parent:
|
|
56
|
+
items:
|
|
57
|
+
- type: uplot # Do all times in seconds, which uplot uses.
|
|
58
|
+
ms:
|
|
59
|
+
desc: Ping Trend
|
|
60
|
+
age: 172800
|
|
61
|
+
legend_pos: left
|
|
62
|
+
time_pos: left
|
|
63
|
+
time_res: m
|
|
64
|
+
axes:
|
|
65
|
+
- scale: x
|
|
66
|
+
range: [-86400, 0] # 86400 172800 1209600
|
|
67
|
+
- scale: mS
|
|
68
|
+
range: [0.0, 1.0]
|
|
69
|
+
dp: 1
|
|
70
|
+
series:
|
|
71
|
+
- tagname: localhost_ping
|
|
72
|
+
label: localhost
|
|
73
|
+
scale: mS
|
|
74
|
+
color: black
|
|
75
|
+
dp: 1
|
|
76
|
+
- tagname: google_ping
|
|
77
|
+
label: google
|
|
78
|
+
scale: mS
|
|
79
|
+
color: red
|
|
80
|
+
dp: 1
|
|
@@ -49,12 +49,14 @@ def create_module_registry():
|
|
|
49
49
|
ModuleDefinition(
|
|
50
50
|
name='files',
|
|
51
51
|
help='serve files',
|
|
52
|
-
module_class='pymscada.files:Files'
|
|
52
|
+
module_class='pymscada.files:Files',
|
|
53
|
+
tags=False
|
|
53
54
|
),
|
|
54
55
|
ModuleDefinition(
|
|
55
56
|
name='opnotes',
|
|
56
57
|
help='operator notes',
|
|
57
|
-
module_class='pymscada.opnotes:OpNotes'
|
|
58
|
+
module_class='pymscada.opnotes:OpNotes',
|
|
59
|
+
tags=False
|
|
58
60
|
),
|
|
59
61
|
ModuleDefinition(
|
|
60
62
|
name='validate',
|
|
@@ -93,37 +95,44 @@ def create_module_registry():
|
|
|
93
95
|
ModuleDefinition(
|
|
94
96
|
name='accuweatherclient',
|
|
95
97
|
help='poll weather information',
|
|
96
|
-
module_class='pymscada.iodrivers.accuweather:AccuWeatherClient'
|
|
98
|
+
module_class='pymscada.iodrivers.accuweather:AccuWeatherClient',
|
|
99
|
+
tags=False
|
|
97
100
|
),
|
|
98
101
|
ModuleDefinition(
|
|
99
102
|
name='logixclient',
|
|
100
103
|
help='poll/write to logix devices',
|
|
101
|
-
module_class='pymscada.iodrivers.logix_client:LogixClient'
|
|
104
|
+
module_class='pymscada.iodrivers.logix_client:LogixClient',
|
|
105
|
+
tags=False
|
|
102
106
|
),
|
|
103
107
|
ModuleDefinition(
|
|
104
108
|
name='modbusclient',
|
|
105
109
|
help='poll/write modbus devices',
|
|
106
|
-
module_class='pymscada.iodrivers.modbus_client:ModbusClient'
|
|
110
|
+
module_class='pymscada.iodrivers.modbus_client:ModbusClient',
|
|
111
|
+
tags=False
|
|
107
112
|
),
|
|
108
113
|
ModuleDefinition(
|
|
109
114
|
name='modbusserver',
|
|
110
115
|
help='serve modbus devices',
|
|
111
|
-
module_class='pymscada.iodrivers.modbus_server:ModbusServer'
|
|
116
|
+
module_class='pymscada.iodrivers.modbus_server:ModbusServer',
|
|
117
|
+
tags=False
|
|
112
118
|
),
|
|
113
119
|
ModuleDefinition(
|
|
114
120
|
name='openweatherclient',
|
|
115
121
|
help='poll OpenWeather current and forecast data',
|
|
116
|
-
module_class='pymscada.iodrivers.openweather:OpenWeatherClient'
|
|
122
|
+
module_class='pymscada.iodrivers.openweather:OpenWeatherClient',
|
|
123
|
+
tags=False
|
|
117
124
|
),
|
|
118
125
|
ModuleDefinition(
|
|
119
126
|
name='pingclient',
|
|
120
127
|
help='ping network devices',
|
|
121
|
-
module_class='pymscada.iodrivers.ping_client:PingClient'
|
|
128
|
+
module_class='pymscada.iodrivers.ping_client:PingClient',
|
|
129
|
+
tags=False
|
|
122
130
|
),
|
|
123
131
|
ModuleDefinition(
|
|
124
132
|
name='snmpclient',
|
|
125
133
|
help='poll SNMP devices',
|
|
126
|
-
module_class='pymscada.iodrivers.snmp_client:SnmpClient'
|
|
134
|
+
module_class='pymscada.iodrivers.snmp_client:SnmpClient',
|
|
135
|
+
tags=False
|
|
127
136
|
),
|
|
128
137
|
ModuleDefinition(
|
|
129
138
|
name='console',
|
|
@@ -1,268 +0,0 @@
|
|
|
1
|
-
__bus__:
|
|
2
|
-
desc: Bus Server Info
|
|
3
|
-
type: str
|
|
4
|
-
__files__:
|
|
5
|
-
desc: File Server
|
|
6
|
-
type: dict
|
|
7
|
-
__history__:
|
|
8
|
-
desc: History
|
|
9
|
-
type: bytes
|
|
10
|
-
__opnotes__:
|
|
11
|
-
desc: Operator Notes
|
|
12
|
-
type: dict
|
|
13
|
-
__alarms__:
|
|
14
|
-
desc: Alarms
|
|
15
|
-
type: dict
|
|
16
|
-
IntSet:
|
|
17
|
-
desc: Integer Setpoint
|
|
18
|
-
type: int
|
|
19
|
-
min: -100
|
|
20
|
-
max: 100
|
|
21
|
-
init: 1
|
|
22
|
-
IntVal:
|
|
23
|
-
desc: Integer Value
|
|
24
|
-
type: int
|
|
25
|
-
min: -100
|
|
26
|
-
max: 100
|
|
27
|
-
init: 1
|
|
28
|
-
FloatSet:
|
|
29
|
-
desc: Float Setpoint
|
|
30
|
-
type: float
|
|
31
|
-
min: -1.e+100
|
|
32
|
-
max: 1.e+100
|
|
33
|
-
units: 'm'
|
|
34
|
-
dp: 1
|
|
35
|
-
init: 2
|
|
36
|
-
FloatVal:
|
|
37
|
-
desc: Float Value
|
|
38
|
-
type: float
|
|
39
|
-
min: -1.e+100
|
|
40
|
-
max: 1.e+100
|
|
41
|
-
units: 'm'
|
|
42
|
-
dp: 1
|
|
43
|
-
init: 2
|
|
44
|
-
MultiSet:
|
|
45
|
-
desc: Multi Setpoint
|
|
46
|
-
multi:
|
|
47
|
-
- zero
|
|
48
|
-
- one
|
|
49
|
-
- two
|
|
50
|
-
- three
|
|
51
|
-
init: 0
|
|
52
|
-
MultiVal:
|
|
53
|
-
desc: Multi Value
|
|
54
|
-
multi:
|
|
55
|
-
- zero
|
|
56
|
-
- one
|
|
57
|
-
- two
|
|
58
|
-
- three
|
|
59
|
-
init: 0
|
|
60
|
-
StringSet:
|
|
61
|
-
desc: String Setpoint
|
|
62
|
-
type: str
|
|
63
|
-
init: a string
|
|
64
|
-
StringVal:
|
|
65
|
-
desc: String Value
|
|
66
|
-
type: str
|
|
67
|
-
init: a string
|
|
68
|
-
TimeSet:
|
|
69
|
-
desc: Time Setpoint
|
|
70
|
-
type: int
|
|
71
|
-
init: 1234567890
|
|
72
|
-
format: time
|
|
73
|
-
TimeVal:
|
|
74
|
-
desc: Time Value
|
|
75
|
-
type: int
|
|
76
|
-
init: 1234567890
|
|
77
|
-
format: time
|
|
78
|
-
DateSet:
|
|
79
|
-
desc: Date Setpoint
|
|
80
|
-
type: int
|
|
81
|
-
init: 1234567890
|
|
82
|
-
format: date
|
|
83
|
-
DateVal:
|
|
84
|
-
desc: Date Value
|
|
85
|
-
type: int
|
|
86
|
-
init: 1234567890
|
|
87
|
-
format: date
|
|
88
|
-
DateTimeSet:
|
|
89
|
-
desc: Date Time Setpoint
|
|
90
|
-
type: int
|
|
91
|
-
init: 1234567890
|
|
92
|
-
format: datetime
|
|
93
|
-
DateTimeVal:
|
|
94
|
-
desc: Date Time Value
|
|
95
|
-
type: int
|
|
96
|
-
init: 1234567890
|
|
97
|
-
format: datetime
|
|
98
|
-
MultiSelect:
|
|
99
|
-
desc: Select Dict Multi
|
|
100
|
-
type: dict
|
|
101
|
-
init:
|
|
102
|
-
labels: [A, B, C, D, E, F, G, H]
|
|
103
|
-
values: [0, 1, 2, 3, 3, 4, 4, 3]
|
|
104
|
-
locks: [1, 0, 0, 0, 0, 0, 0, 1]
|
|
105
|
-
FloatSelect:
|
|
106
|
-
desc: Select Dict Float
|
|
107
|
-
type: dict
|
|
108
|
-
init:
|
|
109
|
-
labels: [Floats, For, This, Tag]
|
|
110
|
-
values: [0.1, 0.1, 0.2, 0.3]
|
|
111
|
-
locks: [0, 1, 0, 0]
|
|
112
|
-
cpu_temp:
|
|
113
|
-
desc: CPU Load
|
|
114
|
-
type: float
|
|
115
|
-
min: 0
|
|
116
|
-
max: 100
|
|
117
|
-
units: '°C'
|
|
118
|
-
dp: 1
|
|
119
|
-
cpu_load:
|
|
120
|
-
desc: Float Value
|
|
121
|
-
type: float
|
|
122
|
-
min: 0
|
|
123
|
-
max: 100
|
|
124
|
-
units: '%'
|
|
125
|
-
dp: 1
|
|
126
|
-
disk_use:
|
|
127
|
-
desc: Float Value
|
|
128
|
-
type: float
|
|
129
|
-
min: 0
|
|
130
|
-
max: 100
|
|
131
|
-
units: '%'
|
|
132
|
-
dp: 1
|
|
133
|
-
sim_IntSet: # for the demo PLC sim_ tags not required
|
|
134
|
-
desc: Simulation tag
|
|
135
|
-
type: int
|
|
136
|
-
sim_IntVal:
|
|
137
|
-
desc: Simulation tag
|
|
138
|
-
type: int
|
|
139
|
-
sim_FloatSet:
|
|
140
|
-
desc: Simulation tag
|
|
141
|
-
type: float
|
|
142
|
-
sim_FloatVal:
|
|
143
|
-
desc: Simulation tag
|
|
144
|
-
type: float
|
|
145
|
-
sim_MultiSet:
|
|
146
|
-
desc: Simulation tag
|
|
147
|
-
type: int
|
|
148
|
-
sim_MultiVal:
|
|
149
|
-
desc: Simulation tag
|
|
150
|
-
type: int
|
|
151
|
-
sim_TimeSet:
|
|
152
|
-
desc: Simulation tag
|
|
153
|
-
type: int
|
|
154
|
-
sim_TimeVal:
|
|
155
|
-
desc: Simulation tag
|
|
156
|
-
type: int
|
|
157
|
-
sim_DateSet:
|
|
158
|
-
desc: Simulation tag
|
|
159
|
-
type: int
|
|
160
|
-
sim_DateVal:
|
|
161
|
-
desc: Simulation tag
|
|
162
|
-
type: int
|
|
163
|
-
sim_DateTimeSet:
|
|
164
|
-
desc: Simulation tag
|
|
165
|
-
type: int
|
|
166
|
-
sim_DateTimeVal:
|
|
167
|
-
desc: Simulation tag
|
|
168
|
-
type: int
|
|
169
|
-
Ani_Fin_20:
|
|
170
|
-
desc: 'Logix Fin[20]'
|
|
171
|
-
type: float
|
|
172
|
-
dp: 2
|
|
173
|
-
Ani_Fout_20:
|
|
174
|
-
desc: 'Logix Fout[20]'
|
|
175
|
-
type: float
|
|
176
|
-
dp: 2
|
|
177
|
-
Ani_Iin_20:
|
|
178
|
-
desc: 'Logix Iin[20]'
|
|
179
|
-
type: int
|
|
180
|
-
Ani_Iout_20:
|
|
181
|
-
desc: 'Logix Iout[20]'
|
|
182
|
-
type: int
|
|
183
|
-
Ani_Iout_21_0:
|
|
184
|
-
desc: 'Logix Iout[21].0'
|
|
185
|
-
multi:
|
|
186
|
-
- 'Off'
|
|
187
|
-
- 'On'
|
|
188
|
-
Ani_Iout_21_1:
|
|
189
|
-
desc: 'Logix Iout[21].1'
|
|
190
|
-
multi:
|
|
191
|
-
- 'Off'
|
|
192
|
-
- 'On'
|
|
193
|
-
Ani_Iin_21_0:
|
|
194
|
-
desc: 'Logix Iin[21].0'
|
|
195
|
-
multi:
|
|
196
|
-
- 'Off'
|
|
197
|
-
- 'On'
|
|
198
|
-
Ani_Iin_21_1:
|
|
199
|
-
desc: 'Logix Iin[21].1'
|
|
200
|
-
multi:
|
|
201
|
-
- 'Off'
|
|
202
|
-
- 'On'
|
|
203
|
-
InVar:
|
|
204
|
-
desc: InVar
|
|
205
|
-
type: float
|
|
206
|
-
OutVar:
|
|
207
|
-
desc: OutVar
|
|
208
|
-
type: float
|
|
209
|
-
Router_eth1_bytes_in:
|
|
210
|
-
desc: eth1 bytes in
|
|
211
|
-
type: int
|
|
212
|
-
Router_eth1_bytes_out:
|
|
213
|
-
desc: eth1 bytes out
|
|
214
|
-
type: int
|
|
215
|
-
Router_eth2_bytes_in:
|
|
216
|
-
desc: eth2 bytes in
|
|
217
|
-
type: int
|
|
218
|
-
Router_eth2_bytes_out:
|
|
219
|
-
desc: eth2 bytes out
|
|
220
|
-
type: int
|
|
221
|
-
Router_eth3_bytes_in:
|
|
222
|
-
desc: eth3 bytes in
|
|
223
|
-
type: int
|
|
224
|
-
Router_eth3_bytes_out:
|
|
225
|
-
desc: eth3 bytes out
|
|
226
|
-
type: int
|
|
227
|
-
Router_eth4_bytes_in:
|
|
228
|
-
desc: eth4 bytes in
|
|
229
|
-
type: int
|
|
230
|
-
Router_eth4_bytes_out:
|
|
231
|
-
desc: eth4 bytes out
|
|
232
|
-
type: int
|
|
233
|
-
Router_eth5_bytes_in:
|
|
234
|
-
desc: eth5 bytes in
|
|
235
|
-
type: int
|
|
236
|
-
Router_eth5_bytes_out:
|
|
237
|
-
desc: eth5 bytes out
|
|
238
|
-
type: int
|
|
239
|
-
Router_eth6_bytes_in:
|
|
240
|
-
desc: eth6 bytes in
|
|
241
|
-
type: int
|
|
242
|
-
Router_eth6_bytes_out:
|
|
243
|
-
desc: eth6 bytes out
|
|
244
|
-
type: int
|
|
245
|
-
Router_eth7_bytes_in:
|
|
246
|
-
desc: eth7 bytes in
|
|
247
|
-
type: int
|
|
248
|
-
Router_eth7_bytes_out:
|
|
249
|
-
desc: eth7 bytes out
|
|
250
|
-
type: int
|
|
251
|
-
Router_eth8_bytes_in:
|
|
252
|
-
desc: eth8 bytes in
|
|
253
|
-
type: int
|
|
254
|
-
Router_eth8_bytes_out:
|
|
255
|
-
desc: eth8 bytes out
|
|
256
|
-
type: int
|
|
257
|
-
localhost_ping:
|
|
258
|
-
desc: Ping time to localhost
|
|
259
|
-
type: int
|
|
260
|
-
units: ms
|
|
261
|
-
google_ping:
|
|
262
|
-
desc: Ping time to google
|
|
263
|
-
type: int
|
|
264
|
-
units: ms
|
|
265
|
-
electronet_ping:
|
|
266
|
-
desc: Ping time to electronet
|
|
267
|
-
type: int
|
|
268
|
-
units: ms
|
|
@@ -1,273 +0,0 @@
|
|
|
1
|
-
bus_ip: 127.0.0.1
|
|
2
|
-
bus_port: 1324
|
|
3
|
-
ip: 0.0.0.0
|
|
4
|
-
port: 8324
|
|
5
|
-
get_path: __HOME__/angmscada/dist/angmscada
|
|
6
|
-
serve_path: __HOME__/pymscada
|
|
7
|
-
pages:
|
|
8
|
-
- name: Notes
|
|
9
|
-
parent:
|
|
10
|
-
items:
|
|
11
|
-
- type: opnote
|
|
12
|
-
site: [Site 1, Site 2]
|
|
13
|
-
by: [B1, B2]
|
|
14
|
-
- name: Default Main
|
|
15
|
-
parent:
|
|
16
|
-
items:
|
|
17
|
-
- {desc: Default tags, type: h1}
|
|
18
|
-
- {tagname: IntSet, type: setpoint}
|
|
19
|
-
- {tagname: IntVal, type: value}
|
|
20
|
-
- {tagname: FloatSet, type: setpoint}
|
|
21
|
-
- {tagname: FloatVal, type: value}
|
|
22
|
-
- {tagname: MultiSet, type: setpoint}
|
|
23
|
-
- {tagname: MultiVal, type: value}
|
|
24
|
-
- {tagname: StringSet, type: setpoint}
|
|
25
|
-
- {tagname: StringVal, type: value}
|
|
26
|
-
- {tagname: TimeSet, type: setpoint}
|
|
27
|
-
- {tagname: TimeVal, type: value}
|
|
28
|
-
- {tagname: DateSet, type: setpoint}
|
|
29
|
-
- {tagname: DateVal, type: value}
|
|
30
|
-
- {tagname: DateTimeSet, type: setpoint}
|
|
31
|
-
- {tagname: DateTimeVal, type: value}
|
|
32
|
-
- type: selectdict
|
|
33
|
-
tagname: MultiSelect
|
|
34
|
-
opts:
|
|
35
|
-
type: multi
|
|
36
|
-
multi:
|
|
37
|
-
- Zero
|
|
38
|
-
- One
|
|
39
|
-
- Two
|
|
40
|
-
- Three
|
|
41
|
-
- Four
|
|
42
|
-
- Five
|
|
43
|
-
- {tagname: FloatSelect, type: selectdict, opts: {type: float, dp: 2}}
|
|
44
|
-
- name: Trends
|
|
45
|
-
parent: Dropdown
|
|
46
|
-
items:
|
|
47
|
-
- type: uplot # Do all times in seconds, which uplot uses.
|
|
48
|
-
ms:
|
|
49
|
-
desc: Sample Trend
|
|
50
|
-
age: 172800
|
|
51
|
-
legend_pos: left
|
|
52
|
-
time_pos: left
|
|
53
|
-
time_res: m
|
|
54
|
-
axes:
|
|
55
|
-
- scale: x
|
|
56
|
-
range: [-86400, 0] # 86400 172800 1209600
|
|
57
|
-
- scale: '°C'
|
|
58
|
-
range: [0.0, 100.0]
|
|
59
|
-
dp: 1
|
|
60
|
-
- scale: '%'
|
|
61
|
-
range: [0.0, 100.0]
|
|
62
|
-
dp: 1
|
|
63
|
-
# side: 1
|
|
64
|
-
# bands: # TODO
|
|
65
|
-
# - series: [I_Transpower_Limit_Hi, I_Transpower_Limit_Lo]
|
|
66
|
-
# fill: [red, 0.2]
|
|
67
|
-
# dir: -1
|
|
68
|
-
series:
|
|
69
|
-
- tagname: cpu_load
|
|
70
|
-
label: CPU Load
|
|
71
|
-
scale: '%'
|
|
72
|
-
color: black
|
|
73
|
-
width: 1.5
|
|
74
|
-
dp: 1
|
|
75
|
-
- tagname: disk_use
|
|
76
|
-
label: Disk Use
|
|
77
|
-
scale: '%'
|
|
78
|
-
color: blue
|
|
79
|
-
width: 1
|
|
80
|
-
dp: 1
|
|
81
|
-
- tagname: cpu_temp
|
|
82
|
-
label: CPU Temp
|
|
83
|
-
scale: '°C'
|
|
84
|
-
color: red
|
|
85
|
-
width: 1
|
|
86
|
-
dp: 1
|
|
87
|
-
- name: Files
|
|
88
|
-
parent: Dropdown
|
|
89
|
-
items:
|
|
90
|
-
- type: files
|
|
91
|
-
- name: Logix
|
|
92
|
-
items:
|
|
93
|
-
- {tagname: Ani_Fin_20, type: setpoint}
|
|
94
|
-
- {tagname: Ani_Fout_20, type: value}
|
|
95
|
-
- {tagname: Ani_Iin_20, type: setpoint}
|
|
96
|
-
- {tagname: Ani_Iout_20, type: value}
|
|
97
|
-
- {tagname: InVar, type: setpoint}
|
|
98
|
-
- {tagname: OutVar, type: value}
|
|
99
|
-
- {tagname: Ani_Iin_21_0, type: setpoint}
|
|
100
|
-
- {tagname: Ani_Iout_21_0, type: value}
|
|
101
|
-
- {tagname: Ani_Iin_21_1, type: setpoint}
|
|
102
|
-
- {tagname: Ani_Iout_21_1, type: value}
|
|
103
|
-
- name: Values
|
|
104
|
-
parent: SNMP
|
|
105
|
-
items:
|
|
106
|
-
- {tagname: Router_eth1_bytes_in, type: value}
|
|
107
|
-
- {tagname: Router_eth1_bytes_out, type: value}
|
|
108
|
-
- {tagname: Router_eth2_bytes_in, type: value}
|
|
109
|
-
- {tagname: Router_eth2_bytes_out, type: value}
|
|
110
|
-
- {tagname: Router_eth3_bytes_in, type: value}
|
|
111
|
-
- {tagname: Router_eth3_bytes_out, type: value}
|
|
112
|
-
- {tagname: Router_eth4_bytes_in, type: value}
|
|
113
|
-
- {tagname: Router_eth4_bytes_out, type: value}
|
|
114
|
-
- {tagname: Router_eth5_bytes_in, type: value}
|
|
115
|
-
- {tagname: Router_eth5_bytes_out, type: value}
|
|
116
|
-
- {tagname: Router_eth6_bytes_in, type: value}
|
|
117
|
-
- {tagname: Router_eth6_bytes_out, type: value}
|
|
118
|
-
- {tagname: Router_eth7_bytes_in, type: value}
|
|
119
|
-
- {tagname: Router_eth7_bytes_out, type: value}
|
|
120
|
-
- {tagname: Router_eth8_bytes_in, type: value}
|
|
121
|
-
- {tagname: Router_eth8_bytes_out, type: value}
|
|
122
|
-
- name: Trend
|
|
123
|
-
parent: SNMP
|
|
124
|
-
items:
|
|
125
|
-
- type: uplot # Do all times in seconds, which uplot uses.
|
|
126
|
-
ms:
|
|
127
|
-
desc: Bytes
|
|
128
|
-
age: 172800
|
|
129
|
-
legend_pos: left
|
|
130
|
-
time_pos: left
|
|
131
|
-
time_res: m
|
|
132
|
-
axes:
|
|
133
|
-
- scale: x
|
|
134
|
-
range: [-86400, 0]
|
|
135
|
-
- scale: 'bytes'
|
|
136
|
-
range: [0, 100000]
|
|
137
|
-
dp: 0
|
|
138
|
-
series:
|
|
139
|
-
- tagname: Router_eth1_bytes_in
|
|
140
|
-
label: eth1 in
|
|
141
|
-
scale: 'bytes'
|
|
142
|
-
color: violet
|
|
143
|
-
width: 1
|
|
144
|
-
dp: 0
|
|
145
|
-
- tagname: Router_eth1_bytes_out
|
|
146
|
-
label: eth1 out
|
|
147
|
-
scale: 'bytes'
|
|
148
|
-
color: violet
|
|
149
|
-
width: 0.5
|
|
150
|
-
dp: 0
|
|
151
|
-
- tagname: Router_eth2_bytes_in
|
|
152
|
-
label: eth2 in
|
|
153
|
-
scale: 'bytes'
|
|
154
|
-
color: blue
|
|
155
|
-
width: 1
|
|
156
|
-
dp: 0
|
|
157
|
-
- tagname: Router_eth2_bytes_out
|
|
158
|
-
label: eth2 out
|
|
159
|
-
scale: 'bytes'
|
|
160
|
-
color: blue
|
|
161
|
-
width: 0.5
|
|
162
|
-
dp: 0
|
|
163
|
-
- tagname: Router_eth3_bytes_in
|
|
164
|
-
label: eth3 in
|
|
165
|
-
scale: 'bytes'
|
|
166
|
-
color: green
|
|
167
|
-
width: 1
|
|
168
|
-
dp: 0
|
|
169
|
-
- tagname: Router_eth3_bytes_out
|
|
170
|
-
label: eth3 out
|
|
171
|
-
scale: 'bytes'
|
|
172
|
-
color: green
|
|
173
|
-
width: 0.5
|
|
174
|
-
dp: 0
|
|
175
|
-
- tagname: Router_eth4_bytes_in
|
|
176
|
-
label: eth4 in
|
|
177
|
-
scale: 'bytes'
|
|
178
|
-
color: gray
|
|
179
|
-
width: 1
|
|
180
|
-
dp: 0
|
|
181
|
-
- tagname: Router_eth4_bytes_out
|
|
182
|
-
label: eth4 out
|
|
183
|
-
scale: 'bytes'
|
|
184
|
-
color: gray
|
|
185
|
-
width: 0.5
|
|
186
|
-
dp: 0
|
|
187
|
-
- tagname: Router_eth5_bytes_in
|
|
188
|
-
label: eth5 in
|
|
189
|
-
scale: 'bytes'
|
|
190
|
-
color: goldenrod
|
|
191
|
-
width: 1
|
|
192
|
-
dp: 0
|
|
193
|
-
- tagname: Router_eth5_bytes_out
|
|
194
|
-
label: eth5 out
|
|
195
|
-
scale: 'bytes'
|
|
196
|
-
color: goldenrod
|
|
197
|
-
width: 0.5
|
|
198
|
-
dp: 0
|
|
199
|
-
- tagname: Router_eth6_bytes_in
|
|
200
|
-
label: eth6 in
|
|
201
|
-
scale: 'bytes'
|
|
202
|
-
color: brown
|
|
203
|
-
width: 1
|
|
204
|
-
dp: 0
|
|
205
|
-
- tagname: Router_eth6_bytes_out
|
|
206
|
-
label: eth6 out
|
|
207
|
-
scale: 'bytes'
|
|
208
|
-
color: brown
|
|
209
|
-
width: 0.5
|
|
210
|
-
dp: 0
|
|
211
|
-
- tagname: Router_eth7_bytes_in
|
|
212
|
-
label: eth7 in
|
|
213
|
-
scale: 'bytes'
|
|
214
|
-
color: orange
|
|
215
|
-
width: 1
|
|
216
|
-
dp: 0
|
|
217
|
-
- tagname: Router_eth7_bytes_out
|
|
218
|
-
label: eth7 out
|
|
219
|
-
scale: 'bytes'
|
|
220
|
-
color: orange
|
|
221
|
-
width: 0.5
|
|
222
|
-
dp: 0
|
|
223
|
-
- tagname: Router_eth8_bytes_in
|
|
224
|
-
label: eth8 in
|
|
225
|
-
scale: 'bytes'
|
|
226
|
-
color: aqua
|
|
227
|
-
width: 1
|
|
228
|
-
dp: 0
|
|
229
|
-
- tagname: Router_eth8_bytes_out
|
|
230
|
-
label: eth8 out
|
|
231
|
-
scale: 'bytes'
|
|
232
|
-
color: aqua
|
|
233
|
-
width: 0.5
|
|
234
|
-
dp: 0
|
|
235
|
-
- name: Ping Values
|
|
236
|
-
parent: Ping
|
|
237
|
-
items:
|
|
238
|
-
- {desc: Default tags, type: h1}
|
|
239
|
-
- {tagname: localhost_ping, type: value}
|
|
240
|
-
- {tagname: google_ping, type: value}
|
|
241
|
-
- {tagname: electronet_ping, type: value}
|
|
242
|
-
- name: Ping Trend
|
|
243
|
-
parent: Ping
|
|
244
|
-
items:
|
|
245
|
-
- type: uplot # Do all times in seconds, which uplot uses.
|
|
246
|
-
ms:
|
|
247
|
-
desc: Ping Trend
|
|
248
|
-
age: 172800
|
|
249
|
-
legend_pos: left
|
|
250
|
-
time_pos: left
|
|
251
|
-
time_res: m
|
|
252
|
-
axes:
|
|
253
|
-
- scale: x
|
|
254
|
-
range: [-86400, 0] # 86400 172800 1209600
|
|
255
|
-
- scale: mS
|
|
256
|
-
range: [0.0, 1.0]
|
|
257
|
-
dp: 1
|
|
258
|
-
series:
|
|
259
|
-
- tagname: localhost_ping
|
|
260
|
-
label: localhost
|
|
261
|
-
scale: mS
|
|
262
|
-
color: black
|
|
263
|
-
dp: 1
|
|
264
|
-
- tagname: electronet_ping
|
|
265
|
-
label: electronet
|
|
266
|
-
scale: mS
|
|
267
|
-
color: blue
|
|
268
|
-
dp: 1
|
|
269
|
-
- tagname: google_ping
|
|
270
|
-
label: google
|
|
271
|
-
scale: mS
|
|
272
|
-
color: red
|
|
273
|
-
dp: 1
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|