Skip to content

Commit b62b5d8

Browse files
committed
Version 0.30.
1 parent ca62e3c commit b62b5d8

11 files changed

+103
-18
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ To provide an easy to use, fully-featured, scalable, and portable SCADA/IIoT-I4.
4848
* MongoDB as the real-time core database, persistence layer, config store, SOE historian.
4949
* Event-based realtime async data processing with MongoDB Change Streams.
5050
* Portability and modular interoperability over Linux, Windows, Mac OSX, x86/64, ARM.
51-
* Windows installer available in the [releases section](https://github.com/riclolsen/json-scada/releases/tag/V0.29-alpha).
51+
* Windows installer available in the [releases section](https://github.com/riclolsen/json-scada/releases/tag/V0.30-alpha).
5252
* Unlimited tags, servers, and users.
5353
* Horizontal scalability, from a single computer to big clusters (MongoDB-sharding), Docker containers, VMs, Kubernetes, cloud, or hybrid deployments.
5454
* Modular distributed architecture. Lightweight redundant data acquisition nodes can connect securely over TLS to the database server. E.g. a Raspberry PI can be a data acquisition node.
@@ -83,7 +83,7 @@ To provide an easy to use, fully-featured, scalable, and portable SCADA/IIoT-I4.
8383
## Documentation
8484

8585
* [Install Guide](https://github.com/riclolsen/json-scada/blob/master/docs/install.md)
86-
* [Windows installer](https://github.com/riclolsen/json-scada/releases/tag/V0.29-alpha)
86+
* [Windows installer](https://github.com/riclolsen/json-scada/releases/tag/V0.30-alpha)
8787
* [Docker Demo](https://github.com/riclolsen/json-scada/blob/master/demo-docker/README.md)
8888
* [Schema Documentation](https://github.com/riclolsen/json-scada/blob/master/docs/schema.md)
8989
* [Config File](https://github.com/riclolsen/json-scada/blob/master/conf/README.md)

index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ To provide an easy to use, fully-featured, scalable, and portable SCADA/IIoT-I4.
4848
* MongoDB as the real-time core database, persistence layer, config store, SOE historian.
4949
* Event-based realtime async data processing with MongoDB Change Streams.
5050
* Portability and modular interoperability over Linux, Windows, Mac OSX, x86/64, ARM.
51-
* Windows installer available in the [releases section](https://github.com/riclolsen/json-scada/releases/tag/V0.29-alpha).
51+
* Windows installer available in the [releases section](https://github.com/riclolsen/json-scada/releases/tag/V0.30-alpha).
5252
* Unlimited tags, servers, and users.
5353
* Horizontal scalability, from a single computer to big clusters (MongoDB-sharding), Docker containers, VMs, Kubernetes, cloud, or hybrid deployments.
5454
* Modular distributed architecture. Lightweight redundant data acquisition nodes can connect securely over TLS to the database server. E.g. a Raspberry PI can be a data acquisition node.
@@ -83,7 +83,7 @@ To provide an easy to use, fully-featured, scalable, and portable SCADA/IIoT-I4.
8383
## Documentation
8484

8585
* [Install Guide](docs/install.md)
86-
* [Windows installer](https://github.com/riclolsen/json-scada/releases/tag/V0.29-alpha)
86+
* [Windows installer](https://github.com/riclolsen/json-scada/releases/tag/V0.30-alpha)
8787
* [Docker Demo](demo-docker/README.md)
8888
* [Schema Documentation](docs/schema.md)
8989
* [Config File](conf/README.md)

platform-windows/build.bat

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@ cd \json-scada\src\libplctag\libplctag.NET\src\libplctag
4747
dotnet build --no-self-contained --runtime win-x64 -c Release -o ..\..\bin\
4848
cd \json-scada\src\libplctag\PLCTagsClient
4949
dotnet publish --no-self-contained --runtime win-x64 -p:PublishReadyToRun=true -c Release -o ..\..\..\bin\ PLCTagsClient.csproj
50+
cd \json-scada\src\logrotate\
51+
dotnet publish --no-self-contained --runtime win-x64 -p:PublishReadyToRun=true -c Release -o ..\..\bin\ logrotate.csproj
5052

5153
go env -w GO111MODULE=auto
5254
set GOBIN=c:\json-scada\bin

platform-windows/buildupd.bat

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,15 @@ dotnet publish --no-self-contained --runtime win-x64 -p:PublishReadyToRun=true -
4040
cd \json-scada\src\dnp3\Dnp3Client\
4141
dotnet publish --no-self-contained --runtime win-x64 -p:PublishReadyToRun=true -c Release -o ..\..\..\bin\ Dnp3Client.csproj
4242
cd \json-scada\src\OPC-UA-Client\
43+
rmdir obj /S /Q
44+
rmdir bin /S /Q
4345
dotnet publish --no-self-contained --runtime win-x64 -p:PublishReadyToRun=true -c Release -o ..\..\bin\ OPC-UA-Client.csproj
4446
cd \json-scada\src\libplctag\libplctag.NET\src\libplctag
4547
dotnet build --no-self-contained --runtime win-x64 -c Release -o ..\..\bin\
4648
cd \json-scada\src\libplctag\PLCTagsClient
4749
dotnet publish --no-self-contained --runtime win-x64 -p:PublishReadyToRun=true -c Release -o ..\..\..\bin\ PLCTagsClient.csproj
50+
cd \json-scada\src\logrotate\
51+
dotnet publish --no-self-contained --runtime win-x64 -p:PublishReadyToRun=true -c Release -o ..\..\bin\ logrotate.csproj
4852

4953
go env -w GO111MODULE=auto
5054
set GOBIN=c:\json-scada\bin

platform-windows/create_services.bat

Lines changed: 59 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,23 @@ nssm set JSON_SCADA_mongodb Start SERVICE_AUTO_START
2626
nssm install JSON_SCADA_calculations "C:\json-scada\bin\calculations.exe" 1 1 2.0 "c:\json-scada\conf\json-scada.json"
2727
REM STDOUT logging
2828
nssm set JSON_SCADA_calculations AppStdout C:\json-scada\log\calculations.log
29+
nssm set JSON_SCADA_calculations AppRotateOnline 1
30+
nssm set JSON_SCADA_calculations AppRotateBytes 10000000
2931
nssm set JSON_SCADA_calculations Start SERVICE_AUTO_START
3032
REM See log rotation options https://nssm.cc/usage#io
3133

3234
nssm install JSON_SCADA_cs_data_processor "C:\json-scada\platform-windows\nodejs-runtime\node.exe" "C:\json-scada\src\cs_data_processor\cs_data_processor.js" 1 1 "c:\json-scada\conf\json-scada.json"
3335
nssm set JSON_SCADA_cs_data_processor AppDirectory "C:\json-scada\src\cs_data_processor"
36+
nssm set JSON_SCADA_cs_data_processor AppStdout C:\json-scada\log\cs_data_processor.log
37+
nssm set JSON_SCADA_cs_data_processor AppRotateOnline 1
38+
nssm set JSON_SCADA_cs_data_processor AppRotateBytes 10000000
3439
nssm set JSON_SCADA_cs_data_processor Start SERVICE_AUTO_START
3540

3641
nssm install JSON_SCADA_cs_custom_processor "C:\json-scada\platform-windows\nodejs-runtime\node.exe" "C:\json-scada\src\cs_custom_processor\cs_custom_processor.js" 1 1 "c:\json-scada\conf\json-scada.json"
3742
nssm set JSON_SCADA_cs_custom_processor AppDirectory "C:\json-scada\src\cs_custom_processor"
43+
nssm set JSON_SCADA_cs_custom_processor AppStdout C:\json-scada\log\cs_custom_processor.log
44+
nssm set JSON_SCADA_cs_custom_processor AppRotateOnline 1
45+
nssm set JSON_SCADA_cs_custom_processor AppRotateBytes 10000000
3846
nssm set JSON_SCADA_cs_custom_processor Start SERVICE_AUTO_START
3947

4048

@@ -61,6 +69,10 @@ nssm install JSON_SCADA_server_realtime_auth "C:\json-scada\platform-windows\no
6169
nssm set JSON_SCADA_server_realtime_auth AppDirectory "C:\json-scada\src\server_realtime_auth"
6270
nssm set JSON_SCADA_server_realtime_auth Start SERVICE_AUTO_START
6371
nssm set JSON_SCADA_server_realtime_auth AppEnvironmentExtra JS_JWT_SECRET=%buffer%
72+
nssm set JSON_SCADA_server_realtime_auth AppStdout C:\json-scada\log\server_realtime_auth.log
73+
nssm set JSON_SCADA_server_realtime_auth AppRotateOnline 1
74+
nssm set JSON_SCADA_server_realtime_auth AppRotateBytes 10000000
75+
6476
rem Use environment variables to connect (for reading) to PostgreSQL historian (https://www.postgresql.org/docs/current/libpq-envars.html)
6577
rem nssm set JSON_SCADA_server_realtime_auth AppEnvironmentExtra PGHOSTADDR=127.0.0.1 PGPORT=5432 PGDATABASE=json_scada PGUSER=json_scada PGPASSWORD=json_scada
6678

@@ -70,6 +82,9 @@ nssm set JSON_SCADA_demo_simul Start SERVICE_DEMAND_START
7082

7183
nssm install JSON_SCADA_alarm_beep "C:\json-scada\platform-windows\nodejs-runtime\node.exe" "C:\json-scada\src\alarm_beep\alarm_beep.js"
7284
nssm set JSON_SCADA_alarm_beep AppDirectory "C:\json-scada\src\alarm_beep"
85+
nssm set JSON_SCADA_alarm_beep_auth AppStdout C:\json-scada\log\alarm_beep.log
86+
nssm set JSON_SCADA_alarm_beep AppRotateOnline 1
87+
nssm set JSON_SCADA_alarm_beep AppRotateBytes 10000000
7388
nssm set JSON_SCADA_alarm_beep Start SERVICE_AUTO_START
7489

7590
rem WARNING! This service has no security access control, use with care.
@@ -104,49 +119,88 @@ nssm set JSON_SCADA_nginx Start SERVICE_AUTO_START
104119

105120
REM SELECT THE DESIRED PROTOCOL DRIVERS (service startup options: SERVICE_AUTO_START, SERVICE_DELAYED_AUTO_START, SERVICE_DEMAND_START, SERVICE_DISABLED)
106121

107-
nssm install JSON_SCADA_mqttsparkplugclient "C:\json-scada\platform-windows\nodejs-runtime\node.exe" "C:\json-scada\src\mqtt-sparkplug\index.js"
122+
nssm install JSON_SCADA_mqttsparkplugclient "C:\json-scada\platform-windows\nodejs-runtime\node.exe" "C:\json-scada\src\mqtt-sparkplug\index.js" 1 2
108123
nssm set JSON_SCADA_mqttsparkplugclient AppDirectory "C:\json-scada\src\mqtt-sparkplug"
124+
nssm set JSON_SCADA_mqttsparkplugclient AppStdout C:\json-scada\log\mqttsparkplugclient.log
125+
nssm set JSON_SCADA_mqttsparkplugclient AppRotateOnline 1
126+
nssm set JSON_SCADA_mqttsparkplugclient AppRotateBytes 10000000
109127
nssm set JSON_SCADA_mqttsparkplugclient Start SERVICE_DELAYED_AUTO_START
110128

111-
nssm install JSON_SCADA_iec104client "C:\json-scada\bin\iec104client.exe" 1 1
129+
nssm install JSON_SCADA_iec104client "C:\json-scada\bin\iec104client.exe" 1 2
130+
nssm set JSON_SCADA_iec104client AppStdout C:\json-scada\log\iec104client.log
131+
nssm set JSON_SCADA_iec104client AppRotateOnline 1
132+
nssm set JSON_SCADA_iec104client AppRotateBytes 10000000
112133
nssm set JSON_SCADA_iec104client Start SERVICE_DELAYED_AUTO_START
113134

114135
nssm install JSON_SCADA_iec104server "C:\json-scada\bin\iec104server.exe" 1 1
136+
nssm set JSON_SCADA_iec104server AppStdout C:\json-scada\log\iec104server.log
137+
nssm set JSON_SCADA_iec104server AppRotateOnline 1
138+
nssm set JSON_SCADA_iec104server AppRotateBytes 10000000
115139
nssm set JSON_SCADA_iec104server Start SERVICE_DEMAND_START
116140

117141
nssm install JSON_SCADA_iec101client "C:\json-scada\bin\iec101client.exe" 1 1
142+
nssm set JSON_SCADA_iec101client AppStdout C:\json-scada\log\iec101client.log
143+
nssm set JSON_SCADA_iec101client AppRotateOnline 1
144+
nssm set JSON_SCADA_iec101client AppRotateBytes 10000000
118145
nssm set JSON_SCADA_iec101client Start SERVICE_DEMAND_START
119146

120147
nssm install JSON_SCADA_iec101server "C:\json-scada\bin\iec101server.exe" 1 1
148+
nssm set JSON_SCADA_iec101server AppStdout C:\json-scada\log\iec101server.log
149+
nssm set JSON_SCADA_iec101server AppRotateOnline 1
150+
nssm set JSON_SCADA_iec101server AppRotateBytes 10000000
121151
nssm set JSON_SCADA_iec101server Start SERVICE_DEMAND_START
122152

123-
nssm install JSON_SCADA_dnp3client "C:\json-scada\bin\Dnp3Client.exe" 1 1
153+
nssm install JSON_SCADA_dnp3client "C:\json-scada\bin\Dnp3Client.exe" 1 2
154+
nssm set JSON_SCADA_dnp3client AppStdout C:\json-scada\log\dnp3client.log
155+
nssm set JSON_SCADA_dnp3client AppRotateOnline 1
156+
nssm set JSON_SCADA_dnp3client AppRotateBytes 10000000
124157
nssm set JSON_SCADA_dnp3client Start SERVICE_DEMAND_START
125158

126-
nssm install JSON_SCADA_opcuaclient "C:\json-scada\bin\OPC-UA-Client.exe" 1 1
159+
nssm install JSON_SCADA_opcuaclient "C:\json-scada\bin\OPC-UA-Client.exe" 1 2
160+
nssm set JSON_SCADA_opcuaclient AppStdout C:\json-scada\log\opcuaclient.log
161+
nssm set JSON_SCADA_opcuaclient AppRotateOnline 1
162+
nssm set JSON_SCADA_opcuaclient AppRotateBytes 10000000
127163
nssm set JSON_SCADA_opcuaclient Start SERVICE_DEMAND_START
128164

129-
nssm install JSON_SCADA_iec61850client "C:\json-scada\bin\iec61850_client.exe" 1 1
165+
nssm install JSON_SCADA_iec61850client "C:\json-scada\bin\iec61850_client.exe" 1 2
166+
nssm set JSON_SCADA_iec61850client AppStdout C:\json-scada\log\iec61850client.log
167+
nssm set JSON_SCADA_iec61850client AppRotateOnline 1
168+
nssm set JSON_SCADA_iec61850client AppRotateBytes 10000000
130169
nssm set JSON_SCADA_iec61850client Start SERVICE_DEMAND_START
131170

132171
nssm install JSON_SCADA_i104m "C:\json-scada\bin\i104m.exe" 1 1
172+
nssm set JSON_SCADA_i104m AppStdout C:\json-scada\log\i104m.log
173+
nssm set JSON_SCADA_i104m AppRotateOnline 1
174+
nssm set JSON_SCADA_i104m AppRotateBytes 10000000
133175
nssm set JSON_SCADA_i104m Start SERVICE_DEMAND_START
134176

135177
nssm install JSON_SCADA_plctags "C:\json-scada\bin\PLCTagsClient.exe" 1 1
178+
nssm set JSON_SCADA_plctags AppStdout C:\json-scada\log\plctags.log
179+
nssm set JSON_SCADA_plctags AppRotateOnline 1
180+
nssm set JSON_SCADA_plctags AppRotateBytes 10000000
136181
nssm set JSON_SCADA_plctags Start SERVICE_DEMAND_START
137182

138183
REM service for OPC-UA Server
139184
nssm install JSON_SCADA_opcuaserver "C:\json-scada\platform-windows\nodejs-runtime\node.exe" "C:\json-scada\src\OPC-UA-Server\index.js" 1 1 "c:\json-scada\conf\json-scada.json"
140185
nssm set JSON_SCADA_opcuaserver AppDirectory "C:\json-scada\src\OPC-UA-Server"
186+
nssm set JSON_SCADA_opcuaserver AppStdout C:\json-scada\log\opcuaserver.log
187+
nssm set JSON_SCADA_opcuaserver AppRotateOnline 1
188+
nssm set JSON_SCADA_opcuaserver AppRotateBytes 10000000
141189
nssm set JSON_SCADA_opcuaserver Start SERVICE_DEMAND_START
142190

143191
REM service for telegraf listener
144192
nssm install JSON_SCADA_telegraf_listener "C:\json-scada\platform-windows\nodejs-runtime\node.exe" "C:\json-scada\src\telegraf-listener\index.js"
145193
nssm set JSON_SCADA_telegraf_listener AppDirectory "C:\json-scada\src\telegraf-listener"
194+
nssm set JSON_SCADA_telegraf_listener AppStdout C:\json-scada\log\telegraf_listener.log
195+
nssm set JSON_SCADA_telegraf_listener AppRotateOnline 1
196+
nssm set JSON_SCADA_telegraf_listener AppRotateBytes 10000000
146197
nssm set JSON_SCADA_telegraf_listener Start SERVICE_AUTO_START
147198

148199
cd \json-scada\platform-windows\telegraf-runtime
149200

150201
REM service for telegraf runtime
151202
C:\json-scada\platform-windows\telegraf-runtime\telegraf --service install --service-name="JSON_SCADA_telegraf_runtime" --service-display-name="JSON_SCADA_telegraf_runtime" --config "C:\json-scada\conf\telegraf.conf"
152203

204+
rem Create scheduled task for log rotation (alternative log rotator), configure with logrotate.conf
205+
rem Should stop services to force log file to close. See https://sourceforge.net/p/logrotatewin/wiki/LogRotate/
206+
rem SCHTASKS /CREATE /SC DAILY /TN "MyTasks\JSON-SCADA logrotate task" /TR "C:\json-scada\bin\logrotate C:\json-scada\platform-windows\logrotate.conf" /ST 04:00

platform-windows/json-scada.nsi

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
; json-scada.nsi
22
; {json:scada} installer script
3-
; Copyright 2020-2021 - Ricardo L. Olsen
3+
; Copyright 2020-2023 - Ricardo L. Olsen
44

55
; NSIS (Nullsoft Scriptable Install System) - http://nsis.sourceforge.net/Main_Page
66

@@ -17,8 +17,8 @@ RequestExecutionLevel admin
1717

1818
;--------------------------------
1919

20-
!define VERSION "v.0.29"
21-
!define VERSION_ "0.29.0.0"
20+
!define VERSION "v.0.30"
21+
!define VERSION_ "0.30.0.0"
2222

2323
Function .onInit
2424
System::Call 'keexrnel32::CreateMutexA(i 0, i 0, t "MutexJsonScadaInstall") i .r1 ?e'
@@ -242,7 +242,7 @@ SetRegView 64
242242
File /a "..\platform-windows\nssm.exe"
243243
File /a "..\platform-windows\sounder.exe"
244244
File /a "..\platform-windows\vc_redist.x64.exe"
245-
File /a "..\platform-windows\dotnet-runtime-6.0.19-win-x64.exe"
245+
File /a "..\platform-windows\dotnet-runtime-6.0.21-win-x64.exe"
246246

247247
; Visual C redist: needed for timescaledb
248248
;ReadRegStr $0 HKLM "SOFTWARE\Microsoft\VisualStudio\14.0\VC\Runtimes\x86" "Major"
@@ -256,7 +256,7 @@ SetRegView 64
256256
Sleep 1000
257257
Exec '"$INSTDIR\platform-windows\vc_redist.x64.exe" /install /passive /quiet'
258258
Sleep 1000
259-
Exec '"$INSTDIR\platform-windows\dotnet-runtime-6.0.19-win-x64.exe" /install /passive /quiet'
259+
Exec '"$INSTDIR\platform-windows\dotnet-runtime-6.0.21-win-x64.exe" /install /passive /quiet'
260260

261261
SetOutPath $INSTDIR\platform-windows\nodejs-runtime
262262
File /a /r "..\platform-windows\nodejs-runtime\*.*"

platform-windows/release_notes.txt

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,31 @@ Inkscape+SAGE:
132132

133133
-------------------------------------------------------------------
134134

135+
Notes for version 0.30:
136+
137+
* Default login credentials: username=admin password=jsonscada.
138+
* Fixed data update problem with the MQTT-Sparkplug driver.
139+
* Force data references in reports for the IEC61850 driver.
140+
* Fixed problems with data types in Excel config_server_for_excel/sheet.
141+
* Added logging/rotation by default to some services.
142+
* Npm packages updated.
143+
* MongoDB Community Server updated to 7.0.1.
144+
* MongoDB Compass updated to 1.39.4.
145+
* Grafana updated to 9.5.9.
146+
* Chromium updated to 116.0.5845.180.
147+
* Telegraf runtime updated to 1.27.4.
148+
* Dotnet runtime updated to 6.0.21.
149+
150+
Requirements and recommendations:
151+
152+
* Windows 10/11 64 bits or Server >=2016, Windows PowerShell. At least 10GB of free space in the "C:" drive.
153+
* Administrative rights. Corporative Windows policies may cause problems with the creation of services and the opening of TCP ports.
154+
* Free TCP ports 27017, 5432, 80, 8080, 3000, 9000. Other ports may be required for optional services and protocols.
155+
* If the server already has MongoDB, PostgreSQL, Grafana, Nginx or another webserver, please uninstall, disable or watch out for possible conflicts.
156+
* Do not update previously installed JSON-SCADA. Please uninstall previous JSON-SCADA versions before installing a new version.
157+
158+
-------------------------------------------------------------------
159+
135160
Notes for version 0.29:
136161

137162
* Default login credentials: username=admin password=jsonscada.

src/htdocs/i18n/messages_i18n-en_us.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
var Msg =
55
{
66
NomeProduto: '{json:scada}',
7-
VersaoProduto: '0.29',
7+
VersaoProduto: '0.30',
88

99
NomeVisorTelas: 'Display Viewer',
1010
NomeVisorEventos: 'Events Viewer',

src/htdocs/i18n/messages_i18n-pt_br.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
var Msg =
55
{
66
NomeProduto: '{json:scada}',
7-
VersaoProduto: '0.29',
7+
VersaoProduto: '0.30',
88

99
NomeVisorTelas: 'Visor de Telas',
1010
NomeVisorEventos: 'Visor de Eventos',

src/htdocs/i18n/messages_i18n-uk_ua.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
var Msg =
55
{
66
NomeProduto: '{json:scada}',
7-
VersaoProduto: '0.29',
7+
VersaoProduto: '0.30',
88

99
NomeVisorTelas: 'Перегляд ',
1010
NomeVisorEventos: 'Події',

src/htdocs/i18n/messages_i18n.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
var Msg =
55
{
66
NomeProduto: '{json:scada}',
7-
VersaoProduto: '0.29',
7+
VersaoProduto: '0.30',
88

99
NomeVisorTelas: 'Display Viewer',
1010
NomeVisorEventos: 'Events Viewer',

0 commit comments

Comments
 (0)