Compare commits

...
1121 Commits
Author SHA1 Message Date
fengzeroz 71d93753f5 Merge pull request #2312 from fengzeroz/v2.9
version: 2.9.5
2024-11-11 17:07:30 +08:00
fengzero 639c55ea97 version: 2.9.5 2024-11-11 09:05:34 +00:00
fengzeroz 5b7724bdfe Merge pull request #2308 from fengzeroz/v2.9
conn buf size: 8192
2024-11-11 16:30:50 +08:00
fengzero a420e91048 conn buf size: 8192 2024-11-11 08:29:21 +00:00
fengzeroz 1a5a8e0b8a Merge pull request #2283 from fengzeroz/v2.9
mqtt port limit
2024-11-04 16:58:01 +08:00
fengzero 206c3055ed mqtt port limit 2024-11-04 08:53:04 +00:00
fengzeroz cc32019de9 Merge pull request #2272 from hxy7yx/v2.9-2
[2.9]fix(write):correct write value verification
2024-11-01 11:39:39 +08:00
fengzeroz 919a24f264 Merge pull request #2276 from fengzeroz/v2.9
V2.9
2024-11-01 11:36:58 +08:00
fengzero 9d0ee222d0 update_im: not check subscribe 2024-11-01 03:35:53 +00:00
fengzero bd49739b39 Revert "cyclic reporting does not detect change"
This reverts commit 2d230366a1.
2024-11-01 03:35:14 +00:00
hxy7yx 0e87862532 fix(write):correct write value verification 2024-11-01 11:22:38 +08:00
fengzeroz f7a5604047 Merge pull request #2259 from fengzeroz/v2.9
version: 2.9.4
2024-10-21 14:02:18 +08:00
fengzero 69ca20eb37 version: 2.9.4 2024-10-21 05:59:20 +00:00
fengzeroz ca444a71c1 Merge pull request #2245 from fengzeroz/v2.9
cyclic reporting does not detect change
2024-09-26 14:28:14 +08:00
fengzero 2d230366a1 cyclic reporting does not detect change 2024-09-26 06:27:41 +00:00
fengzeroz 0789deb82a Merge pull request #2222 from hxy7yx/v2.9-1
[2.9]fix(read paginate):handle only_write tags
2024-09-19 10:46:14 +08:00
fengzeroz 12c8046301 Merge pull request #2225 from fengzeroz/v2.9
Revert "cyclic reporting does not detect change"
2024-09-19 10:15:29 +08:00
fengzero ccf61815d0 Revert "cyclic reporting does not detect change"
This reverts commit 99309d2695.
2024-09-19 02:10:44 +00:00
hxy7yx 9bf877a8e7 fix(read paginate):handle only_write tags 2024-09-18 16:31:09 +08:00
fengzeroz 3b98edebe3 Merge pull request #2215 from fengzeroz/v2.9
cyclic reporting does not detect change
2024-09-14 10:23:05 +08:00
fengzero 99309d2695 cyclic reporting does not detect change 2024-09-14 02:22:06 +00:00
fengzeroz 2e1444573c Merge pull request #2205 from fengzeroz/v2.9
ci: clang-format
2024-09-09 11:08:27 +08:00
fengzero 367e0a9842 ci: clang-format 2024-09-09 02:58:41 +00:00
fengzeroz 7ae3aa6fca Merge pull request #2193 from fengzeroz/v2.9
version: 2.9.3
2024-08-28 14:23:29 +08:00
fengzero 7305df4117 version: 2.9.3 2024-08-28 06:22:25 +00:00
fengzeroz 7d96187cf9 Merge pull request #2189 from ZhouBox/v2.9
[v2.9]add api about doing with basic data type
2024-08-22 16:46:31 +08:00
xiang.zhou 10acec6836 add api about doing with basic data type 2024-08-21 18:11:48 +08:00
fengzeroz 0ab902edd9 Merge pull request #2185 from hxy7yx/v2.9-1
[v2.9]chore(mqtt): add reason for connection & disconnection
2024-08-20 16:19:37 +08:00
hxy7yx 3398c2ff69 chore(mqtt): add reason for connection & disconnection 2024-08-20 14:44:04 +08:00
fengzeroz c7b9381252 Merge pull request #2182 from fengzeroz/v2.9
Revert "cyclic reporting does not detect change"
2024-08-16 10:05:57 +08:00
fengzero 18da977187 Revert "cyclic reporting does not detect change"
This reverts commit 109257c928.
2024-08-16 02:04:49 +00:00
fengzeroz b5b3a9a0bc Merge pull request #2181 from fengzeroz/v2.9
cyclic reporting does not detect change
2024-08-15 15:10:36 +08:00
fengzero 109257c928 cyclic reporting does not detect change 2024-08-15 07:09:55 +00:00
fengzeroz cd59eccf89 Merge pull request #2175 from hxy7yx/v2.9-1
[v2.9] guard against empty mqtt subscription topic
2024-08-15 10:02:57 +08:00
hxy7yx 2b9daee95c guard against empty mqtt subscription topic 2024-08-14 14:44:01 +08:00
fengzeroz f8d92f22e3 Merge pull request #2172 from eeff/v2.9
Pick to v2.9 feat(mqtt): remove mqtt cache db when node deleted
2024-08-07 10:11:01 +08:00
eeff f3e39e8325 feat(mqtt): remove mqtt cache db when node deleted 2024-08-01 15:59:05 +08:00
fengzeroz 93effef50a Merge pull request #2170 from fengzeroz/v2.9
version: 2.9.2
2024-07-30 15:03:14 +08:00
fengzero c7fd967d89 version: 2.9.2 2024-07-30 07:02:39 +00:00
fengzeroz 3fd7670ff1 Merge pull request #2169 from hxy7yx/v2.9-2
[v2.9]feat(modbus tcp):configure optional message header verification
2024-07-30 15:01:43 +08:00
hxy7yx b64f323fcc feat(modbus tcp):configure optional message header verification 2024-07-29 14:38:01 +08:00
fengzeroz beb19a14dc Merge pull request #2152 from hxy7yx/v2.9-1
[v2.9]feat:core subscription supports filtering error tags
2024-07-29 14:30:22 +08:00
hxy7yx 67c32c6f15 feat:core subscription supports filtering error messages 2024-07-26 14:55:53 +08:00
fengzeroz 4d952e2ea0 Merge pull request #2162 from ZhouBox/v2.9
[v2.9]feat(rest):add api about configure status
2024-07-24 13:59:09 +08:00
xiang.zhou bb3b17faf2 feat(rest):add api about configure status 2024-07-24 11:38:30 +08:00
fengzeroz 4b0ee30be8 Merge pull request #2156 from hxy7yx/v2.9-2
[v2.9]fix(modbus):reconnect when recv error messages
2024-07-24 10:23:41 +08:00
hxy7yx f3cfadd3e8 fix(modbus):reconnect when recv error messages 2024-07-23 16:49:36 +08:00
hxy7yx 6ff4ad52d8 feat:core subscription supports filtering error messages 2024-07-23 15:53:09 +08:00
fengzeroz d39aa057bd Merge pull request #2146 from fengzeroz/v2.9
Revert "cyclic reporting does not detect change"
2024-07-18 10:15:04 +08:00
fengzero 55c2a05d03 Revert "cyclic reporting does not detect change"
This reverts commit 458af374bb.
2024-07-18 02:14:28 +00:00
fengzeroz d07735be93 Merge pull request #2143 from hxy7yx/v2.9-1
refactor(read paginate): optimize efficiency without filtering errors
2024-07-18 10:11:56 +08:00
hxy7yx 1db02f1573 refactor(read paginate): optimize efficiency without filtering errors 2024-07-15 14:55:09 +08:00
fengzeroz 707029bee2 Merge pull request #2140 from fengzeroz/v2.9
cyclic reporting does not detect change
2024-07-15 10:20:57 +08:00
fengzero 458af374bb cyclic reporting does not detect change 2024-07-15 02:20:25 +00:00
fengzeroz 09da1cdab6 Merge pull request #2138 from fengzeroz/v2.9
version: 2.9.1
2024-07-12 09:43:05 +08:00
fengzero 35849a00a9 version: 2.9.1 2024-07-12 01:42:11 +00:00
fengzeroz 305cb7449a Merge pull request #2134 from eeff/v2.9
Pick to v2.9 fix(core): set metric to init value when reset
2024-07-10 10:08:23 +08:00
eeff 9467bdaa36 fix(core): set metric to init value when reset 2024-07-10 10:01:02 +08:00
fengzeroz 79dde6ecf4 Merge pull request #2129 from eeff/v2.9
Pick to v2.9 fix(core): event loop check stop flag
2024-07-04 16:17:48 +08:00
eeff d71f240ec7 fix(core): event loop check stop flag 2024-07-04 16:15:19 +08:00
fengzeroz 47af1617a8 Merge pull request #2126 from fengzeroz/v2.9
version: 2.9.0
2024-07-01 11:18:16 +08:00
fengzero 4b54f98177 version: 2.9.0 2024-07-01 03:17:32 +00:00
fengzeroz ad3ad077b2 Merge pull request #2121 from eeff/v2.9
Pick to v2.9 chore: add error code `NEU_ERR_BODY_TOO_BIG`
2024-07-01 09:56:45 +08:00
eeff a50d3416ee chore: add error code NEU_ERR_BODY_TOO_BIG 2024-06-27 00:17:35 +08:00
fengzeroz fbe538ed91 Merge pull request #2113 from ZhouBox/v2.9
[v2.9]add notice log about node,group,sub
2024-06-25 14:18:43 +08:00
xiang.zhou 0f8d70d024 add notice log about node,group,sub 2024-06-18 16:59:55 +08:00
fengzeroz 7a534bc95e Merge pull request #2110 from fengzeroz/v2.9
version: 2.9.0-beta3
2024-06-18 15:58:37 +08:00
fengzero bf094f2731 version: 2.9.0-beta3 2024-06-18 07:47:25 +00:00
fengzeroz 9e99a662ba Merge pull request #2107 from hxy7yx/v2.9-2
[v2.9]rename precision when read floating-tag
2024-06-18 13:59:02 +08:00
hxy7yx 9e4ba7e51d rename precision when read floating-tag 2024-06-18 13:49:35 +08:00
fengzeroz c3a198270d Merge pull request #2104 from fengzeroz/v2.9
version: 2.9.0-beta2
2024-06-14 15:45:24 +08:00
fengzero 202dc73e25 version: 2.9.0-beta2 2024-06-14 07:42:23 +00:00
fengzeroz db8a95d99e Merge pull request #2100 from hxy7yx/v2.9-2
[v2.9]fix(test read): stop group timer while testing
2024-06-14 15:28:01 +08:00
fengzeroz c3e85e8f45 Merge pull request #2102 from hxy7yx/v2.9-1
[v2.9]fix(manager): exit after sending uninit msg failed
2024-06-14 15:27:40 +08:00
hxy7yx 921c2d6c57 fix(manager): exit even if send uninit msg failed 2024-06-14 15:03:22 +08:00
hxy7yx ab7f39b63f fix(test read): stop group timer while testing 2024-06-14 11:18:04 +08:00
fengzeroz 49f4cccc2a Merge pull request #2091 from ZhouBox/v2.9
[v2.9]display optimization for float and double types when setting bias
2024-06-14 09:52:08 +08:00
fengzeroz 9a6c7c427a Merge pull request #2093 from eeff/v2.9
Pick to v2.9 feat(core): add `interval` field to struct neu_plugin_group
2024-06-14 09:51:40 +08:00
fengzeroz 9226da5f60 Merge pull request #2098 from eeff/eeff/fix
Pick to v2.9 fix(core): read_report_group add tag bias
2024-06-14 09:51:21 +08:00
eeff a13bb136c4 fix(core): read_report_group add tag bias 2024-06-13 15:17:03 +08:00
eeff 0ac53e159f feat(core): add interval field to struct neu_plugin_group 2024-06-13 15:00:46 +08:00
xiang.zhou cf10ec0ad9 display optimization for float and double types when setting bias 2024-06-13 13:59:47 +08:00
fengzeroz 0ad6f4fe56 Merge pull request #2090 from hxy7yx/v2.9-1
fix(write): write *.0
2024-06-13 13:45:48 +08:00
hxy7yx d96413b83c fix(write): write *.0 2024-06-13 10:55:37 +08:00
fengzeroz 3fb0388dfa Merge pull request #2083 from gc87/jwt-exp-v2.9
[v2.9]fix(jwt): replacing expired tokens
2024-06-11 16:16:00 +08:00
gc87 3799af3569 fix(jwt): replacing expired tokens 2024-06-11 14:53:27 +08:00
fengzeroz 9dde3e8b84 Merge pull request #2079 from ZhouBox/v2.9
[v2.9]async queue:add api about length
2024-06-07 15:43:15 +08:00
fengzeroz a803228ded Merge pull request #2081 from fengzeroz/v2.9
2.9.0-beta1
2024-06-07 15:42:56 +08:00
fengzero bf4f176f39 2.9.0-beta1 2024-06-07 07:42:09 +00:00
xiang.zhou 1c7a91394f async queue:add api about length 2024-06-07 15:24:22 +08:00
fengzeroz dc07471634 Merge pull request #2077 from hxy7yx/v2.9-1
[v2.9]ft(modbus):test read tag
2024-06-07 14:58:32 +08:00
hxy7yx 5f4fed39a1 ft(modbus):test read tag 2024-06-07 14:48:33 +08:00
fengzeroz 7f66db88c9 Merge pull request #2074 from hxy7yx/v2.9-1
[v2.9]feat(core & modbus tcp): test read tag
2024-06-07 10:10:54 +08:00
hxy7yx 4a0835cf40 feat(core & modbus tcp): test read tag 2024-06-06 17:25:48 +08:00
fengzeroz 830d670358 Merge pull request #2073 from fengzeroz/v2.9
set node start if loading node state is ready
2024-06-05 14:50:44 +08:00
fengzero b6cefdb5fa fix init msg state init 2024-06-05 06:36:32 +00:00
fengzero c00d085d85 start node if node state is ready 2024-06-05 06:29:30 +00:00
fengzeroz 1a972f57f4 Merge pull request #2068 from eeff/v2.9
Pick to v2.9 feat(mqtt): schema client-id and write req/resp topic default value
2024-06-05 10:43:33 +08:00
eeff fcbbacfd31 feat(mqtt): schema client-id and write req/resp topic default value 2024-06-05 10:41:06 +08:00
fengzeroz 9f291833f1 Merge pull request #2062 from hxy7yx/v2.9-3
[v2.9]read(filter): name(name || desc)
2024-06-04 15:55:19 +08:00
hxy7yx 76b6df700d read(filter): name(name || desc) 2024-06-04 15:43:03 +08:00
fengzeroz b9c2739abb Merge pull request #2059 from hxy7yx/v2.9-3
[v2.9]feat(read):support pagination and filter(error) when reading tags
2024-06-04 09:51:15 +08:00
hxy7yx 301c92bee7 feat(read):support pagination and filter(error) when reading tags 2024-06-03 18:07:39 +08:00
fengzeroz 05f21357b7 Merge pull request #2051 from hxy7yx/v2.9-3
[v2.9]fix: memory leak
2024-05-31 15:12:40 +08:00
hxy7yx eab24cf1b5 fix: memory leak 2024-05-31 14:43:18 +08:00
fengzeroz 8d72fc9e31 Merge pull request #2047 from fengzeroz/v2.9
fix(update): update error when value is error
2024-05-30 11:20:11 +08:00
fengzero bd36224fba fix(update): update error when value is error 2024-05-30 03:11:47 +00:00
fengzeroz 3f884cf6ba Merge pull request #2040 from hxy7yx/v2.9-2
[v2.9]check and handle NaN for float and double in read and report operations
2024-05-29 17:29:31 +08:00
hxy7yx df2f6b74e5 check and handle NaN for float and double in read and report operations 2024-05-29 16:56:08 +08:00
fengzeroz bc4a23688b Merge pull request #2032 from hxy7yx/v2.9-2
[v2.9]metric: reset send&recv bytes when restart node
2024-05-29 14:48:26 +08:00
fengzeroz d29996506a Merge pull request #2036 from eeff/v2.9
Pick to v2.9 fix: update trans_data metric only when plugin is started
2024-05-29 14:47:18 +08:00
eeff 34f071a8ee fix(mqtt): update trans_data metric only when plugin is started 2024-05-29 14:38:30 +08:00
eeff a3557cd0af fix(ekuiper): update trans_data metric only when plugin is started 2024-05-29 14:38:30 +08:00
hxy7yx 31ece9eecc metric: reset send&recv bytes when restart node 2024-05-29 13:34:53 +08:00
fengzeroz 0512edbb52 Merge pull request #2009 from gc87/scan-tags-v2.9
[v2.9]feat: add scan tags reqest & response
2024-05-24 09:48:28 +08:00
fengzeroz 87acec1ede Merge pull request #2020 from ZhouBox/v2.9
[v2.9]display optimization for float and double types
2024-05-24 09:47:21 +08:00
xiang.zhou 144a925932 display optimization for float and double types 2024-05-23 16:47:15 +08:00
gc87 ba07160fc5 feat: add scan tags api 2024-05-20 18:00:56 +08:00
gc87 8927be9f81 feat: add scan tags reqest & response 2024-05-20 17:02:53 +08:00
fengzeroz c08e3b314a Merge pull request #2005 from eeff/v2.9
Pick to v2.9 feat(aws-iot): remove config default value
2024-05-17 15:58:49 +08:00
eeff abbe8a8847 feat(aws-iot): remove config default value 2024-05-17 15:55:07 +08:00
fengzeroz de4a53635c Merge pull request #2001 from ZhouBox/v2.9
[v2.9]driver:change log level
2024-05-17 14:59:57 +08:00
xiang.zhou cb997d9cf6 driver:change log level 2024-05-17 14:33:10 +08:00
fengzeroz af900bb0d4 Merge pull request #2000 from ZhouBox/v2.9
[v2.9]ft(plugin):update version
2024-05-17 14:00:14 +08:00
xiang.zhou 050cf5aafe ft(plugin):update version 2024-05-17 12:05:43 +08:00
fengzeroz 4f1f49de0f Merge pull request #1998 from fengzeroz/v2.9
branch v2.9
2024-05-17 11:10:14 +08:00
fengzero 22339ee248 branch v2.9 2024-05-17 03:05:54 +00:00
fengzeroz 86e2ed532f Merge pull request #1992 from hxy7yx/main-1
check if the written value conforms to the standard
2024-05-17 10:21:26 +08:00
fengzeroz d1ef1c06ab Merge pull request #1996 from ZhouBox/main
prgfile:add del flag
2024-05-16 14:15:55 +08:00
xiang.zhou 20855be480 prgfile:add del flag 2024-05-16 13:16:45 +08:00
hxy7yx 0b19e0b17b check if the written value conforms to the standard 2024-05-15 17:04:29 +08:00
fengzeroz baf1cbe3d4 Merge pull request #1991 from ZhouBox/main
prgfile:modify msg struct about upload prgfile
2024-05-15 16:35:09 +08:00
xiang.zhou 7183e37d2e prgfile:modify msg struct about upload prgfile 2024-05-15 16:27:41 +08:00
fengzeroz 6bac9517a6 Merge pull request #1990 from ZhouBox/main
dlclose dl when release version
2024-05-15 16:17:44 +08:00
xiang.zhou 11272bcc2a dlclose dl when release version 2024-05-15 15:53:06 +08:00
fengzeroz c86adfb1a9 Merge pull request #1984 from ZhouBox/main
fixbug:no close dl when del node
2024-05-14 16:58:35 +08:00
xiang.zhou df1c7f38e7 check handle 2024-05-14 15:58:57 +08:00
xiang.zhou 7a10c697d0 fixbug:no close dl when del node 2024-05-14 15:38:32 +08:00
fengzeroz 2e7c046116 Merge pull request #1978 from hxy7yx/main-1
ft:test launch configuration
2024-05-10 13:54:47 +08:00
hxy7yx c3309a5a29 ft:test launch configuration 2024-05-09 10:31:41 +08:00
fengzeroz 263c996991 Merge pull request #1977 from eeff/main
test(azure): add ft
2024-05-09 09:45:18 +08:00
eeff 68ca03f197 ci: Azure IoT plugin codecov report 2024-05-07 15:35:40 +08:00
eeff c39747b585 test(azure): add ft 2024-05-07 14:26:52 +08:00
eeff f2d851a5fa fix(azure): clean configuration keys 2024-05-07 14:26:52 +08:00
eeff ea8369ae98 feat(core): mqtt client subscription support wildcard 2024-05-07 14:26:52 +08:00
fengzeroz 3e1e6d0269 Merge pull request #1976 from hxy7yx/main-1
increase test coverage
2024-05-07 09:43:55 +08:00
hxy7yx f9718bc63a increase test coverage 2024-05-06 18:13:48 +08:00
fengzeroz dc041d102c Merge pull request #1966 from eeff/main
feat: add Azure IoT plugin
2024-05-06 09:46:47 +08:00
fengzeroz 8d6696fb78 Merge pull request #1972 from ZhouBox/main
fixbug:incomplete value print
2024-05-06 09:44:48 +08:00
fengzeroz b7205e1309 Merge pull request #1973 from eeff/eeff/dev
fix(restful): invalid free
2024-05-06 09:43:52 +08:00
eeff 8779c6558f fix(restful): invalid free 2024-04-30 16:27:06 +08:00
xiang.zhou bde8459aa2 fixbug:incomplete value print 2024-04-30 16:23:15 +08:00
eeff 19c44a0735 feat(azure): handle data upload 2024-04-29 16:07:43 +08:00
fengzeroz bbbb7c2b1a Merge pull request #1965 from hxy7yx/main-2
increase test coverage
2024-04-29 15:55:31 +08:00
eeff 8b9d275834 feat: add Azure IoT plugin 2024-04-29 15:06:03 +08:00
fengzeroz d724c52cb2 Merge pull request #1963 from eeff/main
fix: reset metrics when node stopped
2024-04-29 09:43:44 +08:00
hxy7yx 407f650fe1 increase test coverage 2024-04-28 17:35:38 +08:00
eeff 0ac0e0aa86 fix: start/stop group timer when driver started/stopped 2024-04-26 15:40:37 +08:00
eeff 2350cb87b0 feat: add metric type no reset flag 2024-04-26 15:34:24 +08:00
fengzeroz 1e30eea3f6 Merge pull request #1958 from fengzeroz/main
change update log level
2024-04-24 14:34:36 +08:00
fengzero 94023446c7 change update log level 2024-04-24 05:50:19 +00:00
fengzeroz 600e5ee56f Merge pull request #1956 from hxy7yx/main-1
test(tag):fix utf8 check & improve ft cov
2024-04-23 13:43:55 +08:00
fengzeroz f0d19af977 Merge pull request #1957 from eeff/main
chore: add AWS IoT to default plugins
2024-04-23 13:43:20 +08:00
eeff 0b4fed4693 chore: add AWS IoT to default plugins 2024-04-23 11:44:43 +08:00
hxy7yx 4c10678318 test(tag):fix utf8 check & improve ft cov 2024-04-22 15:07:43 +08:00
fengzeroz 719653c132 Merge pull request #1950 from hxy7yx/main-1
ft:add api for modbus address_base configuration
2024-04-22 09:38:13 +08:00
fengzeroz 84e0a6554c Merge pull request #1952 from hxy7yx/main-2
locating core dump files
2024-04-22 09:37:54 +08:00
fengzeroz 24789945d5 Merge pull request #1951 from eeff/main
feat(aws-iot): add aws-iot plugin
2024-04-22 09:36:25 +08:00
hxy7yx 8eb945e5f9 locating core dump files, adapting to NeuronEX 2024-04-19 17:56:51 +08:00
hxy7yx ee6199f2e5 ft:add api for modbus address_base configuration 2024-04-18 16:38:18 +08:00
eeff 27113aaeb4 feat(aws-iot): add aws-iot plugin 2024-04-17 18:25:53 +08:00
eeff ad5fa417ca refactor(mqtt): split plugin interface callback into separate translation unit 2024-04-16 15:27:12 +08:00
fengzeroz 7c611fd151 Merge pull request #1946 from eeff/main
fix(restful): read api invalid free
2024-04-15 15:35:34 +08:00
fengzeroz 0cc9631c9d Merge pull request #1944 from hxy7yx/main-2
remove the default values that carry variables in the schema
2024-04-15 11:38:57 +08:00
fengzeroz 8e0cc62c29 Merge pull request #1943 from hxy7yx/main-1
Revert "check if the written value conforms to the standard"
2024-04-15 11:38:13 +08:00
eeff 020026ae04 fix(restful): read api invalid free 2024-04-15 11:29:38 +08:00
hxy7yx 2a05178800 remove the default values that carry variables in the schema 2024-04-15 11:12:43 +08:00
hxy7yx 245a019082 Revert "check if the written value conforms to the standard"
This reverts commit d9157687ed.
2024-04-15 10:41:58 +08:00
fengzeroz 35d34721a4 Merge pull request #1941 from eeff/main
feat(ekuiper): support write multiple tags
2024-04-12 15:19:33 +08:00
eeff 173aa17eb9 test: add eKuiper write tags ft 2024-04-12 09:44:08 +08:00
eeff 0b67a088c1 feat(ekuiper): support write multiple tags 2024-04-12 09:44:08 +08:00
fengzeroz 6c43d599bc Merge pull request #1936 from eeff/main
feat(core): add tag bias field
2024-04-11 10:08:08 +08:00
eeff 1ed9a7d595 test: add ft for reading tag bias value 2024-04-10 14:42:36 +08:00
eeff 43aec2e5f2 feat(core): return bias tag value if needed 2024-04-10 14:42:36 +08:00
eeff 96bebcd81e test: tag bias ft 2024-04-10 14:42:36 +08:00
eeff bb793f6e14 feat(core): add tag bias field 2024-04-10 14:42:36 +08:00
eeff 7f9aa4cfc8 feat(persist): persist tag bias field 2024-04-10 14:42:36 +08:00
eeff 76914637c9 feat(persist): add SQL schema for tag bias field 2024-04-10 14:42:36 +08:00
fengzeroz 6f0ff2a862 Merge pull request #1937 from hxy7yx/main-1
determine whether tag(string) set endianness
2024-04-10 13:42:39 +08:00
hxy7yx 94d4a8db6e determine whether tag(string) set endianness 2024-04-10 11:47:59 +08:00
Rory 5d26cb1d77 ci: add code cov token in workflow (#1940)
Signed-off-by: Rory Z <16801068+Rory-Z@users.noreply.github.com>
2024-04-10 10:33:37 +08:00
fengzeroz 5f20e6dde3 Merge pull request #1932 from hxy7yx/main-1
supoort configuring endianness in node configuration
2024-03-29 16:57:31 +08:00
hxy7yx fbff7e68fd supoort configuring endianness in node configuration 2024-03-29 16:51:39 +08:00
fengzeroz 05d3e324d7 Merge pull request #1929 from hxy7yx/main-1
determine whether tag set endianness
2024-03-29 14:40:53 +08:00
hxy7yx c09b401e4a determine whether tag set endianness 2024-03-29 13:40:53 +08:00
fengzeroz 3d2d169935 Merge pull request #1924 from eeff/main
fix(ekuiper): check received aio NULL msg
2024-03-27 10:02:36 +08:00
eeff f831e71ad3 fix(ekuiper): check received aio data race 2024-03-26 10:29:47 +08:00
fengzeroz 6a13aeed8a Merge pull request #1923 from fengzeroz/main
ft time type
2024-03-25 10:19:45 +08:00
fengzero 76ce5acaf3 ft time type 2024-03-25 02:17:06 +00:00
fengzeroz 0c2c4fa920 Merge pull request #1919 from eeff/main
feat(core): add NEU_TYPE_TIME and NEU_TYPE_DATA_AND_TIME
2024-03-22 16:27:32 +08:00
eeff e76d24cd15 feat(persist): add SQL schema for NEU_TYPE_TIME/NEU_TYPE_DATA_AND_TIME 2024-03-22 16:08:15 +08:00
eeff a98e9ae904 feat(core): add NEU_TYPE_TIME and NEU_TYPE_DATA_AND_TIME 2024-03-22 16:08:15 +08:00
fengzeroz ce1e53d653 Merge pull request #1916 from fengzeroz/main
fix(conn): check offset reset
2024-03-21 09:54:27 +08:00
fengzero bf5fbdb31d fix(conn): check offset reset 2024-03-21 01:37:23 +00:00
fengzeroz ef991d9a6e Merge pull request #1913 from eeff/main
feat(modbus_tty_simlator): enhance command line interface
2024-03-19 15:45:58 +08:00
eeff 3eba902519 feat(modbus_tty_simlator): enhance command line interface 2024-03-19 11:53:41 +08:00
fengzeroz 7f3b698f69 Merge pull request #1910 from hxy7yx/main-1
move MAX_GROUPS check to validate function
2024-03-15 13:49:46 +08:00
hxy7yx 68d5bcec71 move MAX_GROUPS check to validate function 2024-03-15 12:03:53 +08:00
fengzeroz 5019983ce3 Merge pull request #1905 from hxy7yx/main-1
plugin(modbus): fix invalid message check
2024-03-14 16:57:11 +08:00
hxy7yx afd72ce259 plugin(modbus): fix invalid message check 2024-03-14 16:52:41 +08:00
fengzeroz 840f1aac3d Merge pull request #1900 from hxy7yx/main-1
plugin(modbus): fix modbus rtu slave check
2024-03-13 16:37:13 +08:00
hxy7yx 1d5d6de72c plugin(modbus): fix modbus rtu slave check 2024-03-13 16:15:09 +08:00
fengzeroz 7039ec3055 Merge pull request #1899 from hxy7yx/main-1
ft: move robotframework tests to pytest
2024-03-13 10:29:38 +08:00
hxy7yx 2eb52906e9 ft: move robotframework tests to pytest 2024-03-12 13:37:47 +08:00
fengzeroz c14b1e96e6 Merge pull request #1893 from hxy7yx/main-2
fix(add gtags): correct tag count when tag name conflict
2024-03-08 17:48:21 +08:00
hxy7yx d37bb5aa50 fix(add gtags): correct tag count when tag name conflict 2024-03-08 17:38:45 +08:00
fengzeroz 8ad0fdcf73 Merge pull request #1885 from eeff/main
fix(core): eliminate NEU_REQ_ADD_DRIVERS request data race
2024-03-08 13:52:23 +08:00
eeff 5478fd0fc5 fix(core): eliminate NEU_REQ_ADD_DRIVERS request data race 2024-03-08 11:34:26 +08:00
fengzeroz 74b45c91ee Merge pull request #1882 from eeff/main
fix(core): persist group when adding gtags
2024-03-07 17:34:01 +08:00
eeff 79fca4b18f fix(core): persist group when adding gtags 2024-03-07 17:30:47 +08:00
fengzeroz 142f31beff Merge pull request #1878 from eeff/main
feat(core): set domain socket to block mode and 1s timeout
2024-03-07 11:08:14 +08:00
eeff f17ab92e1f feat(core): set domain socket to block mode and 1s timeout 2024-03-07 10:45:15 +08:00
fengzeroz 32b4a251ae Merge pull request #1877 from fengzeroz/main
test
2024-03-06 18:11:59 +08:00
fengzero 8271e93af6 Revert "test"
This reverts commit 0c9c12c0e4.
2024-03-06 09:47:36 +00:00
fengzeroz a117ee2ba4 Merge pull request #1876 from fengzeroz/main
test
2024-03-06 17:20:24 +08:00
fengzero 0c9c12c0e4 test 2024-03-06 09:14:24 +00:00
fengzeroz b3d1b56084 Merge pull request #1875 from ZhouBox/main
check module name when update plugin
2024-03-06 11:20:58 +08:00
xiang.zhou 26e480982d check module name when update plugin 2024-03-06 10:59:59 +08:00
fengzeroz 45fa293fbc Merge pull request #1869 from eeff/main
fix: notify north app about driver group deletion
2024-03-06 09:44:49 +08:00
eeff b996ad1ac5 fix(ekuiper): handle NEU_REQ_DEL_GROUP 2024-03-05 17:59:41 +08:00
eeff 579df5c023 test(mqtt): data upload when driver group deleted 2024-03-05 17:59:41 +08:00
eeff 025fb8c30a fix(mqtt): handle NEU_REQ_DEL_GROUP 2024-03-05 17:59:41 +08:00
eeff f7d0be2e05 fix(core): notify app about driver group deletion 2024-03-05 17:59:41 +08:00
fengzeroz e4f4ec43cc Merge pull request #1865 from ZhouBox/main
remove the SIGSEGV signal handler
2024-02-27 16:54:14 +08:00
xiang.zhou 436e31a19f remove the SIGSEGV signal handler 2024-02-27 15:53:45 +08:00
fengzeroz d948d6f7e1 Merge pull request #1861 from eeff/eeff/dev
chore: remove useless code
2024-02-27 10:28:17 +08:00
fengzeroz 255e0d0e4d Merge pull request #1859 from yzewei/main
add loongarch64 support
2024-02-27 10:25:54 +08:00
fengzeroz 3b042446ed Merge pull request #1860 from hxy7yx/main-1
correct links in README
2024-02-27 10:25:44 +08:00
eeff 67c91ad61b chore: remove useless code 2024-02-26 23:29:28 +08:00
hxy7yx 19085abc3b correct links in README 2024-02-26 10:21:29 +08:00
yzewei fdabb69242 add loongarch64 support
Signed-off-by: yzewei <yangzewei@loongson.cn>
2024-02-26 08:51:55 +08:00
fengzeroz 1747041213 Merge pull request #1856 from hxy7yx/main-2
ft(modbus): add serial port testing
2024-02-22 11:05:56 +08:00
hxy7yx 31112b1a2a ft(modbus): add serial port testing 2024-02-22 10:50:00 +08:00
fengzeroz 821c4095f8 Merge pull request #1857 from eeff/eeff/dev
feat: use abstract domain socket instead of UDP
2024-02-22 10:15:42 +08:00
fengzeroz 0c80221c2a Merge pull request #1855 from hxy7yx/main-1
chore: improve parameter validation for API
2024-02-22 10:11:34 +08:00
hxy7yx cb4d477400 chore: improve parameter validation for API 2024-02-21 16:36:39 +08:00
eeff b0d12b07a5 feat: use abstract domain socket instead of UDP 2024-02-21 16:33:49 +08:00
fengzeroz 91b847dc3e Merge pull request #1853 from ZhouBox/main
riscv64:add build rule
2024-02-19 11:04:57 +08:00
xiang.zhou 40f208f6ad riscv64:add build rule 2024-02-19 10:57:24 +08:00
fengzeroz f233851cfd Merge pull request #1849 from eeff/eeff/dev
fix(restful): force clean stale rolling metrics
2024-02-19 10:40:23 +08:00
eeff 14e7f6f760 fix(restful): force clean stale rolling metrics 2024-02-05 17:17:36 +08:00
eeff e34cbb7c67 refactor(metrics): add lock to avoid data race 2024-02-05 17:17:36 +08:00
eeff e50076dc20 fix: rolling counter integer overflow 2024-02-05 16:53:43 +08:00
fengzeroz e943fe0bb5 Merge pull request #1847 from eeff/eeff/dev
feat(ekuiper): add rolling metrics
2024-02-05 15:49:34 +08:00
eeff 7ce97290bf fix(core): memory leak 2024-02-04 19:51:51 +08:00
eeff e8ab18f025 fix(metrics): correct registered rolling counter entry ref count 2024-02-04 18:46:05 +08:00
eeff f197f574a0 feat(ekuiper): add rolling metrics 2024-02-04 16:49:00 +08:00
fengzeroz 7bfe936ae9 Merge pull request #1838 from KunYi/main
improve crc16 of modbus performance
2024-02-04 10:19:35 +08:00
fengzeroz 8388f11aca Merge pull request #1844 from hxy7yx/main-2
feat: add tag name sql schema
2024-02-04 10:19:24 +08:00
hxy7yx 875d92f012 feat: add tag name sql schema 2024-02-02 17:53:03 +08:00
fengzeroz ce55e8cefc Merge pull request #1839 from eeff/eeff/dev
feat(mqtt): add rolling metrics
2024-02-02 16:17:31 +08:00
KunYi Chen 4133028d90 improve crc16 of modbus performance
use lookup method to reduce computing cycle
2024-02-02 15:00:55 +08:00
eeff 353dbcd18c feat(mqtt): add rolling metrics 2024-02-02 12:00:47 +08:00
eeff 6bea8c254e feat(metrics): support distribution counter 2024-02-02 12:00:47 +08:00
eeff 5ef9abfa5d test: rolling counter unit tests 2024-02-02 12:00:47 +08:00
eeff c81d40d351 feat: add rolling counter utility 2024-02-01 23:54:46 +08:00
fengzeroz 50ee1d759f Merge pull request #1833 from hxy7yx/main-1
update tag name length max to 128
2024-01-31 10:34:57 +08:00
hxy7yx c0ea9d15fe update tag name length max to 128 2024-01-30 17:44:25 +08:00
fengzeroz d8901f85dd Merge pull request #1832 from eeff/eeff/dev
build: cmake link libatomic
2024-01-30 17:27:56 +08:00
eeff 8278fa98d4 build: cmake link libatomic 2024-01-30 17:09:17 +08:00
fengzeroz d11ae338ab Merge pull request #1831 from hxy7yx/main-1
cleanup(parser): remove unused functions
2024-01-30 14:10:34 +08:00
hxy7yx 0a05ef50bc fix(json): fix parser errored out while processing string types 2024-01-29 18:13:01 +08:00
hxy7yx 9c6a90662c cleanup(parser): remove unused functions 2024-01-29 18:01:46 +08:00
fengzeroz 7b1de308ba Merge pull request #1830 from ZhouBox/main
modify reciver
2024-01-29 15:34:54 +08:00
xiang.zhou ba79454502 modify reciver 2024-01-29 15:06:13 +08:00
fengzeroz fc786bf4d5 Merge pull request #1827 from ZhouBox/main
judge cache type when report group
2024-01-29 13:52:11 +08:00
xiang.zhou 760858bafc feat:judge cache type when report group 2024-01-29 13:43:54 +08:00
fengzeroz 766897532a Merge pull request #1825 from ZhouBox/main
feat(prgfile):add prgfile api
2024-01-29 13:40:24 +08:00
xiang.zhou 5d29fb6a45 feat(prgfile):add prgfile api 2024-01-29 11:45:07 +08:00
fengzeroz 0bf39bbe3e Merge pull request #1824 from hxy7yx/main-1
test(ut):add async queue ut
2024-01-25 10:37:17 +08:00
hxy7yx e27ee0bd49 remove http_proxy 2024-01-25 10:07:20 +08:00
hxy7yx e25d408259 test(ut):add async queue ut 2024-01-24 11:33:03 +08:00
fengzeroz a677f9331c Merge pull request #1823 from eeff/eeff/dev
fix(persit): neu_sqlite_persister_create free non-malloc memory
2024-01-23 17:43:33 +08:00
eeff e11af94900 fix(persit): neu_sqlite_persister_create free non-malloc memory 2024-01-23 17:39:50 +08:00
fengzeroz 1ab37d97bc Merge pull request #1819 from hxy7yx/main-1
adjusting ut coverage
2024-01-23 10:00:01 +08:00
fengzeroz 4285a98751 Merge pull request #1820 from eeff/main
fix: PUT drivers api
2024-01-23 09:55:08 +08:00
fengzeroz cf17c7fc4e Merge pull request #1821 from eeff/eeff/dev
refactor: move SSL cert files to data diretory
2024-01-23 09:54:20 +08:00
hxy7yx d293f38db9 adjusting ut coverage 2024-01-23 09:49:56 +08:00
eeff 2a656feb91 refactor: move SSL cert files to data directory 2024-01-22 17:24:18 +08:00
eeff d871f6c203 fix: PUT drivers api 2024-01-22 16:42:13 +08:00
fengzeroz c8f7c0a974 Merge pull request #1818 from eeff/eeff/dev
feat(restful): add GET drivers api
2024-01-19 09:48:03 +08:00
eeff 8711212ce0 test: GET drivers api ft 2024-01-17 16:17:10 +08:00
eeff 93bbcd3a6a refactor(restful): PUT drivers handler reduce duplicate code 2024-01-17 16:17:10 +08:00
eeff 26ffce35e3 feat(restful): GET drivers api support name query parameter 2024-01-17 16:17:10 +08:00
eeff 7395f9bf13 feat: add neu_strset_t utility data structure 2024-01-17 16:17:10 +08:00
eeff b7221e701d feat(restful): add GET drivers api 2024-01-17 16:17:10 +08:00
eeff 5baf46bb18 feat: add driver json enconder 2024-01-17 16:17:10 +08:00
fengzeroz e9a3778ca1 Merge pull request #1816 from eeff/eeff/dev
feat(restful): put drivers api
2024-01-16 15:05:39 +08:00
eeff 0e2a10463c test: put drivers ft 2024-01-13 22:12:53 +08:00
eeff 2b4ea8c0bd feat(restful): put drivers api 2024-01-12 19:04:08 +08:00
eeff e871363d70 feat(core): support NEU_REQ_ADD_DRIVERS request 2024-01-12 18:51:55 +08:00
fengzeroz a55ddade3a Merge pull request #1813 from hxy7yx/main-1
fix(add gtag): memory overflow
2024-01-12 17:03:06 +08:00
hxy7yx 596b54f73c fix(add gtag): memory overflow 2024-01-12 16:56:13 +08:00
fengzeroz d74721620b Merge pull request #1808 from eeff/eeff/fix
fix: enlarge plugin lib length
2024-01-11 16:05:54 +08:00
eeff fa63962575 fix: enlarge plugin lib length 2024-01-11 15:39:00 +08:00
eeff e89a23ec59 feat: add driver request json parser 2024-01-10 18:03:43 +08:00
fengzeroz 20a3d6bc5a Merge pull request #1807 from hxy7yx/main-1
fix(add_gtag): parser memory free
2024-01-10 17:31:35 +08:00
hxy7yx 7bb4cfbf0d fix(add_gtag): parser memory free 2024-01-10 17:24:00 +08:00
fengzeroz d6ba5e371f Merge pull request #1805 from eeff/main
feat(restful): add node api support setting
2024-01-10 09:52:56 +08:00
eeff dd33b42a32 test: add node with setting ft 2024-01-09 16:11:30 +08:00
eeff dbe72f50bc feat(restful): add node api support setting 2024-01-09 15:37:13 +08:00
eeff 5584722dbd feat(core): add node request support setting 2024-01-09 15:36:39 +08:00
fengzeroz 56af317b74 Merge pull request #1804 from eeff/eeff/dev
feat(persist): abstract sqlite persister implementation
2024-01-09 10:47:10 +08:00
eeff 59f06f1836 feat(persist): abstract sqlite persister implementation 2024-01-05 16:05:10 +08:00
eeff c662e835d6 feat(persist): remove node/tag count 2024-01-05 15:00:44 +08:00
fengzeroz 4240f313e2 Merge pull request #1799 from hxy7yx/main-2
limit the number of groups to a maximum of 512
2024-01-04 16:20:56 +08:00
hxy7yx 9a12f36731 limit the number of groups to a maximum of 512 2024-01-04 16:11:47 +08:00
fengzeroz 623f2f7672 Merge pull request #1797 from eeff/eeff/dev
feat(core): get subscribe group request support filter
2024-01-04 14:54:14 +08:00
eeff 55e09d9a64 test: get subscribe info ft 2024-01-04 14:13:29 +08:00
eeff 3a76d3cef5 feat(restful): get subscribe group api support filtering 2024-01-04 14:13:29 +08:00
eeff ccb6a79a8e feat(core): get subscribe group request support filtering 2024-01-04 14:13:29 +08:00
fengzeroz 08eebcbca0 Merge pull request #1795 from fengzeroz/main
get tags: query description
2024-01-04 11:20:09 +08:00
fengzero 6dd4b0f2df get tags: query description 2024-01-04 03:10:20 +00:00
fengzeroz aa3462efe5 Merge pull request #1792 from eeff/eeff/dev
feat(core): read group support filter
2024-01-03 17:47:12 +08:00
eeff b4041b0be3 test: read group query ft 2024-01-03 17:17:09 +08:00
eeff b08869f404 feat(restful): read group handler support query 2024-01-03 17:13:42 +08:00
fengzeroz 595d7d4456 Merge pull request #1791 from eeff/eeff/dev
feat: remove template
2024-01-03 11:11:57 +08:00
eeff 284bf0446f feat(ft): remove template ft 2024-01-03 10:56:07 +08:00
eeff ccccc0889f feat(core): remove template 2024-01-03 10:27:42 +08:00
fengzeroz aaff4e4bac Merge pull request #1787 from hxy7yx/main-1
increase the size of EVENT_SIZE
2024-01-03 10:04:09 +08:00
fengzeroz 832b081cf8 Merge pull request #1784 from fengzeroz/main
msg q
2024-01-03 10:03:32 +08:00
hxy7yx e1db8f05b6 increase the size of EVENT_SIZE 2024-01-02 18:05:58 +08:00
eeff fe3bc96256 feat(core): read group support query matching 2024-01-02 17:12:00 +08:00
fengzero f1e4bed876 msg q 2023-12-29 06:53:00 +00:00
fengzeroz 5737511f22 Merge pull request #1782 from fengzeroz/main
lock tag table
2023-12-29 11:06:47 +08:00
fengzero 660a01c4cd lock tag table 2023-12-29 02:03:24 +00:00
fengzeroz 1a5ced01a9 Merge pull request #1780 from hxy7yx/main-1
adapter: removing unused code and enhancing test coverage
2023-12-25 15:27:10 +08:00
hxy7yx b7615ae955 adapter: removing unused code and enhancing test coverage 2023-12-25 14:42:21 +08:00
fengzeroz d23c67efec Merge pull request #1777 from fengzeroz/main
fix event leak
2023-12-25 11:19:34 +08:00
fengzero 2791128642 event log 2023-12-25 02:46:15 +00:00
fengzero 6db4a324d8 fix(event): timer/io index set 2023-12-25 02:44:44 +00:00
fengzeroz 25e7569be9 Merge pull request #1773 from eeff/eeff/dev
fix(core): replace path separator char in adapter log category
2023-12-22 14:51:06 +08:00
eeff 4b6b788b75 fix(core): replace path separator char in adapter log category 2023-12-22 14:38:03 +08:00
fengzeroz 0a53a1d761 Merge pull request #1768 from hxy7yx/main-1
test: add validation for uptime_seconds metric
2023-12-21 09:42:31 +08:00
hxy7yx a71e1c2fbc test: add validation for uptime_seconds metric 2023-12-20 11:45:15 +08:00
fengzeroz 68789bed4d Merge pull request #1767 from hxy7yx/main-1
check if the written value conforms to the standard
2023-12-19 17:16:38 +08:00
hxy7yx d9157687ed check if the written value conforms to the standard 2023-12-19 17:07:39 +08:00
fengzeroz b3f1e47b18 Merge pull request #1766 from hxy7yx/main-1
fix(add_gtags):license tag count
2023-12-19 14:23:03 +08:00
hxy7yx 79be7286d3 fix(add_gtags):license tag count 2023-12-19 14:16:59 +08:00
fengzeroz 077a216988 Merge pull request #1764 from eeff/eeff/dev
revert: ndriver code
2023-12-19 09:52:02 +08:00
eeff 0c5d96deef test: remove ndriver ft 2023-12-18 21:34:21 +08:00
eeff 862b195139 revert: ndriver code 2023-12-18 21:32:09 +08:00
fengzeroz 45c7d51446 Merge pull request #1762 from hxy7yx/main-1
fix http status
2023-12-18 18:10:45 +08:00
hxy7yx 128609cbab fix http status 2023-12-18 18:07:14 +08:00
hxy7yx 6e856b0346 fix http status 2023-12-18 18:06:17 +08:00
fengzeroz ec43e8ad88 Merge pull request #1760 from hxy7yx/main-1
fix: add_tags&add_gtags http resp code
2023-12-18 17:08:49 +08:00
hxy7yx 7a4ccb459d fix:add_tags and add_gtags http resp code 2023-12-18 16:47:52 +08:00
fengzeroz 603be49982 Merge pull request #1758 from fengzeroz/main
fix(conn): lock conn buf
2023-12-18 16:10:37 +08:00
fengzeroz 6573ff1af2 Merge pull request #1757 from ZhouBox/main
fix:add library update fail error code
2023-12-18 15:38:20 +08:00
fengzero aac982fb62 fix(conn): lock conn buf 2023-12-18 07:32:39 +00:00
xiang.zhou ade333526b fix:add library update fail error code 2023-12-18 15:00:14 +08:00
fengzeroz 1af7ead362 Merge pull request #1755 from eeff/eeff/dev
test(ekuiper): add ft
2023-12-18 09:54:58 +08:00
eeff 5cb0927ff2 ci: ekuiper codecov report 2023-12-15 18:51:26 +08:00
eeff 3658fdeb99 fix(ekuiper): configuration validation 2023-12-15 18:51:26 +08:00
eeff ab8c1569bc test(ekuiper): add ft 2023-12-15 18:51:26 +08:00
eeff 1d34e73dd6 fix(ekuiper): json parser memory leak 2023-12-15 18:44:16 +08:00
fengzeroz 9a8740214c Merge pull request #1753 from ZhouBox/main
fixbug:no update plugin when update plugin library
2023-12-15 09:29:33 +08:00
xiang.zhou 12c5b6a76f fixbug:no update plugin when update plugin library 2023-12-14 18:56:09 +08:00
fengzeroz babee89528 Merge pull request #1751 from eeff/eeff/dev
fix(test): ft setup.py packaging
2023-12-13 18:12:22 +08:00
eeff 1f1a4397e0 fix(test): ft setup.py packaging 2023-12-13 18:04:46 +08:00
eeff 85d5701a63 fix(test): make ft mqtt mocker more robust 2023-12-13 18:04:46 +08:00
fengzeroz 1ef66414b0 Merge pull request #1746 from hxy7yx/main-1
fix(NEU_REQ_ADD_GTAG): del added tags when add failed
2023-12-13 10:00:09 +08:00
hxy7yx 5836ec2ade fix(NEU_REQ_ADD_GTAG): del all tags when add failed 2023-12-12 15:52:35 +08:00
fengzeroz 2d1768c9ae Merge pull request #1748 from fengzeroz/main
event: log
2023-12-12 15:34:04 +08:00
fengzero cfbb91637e event: log 2023-12-12 07:21:50 +00:00
fengzeroz a399c494ab Merge pull request #1743 from fengzeroz/main
fix write tag in arm64
2023-12-12 10:30:49 +08:00
fengzero f51a028e3f fix write tag 2023-12-12 02:01:45 +00:00
fengzero 89f7e237a2 fix write tag in arm64 2023-12-11 10:35:38 +00:00
fengzeroz d6ef7da766 Merge pull request #1738 from fengzeroz/main
reg sigkill
2023-12-11 17:10:37 +08:00
fengzero 1e60faf3ae reg sigkill 2023-12-11 09:04:11 +00:00
fengzeroz 315101a862 Merge pull request #1734 from hxy7yx/main-1
add ft case for negative decimal
2023-12-11 16:17:35 +08:00
fengzeroz 81535fc2ee Merge pull request #1736 from fengzeroz/main
Revert "fix(conn): lock conn buf"
2023-12-11 16:00:20 +08:00
fengzero 3c6f9ca096 Revert "fix(conn): lock conn buf"
This reverts commit 1151bb43b8.
2023-12-11 07:47:48 +00:00
hxy7yx 34ee5ad644 add ft case for negative decimal 2023-12-11 14:42:55 +08:00
fengzeroz 3e721c9554 Merge pull request #1729 from fengzeroz/main
fix(conn): lock conn buf
2023-12-08 14:34:38 +08:00
fengzero 1151bb43b8 fix(conn): lock conn buf 2023-12-08 06:24:38 +00:00
fengzeroz 7f9842a039 Merge pull request #1728 from eeff/eeff/dev
test(mqtt): make ft more stable
2023-12-08 11:03:16 +08:00
eeff 583ec8ac79 test(mqtt): make ft more stable 2023-12-08 10:33:09 +08:00
fengzeroz 403129560a Merge pull request #1727 from hxy7yx/main-1
add ft cases for src/base
2023-12-08 09:49:39 +08:00
fengzeroz 8fc0eef7f0 Merge pull request #1722 from gc87/write_tags_int2d64
[main]fix: write tags api int->double type
2023-12-08 09:45:52 +08:00
hxy7yx eda26e0034 add ft cases for src/base 2023-12-07 18:30:28 +08:00
fengzeroz a2d64bf578 Merge pull request #1724 from fengzeroz/main
fix(conn): block link abnormal connection
2023-12-07 11:25:52 +08:00
fengzeroz 318c7b7802 Merge pull request #1715 from hxy7yx/main-2
fix(simulator):memory leak
2023-12-07 11:16:00 +08:00
fengzero de0b3a4610 fix(conn): block link abnormal connection 2023-12-07 03:08:44 +00:00
hxy7yx e0902f7e53 fix(simulator):memory leak 2023-12-07 10:15:56 +08:00
gc87 ee8282b8eb fix: write tags api int->double type 2023-12-06 19:05:57 +08:00
fengzeroz f1b8d4b37d Merge pull request #1719 from eeff/eeff/dev
test(mqtt): add mqtt write tags ft
2023-12-06 17:31:30 +08:00
eeff cf01ede2d3 test(mqtt): improve write tags ft coverage 2023-12-06 17:03:39 +08:00
eeff 1d669c24e5 refactor(mqtt): reduce write req handler duplicate code 2023-12-06 17:02:34 +08:00
fengzeroz a0e9b7eff3 Merge pull request #1720 from emqx/revert-1713-write_tags_int2d64
Revert "[main]fix: write tags api int->double type"
2023-12-06 16:44:19 +08:00
Gao Chun 0910f60eb9 Revert "[main]fix: write tags api int->double type" 2023-12-06 16:40:33 +08:00
fengzeroz d552b6bc37 Merge pull request #1718 from fengzeroz/main
upload data when subscribe group
2023-12-06 16:04:34 +08:00
fengzero 13499a925f upload data when subscribe group 2023-12-06 07:49:22 +00:00
fengzeroz 74944e79c2 Merge pull request #1713 from gc87/write_tags_int2d64
[main]fix: write tags api int->double type
2023-12-06 10:44:06 +08:00
fengzeroz 84f7d45c30 Merge pull request #1711 from eeff/eeff/dev
test: add mqtt ft
2023-12-06 10:32:17 +08:00
eeff effd34e08f test: add mqtt ft 2023-12-05 19:14:22 +08:00
eeff 821e7408db test: add mqtt test broker and client 2023-12-05 18:39:42 +08:00
eeff bec8bce390 fix(ci): remove ft duplicate run 2023-12-05 18:39:42 +08:00
eeff 4aeb5d7b54 fix(core): json read/write parser memory leak 2023-12-05 18:39:42 +08:00
eeff 4aac5571bf fix(core): neu_decode64 graceful return on error 2023-12-05 18:39:42 +08:00
eeff 9cb6d72bc7 fix(mqtt): memory double free and leak 2023-12-05 18:39:23 +08:00
gc87 5cd1cc6ef9 fix: write tags api int->double type 2023-12-05 16:41:10 +08:00
fengzeroz 617efbb2fa Merge pull request #1712 from hxy7yx/main-1
fix ft cov report
2023-12-05 13:49:11 +08:00
hxy7yx 4e97b8cbd4 fix ft cov report 2023-12-05 11:46:43 +08:00
fengzeroz 93f667843a Merge pull request #1709 from eeff/eeff/dev
fix(core): send unsubscribe group message when deleting app
2023-12-04 17:42:01 +08:00
eeff b10b964ab3 test: ft case for deleting subscribing app 2023-12-04 17:29:13 +08:00
eeff 43a87bcdcd fix(core): send unsubscribe group message when deleting app 2023-12-04 16:51:10 +08:00
fengzeroz 7e852118ff Merge pull request #1708 from ZhouBox/main
fix:memory leak
2023-12-04 10:25:36 +08:00
xiang.zhou a89a1b2044 fix:memory leak 2023-12-04 10:17:21 +08:00
fengzeroz 2afc8d94b1 Merge pull request #1705 from eeff/eeff/dev
chore: ft ignore faketime warning message
2023-12-01 11:00:01 +08:00
eeff 6ff9613756 chore: ft ignore faketime warning message 2023-12-01 10:57:15 +08:00
fengzeroz a8d1aed71c Merge pull request #1704 from hxy7yx/main-3
fix(connection):stop listening after the server mode node stops
2023-11-30 17:00:59 +08:00
hxy7yx 18bc31ef90 fix(connection):stop listening after the server mode node stops 2023-11-30 16:56:54 +08:00
fengzeroz 038f8f77cf Merge pull request #1703 from eeff/eeff/dev
feat(syslog): new log format
2023-11-30 09:45:57 +08:00
eeff 23ec078763 feat(syslog): new log format 2023-11-29 12:51:12 +08:00
fengzeroz c934a1f2c2 Merge pull request #1702 from eeff/eeff/dev
feat: remove monitor
2023-11-28 16:46:54 +08:00
eeff eb9f721c64 test(monitor): remove monitor related ft 2023-11-28 15:04:59 +08:00
eeff 73fd1cea34 feat: remove event messages 2023-11-28 14:52:47 +08:00
eeff 7c0119fce3 feat: remove monitor 2023-11-28 14:52:47 +08:00
fengzeroz d6e25331db Merge pull request #1701 from eeff/eeff/dev
feat: add license tag metrics
2023-11-27 16:42:36 +08:00
eeff 7adb40265f feat: add license tag metrics 2023-11-27 16:29:49 +08:00
fengzeroz 8525e83dbd Merge pull request #1700 from eeff/eeff/refactor
fix: memory used after free
2023-11-27 10:35:59 +08:00
eeff 4f51d094f3 fix: memory used after free 2023-11-27 10:17:44 +08:00
fengzeroz a6f166bbd2 Merge pull request #1699 from fengzeroz/main
ci: update source
2023-11-27 10:08:02 +08:00
fengzero a874d4c466 ci: update source 2023-11-27 02:01:16 +00:00
fengzeroz 4c9a699932 Merge pull request #1694 from eeff/eeff/refactor
refactor: send message by pointer
2023-11-27 09:56:11 +08:00
eeff f1587359e5 refactor: send msg by pointer 2023-11-24 10:22:35 +08:00
eeff fc9cfcf40c refactor: add neu_msg_t for internal messaging 2023-11-23 17:31:21 +08:00
fengzeroz ad42e626e5 Merge pull request #1691 from eeff/eeff/dev
fix(core): add/update plugin memory corruption
2023-11-23 11:24:54 +08:00
fengzeroz c40ba399e0 Merge pull request #1692 from eeff/eeff/fix
fix(core): send correct node name when del node
2023-11-23 11:11:29 +08:00
eeff 39f7367d2d fix(core): send correct node name when del node 2023-11-23 10:39:54 +08:00
eeff e20af56111 fix(core): add/update plugin memory corruption 2023-11-23 10:22:29 +08:00
fengzeroz 402f1ac7a1 Merge pull request #1688 from hxy7yx/main-2
add http api ft
2023-11-23 09:57:03 +08:00
fengzeroz b2dbd26762 Merge pull request #1689 from eeff/eeff/dev
feat: syslog message add priority
2023-11-23 09:55:24 +08:00
hxy7yx 12c58fe206 add http api ft 2023-11-22 18:28:28 +08:00
eeff e2067bf320 feat: syslog message add priority 2023-11-22 11:37:39 +08:00
fengzeroz 7d671eab23 Merge pull request #1684 from eeff/eeff/dev
fix: pid file work around fs.protected_regular
2023-11-22 10:06:52 +08:00
fengzeroz ac50ee2e52 Merge pull request #1687 from ZhouBox/main
feat(api):add version when get plugins info
2023-11-21 16:57:17 +08:00
xiang.zhou 603e3d8448 feat(api):add version when get plugins info 2023-11-21 16:23:20 +08:00
eeff 30d7c98d99 fix: pid file work around fs.protected_regular 2023-11-21 14:40:54 +08:00
fengzeroz a45e2d85de Merge pull request #1682 from fengzeroz/main
event: size 1024
2023-11-21 14:19:17 +08:00
fengzero c3ee176b05 event: size 1024 2023-11-21 06:13:30 +00:00
fengzeroz cea0ffaf16 Merge pull request #1680 from fengzeroz/main
chore(log): default size
2023-11-21 13:46:33 +08:00
fengzero 44673dab78 chore(log): default size 2023-11-21 03:41:40 +00:00
fengzeroz a99a147b80 Merge pull request #1679 from eeff/eeff/dev
fix: node cache SQL schema fk constraint
2023-11-20 15:23:34 +08:00
eeff 23523a0047 fix: node cache SQL schema fk constraint 2023-11-20 15:20:52 +08:00
fengzeroz ad6782654d Merge pull request #1675 from hxy7yx/main-2
add metrics ft case
2023-11-20 14:17:40 +08:00
fengzeroz 52e878c0ac Merge pull request #1677 from ZhouBox/main
feat(plugin):update plugin manager policy and update ft case
2023-11-20 14:06:58 +08:00
fengzeroz 6e0455ee64 Merge pull request #1676 from hxy7yx/main-1
merge user&password error code
2023-11-20 14:01:49 +08:00
hxy7yx 05fe61e58b merge user&password error code 2023-11-20 13:48:42 +08:00
xiang.zhou aebc24f162 feat(plugin):update plugin manager policy and update ft case 2023-11-17 20:38:03 +08:00
hxy7yx 8607d59c4e add metrics ft case 2023-11-17 15:38:48 +08:00
fengzeroz 174631e1bc Merge pull request #1669 from gc87/mqtt
feat(mqtt): add support for will message
2023-11-16 20:48:58 -06:00
gc87 e06d8a8e62 feat(mqtt): add support for will message 2023-11-16 18:45:28 +08:00
fengzeroz a2d794d8ed Merge pull request #1655 from hxy7yx/main-1
add subscription group count to node(app) state interface
2023-11-16 03:18:27 -06:00
fengzeroz 1aad6996fb Merge pull request #1670 from hxy7yx/main-3
improve: core/adapter log level
2023-11-16 15:28:22 +08:00
fengzeroz ae3ac9b5b0 Merge pull request #1671 from eeff/eeff/dev
refactor: reduce message size
2023-11-15 20:28:15 -06:00
eeff 92495c297f refactor: reduce write gtags message size 2023-11-16 00:40:47 +08:00
eeff be13500d24 refactor: reduce write tags message size 2023-11-16 00:18:03 +08:00
eeff 297b9b151d refactor: reduce write tag messages size 2023-11-15 18:20:43 +08:00
eeff ff1400cde6 refactor: reduce read group message size 2023-11-15 15:37:03 +08:00
eeff 41f77813e1 refactor: reduce trans data message size 2023-11-15 15:36:56 +08:00
fengzeroz 4795a4b97a Merge pull request #1670 from hxy7yx/main-3
improve: core/adapter log level
2023-11-14 21:34:12 -06:00
hxy7yx 78a61f1198 improve: core/adapter log level 2023-11-15 11:25:07 +08:00
fengzeroz b869590cb9 Merge pull request #1668 from eeff/eeff/dev
refactor: move request and response types into separate header
2023-11-14 20:01:02 -06:00
fengzeroz af95067ec7 Merge pull request #1667 from gc87/neu_type_ptr-leak-fix
fix(driver): neu_type_ptr leak
2023-11-14 19:46:33 -06:00
eeff ad3565c19e refactor: move request and response types into separate header 2023-11-14 16:32:07 +08:00
gc87 77defca959 fix(driver): neu_type_ptr leak 2023-11-14 15:28:47 +08:00
fengzeroz 65ef9e90d0 Merge pull request #1654 from ZhouBox/main
feat(metrics):add machine,clib,clib version and ft case
2023-11-14 00:00:29 -06:00
xiang.zhou afcd1f88cd feat(metrics):add machine,clib,clib version and ft case 2023-11-14 11:36:17 +08:00
fengzeroz 09c07609d5 Merge pull request #1662 from fengzeroz/main
chore(log): type con
2023-11-10 04:46:04 -06:00
fengzero 8dfe65e6f4 chore(log): type con 2023-11-10 10:45:06 +00:00
fengzeroz 6b23480717 Merge pull request #1658 from fengzeroz/main
fix(log): protocol log
2023-11-10 03:56:53 -06:00
fengzero 7e34947c8a chore: remove neuron in description 2023-11-10 09:50:39 +00:00
fengzero 0d37baca83 log: reduce alloc 2023-11-10 09:47:10 +00:00
fengzero 2b5d8efac1 fix(log): protocol log 2023-11-10 08:39:52 +00:00
fengzeroz b1075213d4 Merge pull request #1650 from fengzeroz/main
core: msg dup
2023-11-09 19:55:21 -06:00
fengzeroz bf12859ea9 Merge pull request #1653 from ZhouBox/main
ci:split pytest in same jobs
2023-11-08 19:43:40 -06:00
xiang.zhou 3042b11e88 ci:split pytest in same jobs 2023-11-08 15:12:29 +08:00
fengzero 64fe894dbe fix(core): free tags after free req 2023-11-08 06:03:00 +00:00
fengzero f5a21bf230 core: msg dup 2023-11-08 05:52:22 +00:00
fengzeroz 78825864c3 Merge pull request #1648 from hxy7yx/main-2
test(modbus):add test cases
2023-11-07 23:50:26 -06:00
hxy7yx dbf5089f8c test(modbus):add test cases 2023-11-08 09:52:41 +08:00
fengzeroz dae58cdc8a Merge pull request #1646 from eeff/eeff/dev
feat: add error code `NEU_ERR_LICENSE_TOKEN_NOT_FOUND`
2023-11-06 23:44:22 -06:00
eeff c551e667c8 feat: add error code NEU_ERR_LICENSE_TOKEN_NOT_FOUND 2023-11-07 11:41:36 +08:00
fengzeroz 8926a1dad7 Merge pull request #1621 from hxy7yx/main-3
feat(restful): Add API for single-request bulk tag addition across multiple groups
2023-11-05 20:38:24 -06:00
fengzeroz 2679214542 Merge pull request #1643 from eeff/eeff/dev
fix: utarray_steal dangling pointer
2023-11-02 20:52:29 -05:00
eeff ed57086b8a fix: utarray_steal dangling pointer 2023-11-02 16:45:54 +08:00
fengzeroz e4f703396c Merge pull request #1641 from fengzeroz/main
build: O0
2023-11-02 03:40:01 -05:00
fengzero c03642bf1b build: O0 2023-11-02 08:28:06 +00:00
fengzeroz d85f82a898 Merge pull request #1634 from fengzeroz/main
debug(connection): delay 50ms
2023-11-02 00:50:02 -05:00
fengzero 3ee1020860 ci: remove unused 2023-11-02 02:12:43 +00:00
fengzero 465fff7710 chore(conn): disconnect if udp recv error 2023-11-02 01:39:36 +00:00
fengzero ff9ea0109b debug(connection): delay 50ms 2023-11-02 01:39:36 +00:00
fengzeroz ae69f34769 Merge pull request #1637 from hxy7yx/main-1
fix memory leaks when get node state without any nodes
2023-11-01 04:37:03 -05:00
hxy7yx fb9e9cef46 fix memory leaks when get node state without any nodes 2023-11-01 16:36:45 +08:00
fengzeroz 18b8cc5408 Merge pull request #1631 from hxy7yx/main-1
log api supports independent core log
2023-11-01 01:35:25 -05:00
fengzeroz 90e81a23f6 Merge pull request #1633 from eeff/eeff/dev
fix: node cache sql schema
2023-11-01 00:52:32 -05:00
hxy7yx 9d77ccfaab Merge remote-tracking branch 'origin/main-1' into main-1 2023-11-01 13:45:28 +08:00
eeff 71acb2a7df fix: node cache sql schema 2023-11-01 12:31:05 +08:00
hxy7yx 611fc6c007 log api supports independent core log 2023-10-31 22:33:29 +08:00
hxy7yx d4ae3a6126 fix memory leaks 2023-10-31 10:00:43 +08:00
fengzeroz adbf5ad438 Merge pull request #1628 from ZhouBox/main
fixbug:value err using float type
2023-10-31 09:39:10 +08:00
xiang.zhou 9ac533c8c7 fixbug:value err using float type 2023-10-31 08:01:26 +08:00
fengzeroz 50842beea7 Merge pull request #1627 from eeff/eeff/dev
test: add ft get hardware token api
2023-10-30 15:57:38 +08:00
fengzeroz 09366ec674 Merge pull request #1626 from fengzeroz/main
event and connection delay
2023-10-30 14:36:20 +08:00
eeff 26b938927d test: add ft get hardware token api 2023-10-30 14:31:17 +08:00
fengzeroz d6963df69d Merge pull request #1626 from fengzeroz/main
event and connection delay
2023-10-27 17:42:47 +08:00
fengzero b8fcc51702 event: log get event fail 2023-10-27 09:25:59 +00:00
fengzero f24cc9c640 event: timer size 512 2023-10-27 09:25:11 +00:00
fengzero 163ea4a27c drive: default interval 100ms 2023-10-27 09:25:04 +00:00
fengzero d172e27275 debug: delay 20ms 2023-10-27 09:24:56 +00:00
fengzeroz dec7bff1e3 Merge pull request #1619 from fengzeroz/main
Revert "debug: write performance"
2023-10-27 15:18:02 +08:00
fengzero 14845d0fab Revert "debug: write performance"
This reverts commit cd3fab5453.
2023-10-27 07:09:19 +00:00
fengzeroz 22745dbdf7 Merge pull request #1614 from fengzeroz/main
write multiple group
2023-10-27 10:04:30 +08:00
fengzero ac0559d89b delay 10ms 2023-10-27 02:01:32 +00:00
fengzero 8485eaf1da delay 10ms 2023-10-27 02:01:27 +00:00
fengzero 2b870976c4 fix cppcheck 2023-10-27 01:58:39 +00:00
fengzero 32783096b7 write multiple group tag 2023-10-27 01:58:39 +00:00
fengzero cd3fab5453 debug: write performance 2023-10-27 01:58:39 +00:00
fengzeroz bdc6896aa9 Merge pull request #1618 from ZhouBox/main
fixbug:value err when  writing negative(example -40) using float type
2023-10-27 09:34:15 +08:00
xiang.zhou b96e8ff0cc fixbug:value err when writing negative using float type 2023-10-26 21:50:56 +08:00
fengzeroz 8c8c938b0a Merge pull request #1610 from fengzeroz/main
array deep clone
2023-10-26 17:53:34 +08:00
fengzero 4b98edef12 array deep clone 2023-10-26 09:44:54 +00:00
fengzeroz 920c0ade01 Merge pull request #1612 from eeff/eeff/dev
test: ft add virtual license api
2023-10-26 13:46:31 +08:00
eeff dae11c6614 test: ft add virtual license api 2023-10-26 12:14:07 +08:00
fengzeroz 27155d30a8 Merge pull request #1607 from ZhouBox/main
fix:api url err about write tags in ft
2023-10-25 16:26:15 +08:00
xiang.zhou 0cd43030fa fix:api url err about write tags in ft 2023-10-25 15:53:07 +08:00
fengzeroz fb4d8c0a56 Merge pull request #1604 from fengzeroz/main
group: default 300ms
2023-10-25 11:40:24 +08:00
fengzero cfa2d2b119 group: default 300ms 2023-10-25 03:28:14 +00:00
fengzeroz 24f173651b Merge pull request #1603 from eeff/eeff/dev
test: ft add template api
2023-10-24 10:57:45 +08:00
eeff ec74b1ad57 test: ft add template api 2023-10-24 10:28:54 +08:00
fengzeroz afaff3f2d7 Merge pull request #1601 from eeff/eeff/dev
test: ft api support restart neuron process
2023-10-23 16:20:12 +08:00
eeff 0884b88480 test: ft api support restart neuron process 2023-10-23 15:41:06 +08:00
fengzeroz 0a54266374 Merge pull request #1600 from eeff/eeff/dev
test: ft description support printing test arguments
2023-10-20 11:17:13 +08:00
eeff f01ac49d56 test: ft description support printing test arguments 2023-10-20 11:11:24 +08:00
fengzeroz 8a3d502431 Merge pull request #1599 from eeff/eeff/dev
test: augment ft neuron api
2023-10-20 10:49:07 +08:00
eeff 0219f46ed9 test: augment ft neuron api 2023-10-20 10:46:04 +08:00
fengzeroz 2a69ee369a Merge pull request #1596 from ZhouBox/test-ft
add ft tests case for plugin
2023-10-16 10:16:51 +08:00
xiang.zhou 22c0d44191 add ft tests case for plugin 2023-10-13 18:45:59 +08:00
fengzeroz 41d682c1b4 Merge pull request #1595 from fengzeroz/main
ft env
2023-10-13 16:41:49 +08:00
fengzero f6b94c0ce3 ft env 2023-10-13 07:32:31 +00:00
fengzeroz 8783bad19e Merge pull request #1590 from eeff/eeff/dev
feat(restful): tag read api support synchronous mode
2023-10-13 14:55:27 +08:00
fengzeroz 7018be06e5 Merge pull request #1594 from hxy7yx/main-2
remove api: file
2023-10-13 13:59:30 +08:00
hxy7yx d93c699694 remove api: file 2023-10-13 13:40:34 +08:00
eeff ddc5b1e69a test: add modbus sync read ft 2023-10-13 12:21:03 +08:00
eeff 4169265144 feat(mqtt): read request support synchronous read 2023-10-13 12:04:02 +08:00
eeff 38c54c5c28 feat(restful): tag read api support synchronous mode 2023-10-13 12:04:02 +08:00
eeff 79e1e385ae feat(core): support plugin synchronous read 2023-10-13 12:04:02 +08:00
fengzeroz d3c4d77e45 Merge pull request #1593 from fengzeroz/main
ft: rm modbus tcp
2023-10-13 09:59:51 +08:00
fengzero 527309d580 ft: rm modbus tcp 2023-10-13 01:58:01 +00:00
fengzeroz 99aa0e02aa Merge pull request #1592 from fengzeroz/main
ft: rm persistence file
2023-10-12 18:05:51 +08:00
fengzero 6e4f3e339b ft: rm persistence file 2023-10-12 10:04:27 +00:00
fengzeroz 1824ebb4a9 Merge pull request #1591 from fengzeroz/main
modbus pytest case
2023-10-12 15:25:54 +08:00
fengzero 3dd3e54e9c fix(ft): path 2023-10-12 07:15:21 +00:00
fengzero 91b9eb066d fix(ci): ui version 2023-10-12 07:12:15 +00:00
fengzero 2611199aeb ft: remove dup case 2023-10-12 07:09:46 +00:00
fengzero da05941676 modbus ft 2023-10-12 07:08:30 +00:00
fengzero 96a4158e78 version: 2.7.0-dev 2023-10-11 08:56:42 +00:00
fengzero fb924091dd driver test 2023-10-11 07:07:35 +00:00
fengzero 568100d869 ft: modbus tcp 2023-10-11 07:07:35 +00:00
fengzeroz 968870e662 Merge pull request #1586 from hxy7yx/main-2
verify that the length of modbus bytes point is even
2023-10-11 15:06:56 +08:00
hxy7yx e7bf3c74ca verify that the length of modbus bytes point is even 2023-10-11 13:48:18 +08:00
fengzeroz 00a8849807 Merge pull request #1584 from hxy7yx/main-2
update log_level api
2023-10-11 10:49:51 +08:00
hxy7yx c2471d7869 update log_level api 2023-10-11 10:32:43 +08:00
fengzeroz d81d90c194 Merge pull request #1583 from fengzeroz/main
ft: license api
2023-10-10 15:07:32 +08:00
fengzero aa8c32f46f ft: license api 2023-10-10 07:05:05 +00:00
fengzeroz e97dc9587d Merge pull request #1579 from fengzeroz/main
chore: replace nng_mtx with pthread_mtx
2023-10-10 10:53:08 +08:00
fengzero 0df2a94b3f chore: replace nng_mtx with pthread_mtx 2023-10-10 02:36:51 +00:00
fengzeroz 15fcbe2ae3 Merge pull request #1578 from fengzeroz/main
ci: pyft
2023-10-10 10:16:52 +08:00
fengzero bb52ef5d5f ci: pyft 2023-10-09 09:54:15 +00:00
fengzeroz 71f3b3cb24 Merge pull request #1576 from eeff/eeff/dev
fix: syslog format
2023-10-09 15:08:22 +08:00
fengzeroz a70e4a6e78 Merge pull request #1574 from fengzeroz/main
core: using lo udp replace pair1
2023-10-09 11:29:06 +08:00
fengzero 10e281573d fix(trans): memory leak 2023-10-09 03:18:14 +00:00
fengzero 3af0e237a5 chore: change ut directory 2023-10-09 02:57:20 +00:00
eeff ced9eccc14 fix: syslog format 2023-10-09 10:11:26 +08:00
fengzero bf4acdfb85 feat(core): trans_data msg are sent using a separate channel 2023-10-08 06:59:07 +00:00
fengzero ff87cc73b6 core: using lo udp replace pair1 2023-10-08 06:55:37 +00:00
fengzeroz 1c828623aa Merge pull request #1564 from eeff/eeff/dev
feat: support logs to remote syslog server
2023-10-08 14:33:05 +08:00
fengzeroz a77403712b Merge pull request #1552 from ZhouBox/main
feat:dynamic plugin management
2023-10-08 14:32:12 +08:00
eeff 94290e2a5c feat: support logs to remote syslog server 2023-10-07 15:45:08 +08:00
eeff 9e9413d492 feat: add syslog_host and syslog_port options 2023-10-07 14:34:01 +08:00
fengzeroz 0d2992257b Merge pull request #1572 from fengzeroz/main
fix(connection): server consume
2023-09-28 16:06:27 +08:00
fengzero 937fd4bb86 fix(connection): server consume 2023-09-28 07:46:53 +00:00
fengzeroz 84887e1d26 Merge pull request #1568 from eeff/eeff/fix
fix: guard against empty mqtt subscription topic
2023-09-28 15:05:42 +08:00
eeff c123b64f97 test: add ft test case for empty mqtt subscription topic 2023-09-27 18:04:33 +08:00
eeff da9e88cd84 fix: guard against empty mqtt subscription topic 2023-09-27 16:29:57 +08:00
fengzeroz a241c3af92 Merge pull request #1560 from fengzeroz/main
fix(timer): stop after callback done
2023-09-22 18:12:17 +08:00
fengzero b0c7854d12 fix(timer): stop after callback done 2023-09-22 10:02:20 +00:00
fengzeroz 555e77fe5b Merge pull request #1558 from fengzeroz/main
fix(event): lock event loop
2023-09-22 17:36:11 +08:00
fengzero 0bdb3ecc5e fix(event): lock event loop 2023-09-22 09:09:30 +00:00
fengzeroz 4cc7aaae63 Merge pull request #1557 from fengzeroz/main
fix(connection): compile warning
2023-09-22 14:03:50 +08:00
fengzero e4cb02b072 fix(connection): compile warning 2023-09-22 05:56:43 +00:00
fengzeroz 5ca91e1ffb Merge pull request #1553 from fengzeroz/main
fix(timer): use after free
2023-09-22 11:31:11 +08:00
fengzero 36b201879a fix(timer): use after free 2023-09-22 03:07:20 +00:00
fengzeroz 9efaf26dd1 Merge pull request #1528 from hxy7yx/main-2
Switch the log level and no longer automatically switch back
2023-09-21 19:42:25 +08:00
fengzeroz e09c37e8f7 Merge pull request #1523 from hxy7yx/main-1
core&modbus support ipv6
2023-09-21 19:41:49 +08:00
fengzeroz 6fbb4cbb28 Merge pull request #1551 from fengzeroz/main
log millisecond
2023-09-21 17:48:42 +08:00
fengzero 4a05c1ef52 ci: gcov directory 2023-09-21 09:47:06 +00:00
xiang.zhou bc67be3386 feat:dynamic plugin management 2023-09-21 17:40:37 +08:00
fengzero fec04c2b35 start report after read timer 2023-09-21 08:40:33 +00:00
fengzero ed2d350e36 log millisecond 2023-09-21 08:40:19 +00:00
fengzeroz df9a9acd72 Merge pull request #1549 from fengzeroz/main
ci: daily release
2023-09-21 16:35:09 +08:00
fengzero 3b19ed280e remove upload sdk 2023-09-21 08:29:05 +00:00
hxy7yx f91a162cce core&modbus support ipv6 2023-09-21 15:54:35 +08:00
fengzero 36fa7ef959 ci: create and update daily 2023-09-21 07:29:16 +00:00
hxy7yx 28cd412b97 Switch the log level to debug/notice and no longer automatically switch back 2023-09-21 15:06:57 +08:00
fengzeroz bd6746342c Merge pull request #1548 from fengzeroz/main
ci: checkout v4
2023-09-21 14:31:57 +08:00
fengzero c0ada25921 ci: checkout v4 2023-09-21 06:21:13 +00:00
fengzeroz 1ef64beb7e Merge pull request #1539 from eeff/eeff/dev
feat(monitor): move metrics api to restful plugin and remove singleton property
2023-09-21 14:04:27 +08:00
fengzeroz de8ae6e7eb Merge pull request #1542 from eeff/eeff/fix
chore: remove compiler warning
2023-09-21 10:48:46 +08:00
fengzeroz 37ad27f09f Merge pull request #1543 from hxy7yx/main-4
fix(modbus):rtu server recv&send
2023-09-21 10:46:55 +08:00
hxy7yx 87d0d371f0 fix(modbus):rtu server recv&send 2023-09-21 09:51:41 +08:00
eeff 85cb64673c chore: remove compiler warning 2023-09-20 17:22:51 +08:00
eeff 6a55e7b79c ci: run pyft depending on branch 2023-09-18 18:18:31 +08:00
eeff 5179eb2005 test: remove update node name test for monitor 2023-09-18 18:17:12 +08:00
eeff 5b79a351fa feat(monitor): make as non-singleton plugin 2023-09-18 11:54:31 +08:00
eeff 45d0a4ef12 feat(monitor): remove metrics http api 2023-09-18 11:54:31 +08:00
eeff e48638340d feat(restful): add metrics api 2023-09-18 11:54:31 +08:00
fengzeroz c44d097e78 Merge pull request #1536 from eeff/eeff/fix
fix(monitor): group update json event encoding
2023-09-15 09:29:11 +08:00
eeff 9456c59b2c fix(monitor): group update json event encoding 2023-09-14 17:51:41 +08:00
fengzeroz a58dd982d8 Merge pull request #1534 from fengzeroz/main
fix(driver): validate tag when loading tags
2023-09-14 14:52:29 +08:00
fengzero 5372e6b7bb fix(driver): validate tag when loading tags 2023-09-14 06:40:34 +00:00
fengzeroz b463e856bc Merge pull request #1531 from fengzeroz/main
fix(event): check io is null
2023-09-14 11:37:19 +08:00
fengzero 53de499f56 fix(event): check io is null 2023-09-14 03:17:20 +00:00
Rory 33ac2e7d33 ci: mark failed if cannot uploaded to codecov.io (#1530)
Signed-off-by: Rory Z <16801068+Rory-Z@users.noreply.github.com>
2023-09-13 14:02:38 +08:00
fengzeroz 512eca2d15 Merge pull request #1526 from eeff/eeff/dev
fix: zero out trailing hash key string
2023-09-13 10:58:12 +08:00
eeff 87afa777d0 fix: zero out trailing hash key string 2023-09-13 10:41:15 +08:00
fengzeroz 9f254665c6 Merge pull request #1521 from fengzeroz/main
fix(driver): check tags size
2023-09-11 16:29:37 +08:00
fengzero eaa9f21c65 fix(driver): check tags size 2023-09-11 08:19:04 +00:00
fengzeroz a2631f1ff6 Merge pull request #1519 from eeff/eeff/dev
feat: add virtual license sql schema
2023-09-08 17:45:47 +08:00
eeff ad5eb939d9 feat: add virtual license sql schema 2023-09-08 17:00:14 +08:00
fengzeroz d480b51cd6 Merge pull request #1516 from eeff/eeff/dev
fix(mqtt): enable SNI only when configured host is not IP address
2023-09-07 14:49:37 +08:00
eeff af1f1ecff1 fix(mqtt): enable SNI only when configured host is not IP address 2023-09-07 14:10:51 +08:00
fengzeroz eb2b14e680 Merge pull request #1515 from ZhouBox/main
fixbug:buffer size too small,host:port be truncated
2023-09-07 09:31:06 +08:00
xiang.zhou e0979d1759 fixbug:buffer size too small,host:port be truncated 2023-09-06 19:02:32 +08:00
fengzeroz 886e1df865 Merge pull request #1512 from ZhouBox/main
feat:add tag cache type
2023-09-06 18:21:18 +08:00
fengzeroz 639f05687b Merge pull request #1509 from eeff/eeff/fix
feat(restful): support update template group name
2023-09-06 18:20:59 +08:00
eeff aaaf68ddc3 test: add ft for template group name update 2023-09-06 17:46:34 +08:00
eeff 8edbee9f63 feat(restful): support update template group name 2023-09-06 17:46:34 +08:00
eeff 148cf4d212 feat(core): support update template group name 2023-09-06 17:46:34 +08:00
eeff 1c0bfa6263 feat: add json parser for updating template group 2023-09-06 17:46:34 +08:00
xiang.zhou a623b0c522 feat:add tag cache type 2023-09-06 17:39:09 +08:00
fengzeroz ffc82178a1 Merge pull request #1508 from eeff/eeff/dev
fix(metrics): update NEU_METRIC_TAGS_TOTAL when deleting group
2023-09-06 17:20:07 +08:00
eeff 56c1667210 fix(metrics): update NEU_METRIC_TAGS_TOTAL when deleting group 2023-09-06 11:33:36 +08:00
fengzeroz d10677be3a Merge pull request #1506 from fengzeroz/main
reduce retry time
2023-09-05 18:12:31 +08:00
fengzeroz bd9f244028 Merge pull request #1505 from ZhouBox/main
fixbug:send sigkill when stop timeout
2023-09-05 18:01:19 +08:00
fengzeroz c73dbaf966 Merge pull request #1501 from eeff/eeff/dev
fix(core): trigger group change when updating group name
2023-09-05 18:00:56 +08:00
fengzero 4e61ea9e3e reduce retry time 2023-09-05 09:58:52 +00:00
xiang.zhou 675d2d18a8 fixbug:send sigkill when stop timeout 2023-09-05 17:30:01 +08:00
eeff 1c605f0046 fix(core): trigger group change when updating group name 2023-09-05 14:43:35 +08:00
fengzeroz 9451a5ceb6 Merge pull request #1500 from ZhouBox/main
fixbug:log file name filtering error
2023-09-05 10:25:20 +08:00
xiang.zhou 7fe5ec735e fixbug:log file name filtering error 2023-09-05 09:56:08 +08:00
Rory de6f2c118f docs: add code cover badge (#1498)
Signed-off-by: Rory Z <16801068+Rory-Z@users.noreply.github.com>
2023-09-05 09:49:56 +08:00
fengzeroz bf2bf43838 Merge pull request #1496 from ZhouBox/main
fixbug:index error when endian in BL or LB
2023-09-05 09:48:35 +08:00
jinfahua e6c99ecb82 Code coverage CI for Neuron (#1491)
* ci: add code coverage

* ci: add code coverage

* ci: add code coverage

* ci: add code coverage

* ci: add code coverage

* Update check.yml

* upload result for unit test and pytest

* Try to remove the token
2023-09-05 09:23:21 +08:00
xiang.zhou 02f90c7780 fixbug:index error when endian in BL or LB 2023-09-05 08:45:53 +08:00
fengzeroz 472c655a79 Merge pull request #1492 from fengzeroz/main
fix(core): trans data dup
2023-09-04 14:26:49 +08:00
fengzero fad0311a91 fix(core): trans data dup 2023-09-04 06:24:03 +00:00
fengzeroz 0a214df522 Merge pull request #1489 from fengzeroz/main
increase cache expire time
2023-09-01 15:34:13 +08:00
fengzero 828503a672 increase cache expire time 2023-09-01 07:32:27 +00:00
fengzeroz df425e6a06 Merge pull request #1488 from fengzeroz/main
connection: recv all msg
2023-09-01 15:01:51 +08:00
fengzero d17235b7c3 connection: recv all msg 2023-09-01 06:59:46 +00:00
fengzeroz 31db617802 Merge pull request #1487 from eeff/eeff/dev
fix(mqtt): handle group update
2023-09-01 14:26:57 +08:00
eeff f503248f33 chore(ekuiper): handle group update 2023-09-01 11:55:55 +08:00
eeff 2b3690826f fix(mqtt): handle group update 2023-09-01 11:55:55 +08:00
eeff cb2fce243f fix(core): notify app node about group update 2023-09-01 11:55:55 +08:00
fengzeroz bb1427581d Merge pull request #1485 from hxy7yx/main-1
Unit Test Coverage Statistics
2023-09-01 09:49:19 +08:00
hxy7yx 07e93b35dc Unit Test Coverage Statistics 2023-08-31 15:28:10 +08:00
fengzeroz eb6f84c560 Merge pull request #1484 from eeff/eeff/dev
fix(mqtt): handle driver name update
2023-08-31 15:09:54 +08:00
eeff efc7ece5d8 fix(mqtt): handle driver delete 2023-08-31 15:02:21 +08:00
eeff 3dca78e780 fix(ekuiper): handle driver name update 2023-08-31 14:41:18 +08:00
eeff 5d781a1340 fix(mqtt): handle driver name update 2023-08-31 14:41:17 +08:00
eeff da4c54d7f2 fix(core): forward driver NEU_REQ_UPDATE_NODE message to app 2023-08-31 14:37:53 +08:00
eeff 6ebc297762 chore: monitor and mqtt schema client-id use random str 2023-08-31 14:37:53 +08:00
fengzeroz 3ae88a1cc1 Merge pull request #1483 from eeff/eeff/dev
chore: monitor and mqtt schema `client-id` use random str
2023-08-31 13:41:04 +08:00
eeff 3ac51855a0 chore: monitor and mqtt schema client-id use random str 2023-08-31 11:38:33 +08:00
fengzeroz d9e05c9775 Merge pull request #1481 from fengzeroz/main
fix: check tags is null
2023-08-31 11:01:40 +08:00
fengzero 2ef8ed5800 fix: check tags is null 2023-08-30 08:46:17 +00:00
fengzeroz a880447545 Merge pull request #1480 from eeff/eeff/dev
feat: add metrics `tags_total`
2023-08-29 15:39:32 +08:00
eeff cdd7e1af33 feat: add metrics tags_total 2023-08-29 14:44:36 +08:00
fengzeroz ac24d102a1 Merge pull request #1479 from eeff/eeff/dev
feat(mqtt): remove `keypass` setting
2023-08-28 16:54:45 +08:00
eeff 5e6d0821e4 feat(mqtt): remove keypass setting 2023-08-28 15:40:23 +08:00
fengzeroz 874ca07115 Merge pull request #1476 from fengzeroz/main
core/modbus: support bytes
2023-08-28 11:37:48 +08:00
fengzeroz 900e4b9030 Merge pull request #1477 from ZhouBox/main
fixbug:check env and config file setting
2023-08-25 18:02:49 +08:00
xiang.zhou 448d1bbea7 fixbug:check env and config file setting 2023-08-25 17:35:27 +08:00
fengzeroz 2fe62b1559 Merge pull request #1473 from eeff/eeff/dev
feat(restful): add template batch instantiation api
2023-08-25 17:17:38 +08:00
fengzero 88a96c63fd core/modbus: support bytes 2023-08-25 09:15:58 +00:00
fengzeroz f8ebf93df1 Merge pull request #1474 from ZhouBox/main
feat:rm log files when node delete or rename
2023-08-25 17:10:49 +08:00
fengzeroz 1878894925 Merge pull request #1475 from eeff/eeff/fix
feat: add metrics for last group data acquisition error
2023-08-25 17:09:41 +08:00
xiang.zhou 012f197e68 feat:rm log files when node delete or rename 2023-08-25 16:05:13 +08:00
eeff 72972360fd feat: add metrics for last group data acquisition error 2023-08-25 15:24:55 +08:00
eeff 72abd807d9 test: add template batch instantiation ft 2023-08-24 18:14:19 +08:00
eeff 8c4c06b058 feat(restful): add template batch instantiation api 2023-08-24 18:13:49 +08:00
eeff 83eb9017e2 feat(core): handle template batch instantiation requests 2023-08-24 18:13:49 +08:00
eeff cab9d6b15f feat: add json parser for instantiating templates 2023-08-24 16:40:30 +08:00
fengzeroz 6d380e5b43 Merge pull request #1470 from fengzeroz/main
package: neuron.json
2023-08-24 14:40:19 +08:00
fengzero 6375abe3d0 package: neuron.json 2023-08-24 06:38:59 +00:00
fengzeroz 798b184ea6 Merge pull request #1464 from ZhouBox/main
feat:waiting exit when using stop cmd
2023-08-24 14:29:48 +08:00
fengzeroz ed70caff86 Merge pull request #1469 from ZhouBox/config
feat:support config file
2023-08-24 14:29:39 +08:00
fengzeroz 3d874cd3af Merge pull request #1468 from fengzeroz/main
core: neu_type_ptr
2023-08-24 14:27:27 +08:00
fengzero 5c0c6f6e06 core: neu_type_ptr 2023-08-24 06:09:18 +00:00
xiang.zhou e0054c01ef feat:support config file 2023-08-23 18:39:42 +08:00
fengzeroz 769c7b9997 Merge pull request #1451 from hxy7yx/main-3
feat(modbus):write multiple tags
2023-08-23 17:27:00 +08:00
fengzeroz cc4f062424 Merge pull request #1466 from eeff/eeff/dev
fix(restful): update group name check for name confliction
2023-08-23 17:13:05 +08:00
fengzeroz fb67324035 Merge pull request #1467 from eeff/eeff/fix
fix(mqtt): `cache-sync-interval` setting default to 100 when cache disabled
2023-08-23 16:49:20 +08:00
eeff 6b96510f9e fix(mqtt): cache-sync-interval setting default to 100 when cache disabled 2023-08-23 16:42:38 +08:00
hxy7yx 8ecc0fd367 Merge branch 'main' into main-3 2023-08-23 14:58:02 +08:00
hxy7yx d0e091fafe (modbus):tags sorting, merge reqs 2023-08-23 14:57:04 +08:00
eeff e5e0ee83f4 fix(restful): update group name check for name confliction 2023-08-23 14:45:33 +08:00
fengzeroz 6afaf4d451 Merge pull request #1465 from eeff/eeff/dev
fix(template): add/validate tags in template instantiation
2023-08-23 11:34:02 +08:00
eeff 1ed632898b fix(template): add/validate tags in template instantiation 2023-08-22 18:16:30 +08:00
xiang.zhou f4b2d115a7 feat:waiting exit when using stop cmd 2023-08-22 13:38:08 +08:00
fengzeroz 010484a4f5 Merge pull request #1462 from eeff/eeff/dev
fix(mqtt): SSL check server name
2023-08-22 10:12:22 +08:00
eeff 60b245218f fix(mqtt): SSL check server name 2023-08-21 18:35:15 +08:00
fengzeroz af70272c93 Merge pull request #1460 from fengzeroz/main
check license when add node/tag
2023-08-21 18:01:49 +08:00
fengzero 85ec40684a check license when add node/tag 2023-08-18 09:20:24 +00:00
fengzero da986a666f plugin: add/del tags 2023-08-18 08:48:14 +00:00
fengzero eab66dd9fa plugin: add/del tags 2023-08-18 08:46:15 +00:00
fengzeroz 803e8bdcf6 Merge pull request #1431 from ZhouBox/main
feat:add cmd config file
2023-08-17 16:14:11 +08:00
fengzeroz b50f993eb5 Merge pull request #1457 from eeff/eeff/dev
fix(metrics): use neuron process rss instead of system used memory
2023-08-17 16:13:59 +08:00
eeff 400115aa68 fix(metrics): use neuron process rss instead of system used memory 2023-08-16 15:25:38 +08:00
fengzeroz 5de7d7a1b1 Merge pull request #1456 from eeff/eeff/dev
fix(mqtt): cache-sync-interval setting default to 100
2023-08-16 10:42:40 +08:00
eeff 8db716e8b3 fix(mqtt): cache-sync-interval setting default to 100 2023-08-16 10:27:26 +08:00
fengzeroz 7db7a47c10 Merge pull request #1455 from eeff/eeff/dev
feat(mqtt): add cache-sync-interval setting
2023-08-16 10:19:23 +08:00
eeff 3430e1a14b feat(mqtt): add cache-sync-interval setting 2023-08-15 17:46:20 +08:00
eeff db5ac155cd feat: add function neu_mqtt_client_set_cache_sync_interval 2023-08-15 17:46:20 +08:00
fengzeroz 42d25570f9 Merge pull request #1453 from hxy7yx/main-2
ci pyft
2023-08-15 15:16:45 +08:00
hxy7yx a7cb8afd93 ci pyft 2023-08-14 17:37:46 +08:00
hxy7yx 863f181e2a feat(modbus):write multiple tags 2023-08-14 16:23:22 +08:00
fengzeroz 2c48c37b5c Merge pull request #1450 from eeff/eeff/dev
fix(core): heap use after free
2023-08-14 15:01:10 +08:00
eeff 89096f423c fix(core): heap use after free 2023-08-14 14:05:45 +08:00
fengzeroz 0333ff04cf Merge pull request #1449 from eeff/eeff/dev
feat(restful): group update api supports renaming group
2023-08-14 11:01:08 +08:00
fengzeroz 704d194539 Merge pull request #1446 from hxy7yx/main-1
correct modbus_read_max_byte
2023-08-14 10:19:56 +08:00
eeff 0d648cad5b test: add group update functionality tests 2023-08-11 10:26:03 +08:00
eeff dca8f4a9b7 feat(restful): group update api supports renaming group 2023-08-11 10:26:03 +08:00
eeff 07bd668dc2 fix(monitor): group update event encoding 2023-08-11 10:26:03 +08:00
eeff 12f72e8873 feat(core): handling update group name 2023-08-11 10:26:03 +08:00
eeff 6bbbe1771e feat: update group json parser for group renaming 2023-08-11 10:26:03 +08:00
hxy7yx 597543f226 correct modbus_read_max_byte 2023-08-10 17:44:03 +08:00
fengzeroz b02b095534 Merge pull request #1445 from fengzeroz/main
fix cross build
2023-08-10 16:46:09 +08:00
fengzero 4de2041842 fix cross build 2023-08-10 08:26:07 +00:00
fengzeroz a69a5c371a Merge pull request #1444 from eeff/eeff/dev
feat(restful): add api for subscribing multiple groups
2023-08-07 18:17:33 +08:00
eeff 7d078192b8 feat: add subscription update ft tests 2023-08-07 17:26:06 +08:00
eeff f022f1c388 feat(restful): add api for subscribing multiple groups 2023-08-07 14:38:18 +08:00
eeff d41a83bcfe feat(core): handle subscribe multiple groups 2023-08-07 14:38:18 +08:00
eeff 4763d1cdf9 feat: add json parser for subscribing multiple groups 2023-08-07 14:38:18 +08:00
fengzeroz 8bcb5c6725 Merge pull request #1437 from fengzeroz/main
core/mqtt/ekuiper: support for optional fields
2023-08-07 14:16:47 +08:00
xiang.zhou 2f4af2ff01 feat:add cmd config file 2023-08-04 12:32:42 +08:00
fengzero 05d51c88a2 fix(modbus): free invalid memory 2023-08-03 09:08:01 +00:00
fengzero af6146cd83 http: support for optional fields 2023-08-03 09:06:14 +00:00
fengzero 09109b5de9 ekuiper: support for optional fields 2023-08-03 09:06:14 +00:00
fengzero 75dd38c206 core/mqtt: support for optional fields 2023-08-03 09:06:14 +00:00
fengzeroz 9d52eb7da6 Merge pull request #1440 from gc87/persist
[main]fix(fx): plugin name
2023-08-03 17:00:07 +08:00
fengzeroz da00649547 Merge pull request #1443 from hxy7yx/main-1
fix node count of monitor
2023-08-03 16:58:23 +08:00
hxy7yx b72284f62d fix node count of monitor 2023-08-03 16:21:15 +08:00
fengzeroz 48fa9c3b75 Merge pull request #1439 from eeff/eeff/dev
Handle subscription update for eKuiper and MQTT plugin
2023-08-03 09:51:03 +08:00
gc87 eaf2796fff fix(fx): plugin name 2023-08-03 04:15:37 +08:00
eeff 1e296a5872 feat(mqtt): handle subscription update 2023-08-02 18:07:48 +08:00
eeff d989a4b48b feat(ekuiper): handle subscription update 2023-08-02 18:07:48 +08:00
eeff e97e7aa043 fix(core): check against NULL subscription params 2023-08-02 18:07:48 +08:00
fengzeroz 3031a31010 Merge pull request #1438 from eeff/eeff/dev
feat(restful): add group subscribe update api
2023-08-02 16:36:07 +08:00
eeff 1b3d383d64 feat(core): fulfill update subscription params requests 2023-08-02 16:22:40 +08:00
eeff 5f0e6987f7 feat(restful): add group subscribe update api 2023-08-02 16:22:40 +08:00
eeff f4c4586696 feat(core): add message type NEU_REQ_UPDATE_SUBSCRIBE_GROUP 2023-08-02 16:22:40 +08:00
fengzeroz e7f81c18d2 Merge pull request #1429 from eeff/eeff/dev
feat(metrics): reset metric values to zero when node stopped
2023-08-01 10:16:18 +08:00
fengzeroz e6ce4c2bce Merge pull request #1432 from eeff/eeff/fix
fix: send signal to process group when neuron stopped
2023-07-31 16:49:53 +08:00
eeff a003e87ab1 fix: send signal to process group when neuron stopped 2023-07-31 15:43:02 +08:00
eeff d9cb6c3e55 feat(metrics): reset metric values to zero when node stopped 2023-07-31 11:00:15 +08:00
Xiang Zhou 12a807c215 Merge pull request #1424 from ZhouBox/main
feat:run with env settings
2023-07-31 09:25:34 +08:00
xiang.zhou a33057641c feat:add cmd env setting 2023-07-28 17:25:00 +08:00
fengzeroz aef29dd615 Merge pull request #1426 from hxy7yx/main-1
remove modbus-qh-tcp
2023-07-28 16:59:21 +08:00
fengzeroz 00df5a58c2 Merge pull request #1427 from fengzeroz/main
fix(driver): memory leak
2023-07-28 16:55:13 +08:00
fengzero e249a39238 fix(driver): memory leak 2023-07-28 08:36:58 +00:00
hxy7yx ccce9750c1 remove modbus-qh-tcp 2023-07-28 11:35:49 +08:00
fengzeroz d70dae2c77 Merge pull request #1422 from hxy7yx/main-1
Log optimization
2023-07-27 14:02:36 +08:00
fengzeroz 2d92f848f4 Merge pull request #1421 from ZhouBox/main
feat:add cmd about stopping running neuron
2023-07-27 14:01:16 +08:00
xiang.zhou 5cbc42a61b fix:use long define pid_t and modify ret=0 2023-07-27 11:04:47 +08:00
hxy7yx ba03318f04 Log optimization 2023-07-26 17:21:22 +08:00
xiang.zhou b8fdf5a1c2 feat:add cmd about stopping running neuron
fix:close file fd
2023-07-26 14:15:02 +08:00
fengzeroz d7f1ae1d9b Merge pull request #1418 from hxy7yx/main-3
add modbus ut
2023-07-25 17:51:00 +08:00
fengzeroz bf9ed20d41 Merge pull request #1417 from hxy7yx/main-2
reset response_size when retry
2023-07-25 17:40:50 +08:00
hxy7yx 8aa7957456 add modbus ut 2023-07-25 17:28:25 +08:00
hxy7yx d968728b15 reset response_size when retry 2023-07-25 16:34:32 +08:00
fengzeroz c6b39a1658 Merge pull request #1411 from fengzeroz/main
fix(driver): cannot be uploaded in time when values have not changed
2023-07-25 14:56:19 +08:00
fengzeroz 8e5e69fc64 Merge pull request #1410 from hxy7yx/main-2
prevent memory overflow in plugin_handle
2023-07-25 14:51:33 +08:00
fengzeroz 293a575d42 Merge pull request #1415 from eeff/eeff/dev
fix(persist): refresh node and tag count when deleting nodes and groups
2023-07-25 14:46:46 +08:00
eeff 689e7a9777 fix(persist): refresh node and tag count when deleting nodes and groups 2023-07-25 14:21:38 +08:00
fengzero c96fb8718a fix(driver): cannot be uploaded in time when values have not changed 2023-07-24 07:35:32 +00:00
hxy7yx 3becc4fe79 prevent memory overflow in plugin_handle 2023-07-24 13:50:16 +08:00
fengzeroz 7efe3f3453 Merge pull request #1409 from eeff/eeff/dev
fix: persist node_count and tag_count to signed number
2023-07-24 11:40:12 +08:00
fengzeroz d427c74feb Merge pull request #1406 from fengzeroz/main
feat(driver): new interface for updating tags, tags can carry metadata
2023-07-24 11:40:00 +08:00
eeff 97dc620d0e fix: persist node_count and tag_count to signed number 2023-07-21 16:47:53 +08:00
fengzero 7ea2bbf35e feat(driver): new interface for updating tags, tags can carry metadata 2023-07-21 08:28:51 +00:00
lxm bb70cbf860 Merge pull request #1402 from fengzeroz/main
fix(driver): if the state of the node was stopped before restart, sto…
2023-07-20 11:20:10 +08:00
lxm 635ccbf91c Merge pull request #1400 from hxy7yx/main-2
optimize modbus
2023-07-20 11:13:42 +08:00
hxy7yx 928289eaf1 optimize modbus 2023-07-19 16:40:34 +08:00
fengzero 78e1cfe46d fix(driver): if the state of the node was stopped before restart, stop the node 2023-07-19 06:46:31 +00:00
fengzeroz 7bf3cfdcd4 Merge pull request #1398 from fengzeroz/main
feat(driver): update and report immediately
2023-07-19 14:39:49 +08:00
fengzero 9cc4924354 fix(driver): wrong multiplication cal when writing 2023-07-19 06:15:58 +00:00
fengzero 759b1ad573 feat(driver): update and report immediately 2023-07-18 06:34:10 +00:00
eeff 6f012790e5 Merge pull request #1390 from eeff/eeff/dev
feat: add persister utilities for getting node/tag count
2023-07-12 15:06:46 +08:00
eeff 398608ed7a feat: add persister utilities for getting node/tag count 2023-07-12 14:35:50 +08:00
lxm 135dc67932 Merge pull request #1385 from lixiumei123/main
fix tags with write-only attribute will send read commands
2023-07-10 16:07:39 +08:00
fengzeroz 6bf329e846 Merge pull request #1380 from fengzeroz/main
serial: smart link
2023-07-10 13:36:54 +08:00
liyuxi 21ab68c7a7 fix tags with write-only attribute will send read commands 2023-07-10 03:38:43 +00:00
fengzero 1989034666 fix cppcheck 2023-07-10 03:37:56 +00:00
fengzero 1e26731d19 fix(serial): return fd 2023-07-10 02:24:12 +00:00
fengzero 5de8ef508c serial: using smart link 2023-07-07 09:13:01 +00:00
fengzero 683903c052 serial: smart link 2023-07-07 07:23:38 +00:00
lxm 3179c0d5ba Merge pull request #1377 from hxy7yx/main-2
delete transport_mode in modbus rtu
2023-07-06 09:53:39 +08:00
hxy7yx 1bb49b5df1 delete transport_mode in modbus rtu 2023-07-05 18:09:28 +08:00
lxm 13db732355 Merge pull request #1362 from hxy7yx/main-2
optimization of password error reporting
2023-07-05 15:17:23 +08:00
eeff d8295936d1 Merge pull request #1369 from eeff/eeff/fix
feat(mqtt): handle write tags in backward compatible way
2023-07-04 10:17:35 +08:00
lxm 3efc35c859 Merge pull request #1373 from lixiumei123/main
[main]delete file plugin
2023-07-03 16:54:13 +08:00
lxm 8022dfc4b1 Merge pull request #1370 from hxy7yx/main-1
delete modbus rtu udp temporarily
2023-07-03 16:07:21 +08:00
liyuxi c92dd19dcf delete file plugin 2023-07-03 07:37:16 +00:00
eeff 7abfeb9fec feat(mqtt): handle write tags in backward compatible way 2023-07-03 14:32:44 +08:00
eeff 5b7d19ceaa feat: add json parser neu_json_write_t 2023-07-03 14:32:44 +08:00
hxy7yx 341ec95d66 delete modbus rtu udp temporarily 2023-07-03 14:05:09 +08:00
fengzeroz 7b826ba951 Merge pull request #1359 from hxy7yx/main
exclude license when downloading logs
2023-07-03 13:53:52 +08:00
hxy7yx 41cbbac54f Merge branch 'main' into main-2 2023-06-28 11:44:57 +08:00
hxy7yx b03935cce3 optimization of password error reporting 2023-06-28 11:43:42 +08:00
eeff 3f30f4ffcb Merge pull request #1355 from eeff/eeff/fix
fix(ekuiper): check setting host and port is available
2023-06-28 11:06:04 +08:00
hxy7yx c75036a6c6 exclude license when downloading logs 2023-06-28 09:51:17 +08:00
eeff 62b7cffa6f fix(ekuiper): check setting host and port is available 2023-06-27 15:24:05 +08:00
lxm 7c547f0798 Merge pull request #1346 from hxy7yx/main
add metrics ft
2023-06-27 09:50:54 +08:00
fengzeroz 9a8943ebb9 Merge pull request #1357 from fengzeroz/main
improve(connection): donot close fd if tty read returns 0
2023-06-26 16:01:59 +08:00
fengzero 2b6acdf749 improve(connection): donot close fd if tty read returns 0 2023-06-26 07:22:50 +00:00
fengzeroz 1f42566c40 Merge pull request #1353 from eeff/eeff/dev
fix(restful): template api handle NEU_ERR_PLUGIN_NAME_TOO_LONG
2023-06-25 16:31:24 +08:00
fengzeroz 305cc22967 Merge pull request #1350 from fengzeroz/main
fix(connection): check result of recv
2023-06-25 16:30:41 +08:00
eeff c21ff1eaf4 fix(restful): template api handle NEU_ERR_PLUGIN_NAME_TOO_LONG 2023-06-25 10:28:11 +08:00
fengzero 527896f676 fix(connection): check result of recv 2023-06-21 08:59:01 +00:00
hxy7yx 8b68a910f3 add metrics ft 2023-06-21 15:11:03 +08:00
fengzeroz 94374788e1 Merge pull request #1347 from fengzeroz/main
fix(driver): delay write tag
2023-06-21 15:05:13 +08:00
fengzero 5854bb0629 fix(driver): delay write tag 2023-06-21 03:37:26 +00:00
fengzeroz 58c14e10d3 Merge pull request #1342 from fengzeroz/main
chore(ci): ui version 2.5.0
2023-06-19 11:44:37 +08:00
fengzero 99f294f244 Revert "fix(ekuiper): check ip address listenable"
This reverts commit 27730a16f3.
2023-06-16 10:54:53 +00:00
fengzero fefda5a342 chore(ci): ui version 2.5.0 2023-06-16 07:02:41 +00:00
fengzeroz fc24aefaac Merge pull request #1336 from fengzeroz/main
fix(connection): connection cannot be recovered when the line is abno…
2023-06-16 11:54:33 +08:00
fengzero 7ac12fb8f9 fix(connection): connection cannot be recovered when the line is abnormal 2023-06-16 03:08:27 +00:00
fengzeroz 6751a61690 Merge pull request #1341 from hxy7yx/main
Change the log-level 'info' to 'notice'
2023-06-16 11:08:07 +08:00
hxy7yx c534d374ec Change the log-level 'info' to 'notice' 2023-06-16 10:17:31 +08:00
fengzeroz 8aa99f4e75 Merge pull request #1334 from eeff/eeff/dev
feat: remove neuronex sql schema
2023-06-15 15:32:14 +08:00
eeff 420a27b790 feat(restful): remove ekuiper http api 2023-06-15 15:30:43 +08:00
eeff 9de58db4ac feat: remove neuronex sql schema 2023-06-15 15:12:07 +08:00
eeff 0c44bc5330 Merge pull request #1332 from eeff/eeff/dev
fix(restful): check node name length in node update request
2023-06-15 14:45:12 +08:00
eeff d05c613399 fix(restful): check node name length in node update request 2023-06-15 14:33:01 +08:00
fengzeroz 005d7c464c Merge pull request #1329 from hxy7yx/main
update error codes in ft
2023-06-15 10:30:41 +08:00
fengzeroz de97804600 Merge pull request #1328 from eeff/eeff/dev
fix: make template request more robust
2023-06-15 09:51:29 +08:00
fengzeroz 9121517c1a Merge pull request #1327 from eeff/eeff/fix
fix(ekuiper): check ip address listenable
2023-06-15 09:50:42 +08:00
fengzeroz 6bc52df1a9 Merge pull request #1322 from fengzeroz/main
version: 2.6.0-dev
2023-06-15 09:34:54 +08:00
eeff cef2c9efb6 fix: make template request more robust 2023-06-14 18:28:55 +08:00
eeff 9a5946b9df fix: neu_url_decode return value on buffer overflow 2023-06-14 18:28:55 +08:00
hxy7yx 3df3c3fe8a update error codes in ft 2023-06-14 18:03:31 +08:00
eeff 27730a16f3 fix(ekuiper): check ip address listenable 2023-06-14 17:39:08 +08:00
fengzero 80116f848a version: 2.6.0-dev 2023-06-14 05:22:16 +00:00
fengzeroz 9f9b685251 Merge pull request #1321 from hxy7yx/main
update error codes in ft
2023-06-12 15:46:35 +08:00
eeff 925bf085ce Merge pull request #1320 from eeff/eeff/dev
feat(core): forward add/del ndriver map message to ndriver node
2023-06-12 15:43:31 +08:00
hxy7yx c7a5bb7b03 update error codes in ft 2023-06-12 15:16:28 +08:00
eeff ded6a537d1 feat(core): forward add/del ndriver map message to ndriver node 2023-06-12 14:56:25 +08:00
eeff ff5ab12d47 fix: neu_json_encode_ndriver_tag 2023-06-12 14:56:25 +08:00
fengzeroz a4d96ce8b8 Merge pull request #1316 from fengzeroz/main
feat(core): support writing multiple tag in one request
2023-06-12 14:24:00 +08:00
fengzero fadca0f2c9 feat(core): support writing multiple tag in one request 2023-06-12 06:14:28 +00:00
fengzeroz 685d756a9f Merge pull request #1318 from hxy7yx/work1
update dafault retry_interval of modbus
2023-06-12 13:47:17 +08:00
hxy7yx 1d15ae31c8 update dafault retry_interval of modbus 2023-06-09 15:01:09 +08:00
eeff badd041718 Merge pull request #1317 from eeff/eeff/dev
fix: segfault on update license request
2023-06-09 14:54:18 +08:00
eeff dfdcb6e60b fix: segfault on update license request 2023-06-09 14:13:42 +08:00
eeff ee40ec68a8 Merge pull request #1315 from eeff/eeff/dev
feat(core): add adapter type NEU_NA_TYPE_NDRIVER
2023-06-09 10:24:55 +08:00
eeff 9c659c8a99 feat(core): add adapter type NEU_NA_TYPE_NDRIVER 2023-06-08 15:00:43 +08:00
eeff 09e06ee959 Merge pull request #1314 from eeff/eeff/dev
fix: send update license request to all type of adapters
2023-06-07 18:19:20 +08:00
fengzeroz a0cedb5ae6 Merge pull request #1313 from hxy7yx/main
Login interface verifies password length
2023-06-07 17:58:19 +08:00
eeff 149093fa7a fix: send update license request to all type of adapters 2023-06-07 17:54:33 +08:00
hxy7yx 89b0dab46d Login interface verifies password length 2023-06-07 15:52:52 +08:00
fengzeroz d710190fc9 Merge pull request #1310 from fengzeroz/main
Revert "chore(event): exit if error occurs"
2023-06-07 15:45:57 +08:00
fengzeroz 3a88e0bca8 Merge pull request #1306 from hxy7yx/main
Support retry when modbus read fails.
2023-06-07 15:43:00 +08:00
fengzero 6f0b8b0418 Revert "chore(event): exit if error occurs"
This reverts commit d82d5041e9.
2023-06-07 07:33:33 +00:00
hxy7yx 00edaadd4c Support retry when modbus read fails. 2023-06-07 14:44:16 +08:00
eeff 291fa29ae9 Merge pull request #1309 from eeff/eeff/dev
feat(restful): add ndriver update tag param/info api
2023-06-07 10:24:57 +08:00
eeff 46593907b4 feat(restful): add ndriver update tag param/info api 2023-06-06 17:38:16 +08:00
eeff a9d394a274 feat(core): add message for ndriver tag param/info update 2023-06-06 17:38:16 +08:00
eeff b3c106aeab feat: add json parser for ndriver tag param/info update 2023-06-06 17:18:30 +08:00
eeff cbb17ecc61 Merge pull request #1307 from eeff/eeff/dev
feat(restful): add get ndriver tags api
2023-06-06 10:38:28 +08:00
eeff f60e0903a6 fix: neu_http_get_param boundary check 2023-06-05 18:49:06 +08:00
eeff 129a7a8b56 feat(restful): add get ndriver tags api 2023-06-05 18:39:55 +08:00
eeff c35d12f854 feat: add json parser for getting ndriver tags 2023-06-05 18:39:55 +08:00
eeff 776b031cd6 feat(core): add message type for getting ndriver tags 2023-06-05 18:39:55 +08:00
eeff 4f3f729817 feat: add type neu_ndriver_tag_t 2023-06-05 18:14:00 +08:00
fengzeroz 9b0464b4c4 Merge pull request #1304 from fengzeroz/main
fix(connection): do not call connected in recv
2023-06-05 15:59:22 +08:00
fengzero 6607fe4ec7 fix(connection): do not call connected in recv 2023-06-05 03:13:07 +00:00
eeff 5972c59b88 Merge pull request #1301 from eeff/eeff/dev
feat(restful): add get ndriver maps api
2023-06-02 10:14:00 +08:00
fengzeroz 42864923fe Merge pull request #1297 from lixiumei123/main
fix(file plugin):too long file length leads to crash
2023-06-01 17:48:44 +08:00
fengzeroz e42f9a77dc Merge pull request #1298 from fengzeroz/main
fix(connection): disconnect if decode fail
2023-06-01 17:46:24 +08:00
fengzero 189995c944 fix(connection): disconnect if decode fail 2023-06-01 09:34:16 +00:00
eeff 73313e2230 feat(restful): add get ndriver maps api 2023-06-01 16:57:12 +08:00
eeff d0861c0802 feat(core): add get ndriver map req/resp_messages 2023-06-01 16:49:39 +08:00
eeff c687d1e53e feat: add json parser for getting ndriver maps 2023-06-01 16:40:25 +08:00
eeff 3c591b6456 Merge pull request #1300 from eeff/eeff/dev
feat(restful): add north driver map api
2023-06-01 10:14:13 +08:00
liyuxi 24c1420307 fix(file plugin):too long file length leads to crash 2023-05-31 09:56:16 +00:00
eeff 17c3f02143 feat(restful): add north driver map api 2023-05-31 16:25:38 +08:00
eeff ef9ddd30ea feat: add json parser for north driver map requests 2023-05-31 16:25:32 +08:00
eeff e0b2ccd427 feat(core): add NEU_REQ_ADD_NDRIVER_MAP and NEU_REQ_ADD_NDRIVER_MAP message 2023-05-31 16:17:36 +08:00
eeff 8effd79ddd Merge pull request #1293 from eeff/eeff/dev
test: add template group and tag function tests
2023-05-30 17:40:23 +08:00
fengzeroz e86230d2bb Merge pull request #1294 from fengzeroz/main
chore(event): exit if error occurs
2023-05-30 16:50:29 +08:00
fengzero 187023f428 improve(modbus): speed up the recovery the modbus rtu 2023-05-30 08:22:00 +00:00
fengzero d82d5041e9 chore(event): exit if error occurs 2023-05-30 06:03:07 +00:00
eeff 66c29abb25 fix(core): template tag validation when adding/updating 2023-05-29 11:51:40 +08:00
eeff 1a609eebd0 test: add template tag function tests 2023-05-29 11:51:40 +08:00
eeff 2cd26305a5 test: add template group function tests 2023-05-29 15:50:13 +08:00
fengzeroz 382e9e862a Merge pull request #1290 from fengzeroz/main
chore(type): fix compile error in arm64-musl
2023-05-29 10:52:49 +08:00
fengzeroz c584b2d1b5 Merge pull request #1288 from eeff/eeff/dev
test: add template instantiation function tests
2023-05-29 10:52:39 +08:00
fengzero db27e8f169 chore(type): fix compile error in arm64-musl 2023-05-26 09:29:37 +00:00
eeff a61eb2051f fix(restful): check too long template name 2023-05-26 15:50:13 +08:00
eeff 8512a45b6c fix(core): neu_manager_instantiate_template memory leak 2023-05-26 15:28:20 +08:00
eeff 19fddf8451 test: add template instantiation function tests 2023-05-26 15:28:20 +08:00
fengzeroz ccaa6adcc2 Merge pull request #1287 from eeff/eeff/dev
test: add template add/del/get function tests
2023-05-26 10:24:59 +08:00
eeff 80469761b3 feat(modbus): add tag validator 2023-05-26 10:17:10 +08:00
eeff e06e97c915 feat(core): add tag validator to validate template tags 2023-05-26 10:17:10 +08:00
eeff 0969c54506 fix(restful): add template handler double free 2023-05-26 00:48:45 +08:00
eeff 7d12e488dd fix(core): neu_manager_add_template edge cases
1. Template plugin must exist.
  2. Template not allow singleton plugin.
2023-05-26 00:48:45 +08:00
eeff 683bb5b5a6 test: add template add/del/get function tests 2023-05-26 00:47:30 +08:00
eeff cd4fb20e9c Merge pull request #1286 from eeff/eeff/dev
feat(restful): add node update api
2023-05-24 15:19:15 +08:00
hxy7yx 126e775352 Merge pull request #1284 from hxy7yx/main
Add node type to /api/v2/metrics
2023-05-24 09:22:46 +08:00
hxy7yx 97e799ebc2 Add node type to /api/v2/metrics 2023-05-23 18:26:32 +08:00
eeff f03f2f492d fix(core): node update request guards monitor name 2023-05-22 16:45:31 +08:00
eeff fa1c711d93 test: update node function test 2023-05-22 16:45:31 +08:00
eeff fcc01cf22b feat(restful): add node update api 2023-05-22 16:45:02 +08:00
eeff 39bd162293 feat: add json parser for node update request 2023-05-22 16:45:02 +08:00
eeff d8e5b5967f Merge pull request #1283 from eeff/eeff/dev
feat(core): fulfill NEU_REQ_UPDATE_NODE request
2023-05-22 10:42:08 +08:00
eeff d1cc2c23ef feat(core): fulfill NEU_REQ_UPDATE_NODE request 2023-05-22 10:13:16 +08:00
eeff 90aef77588 feat(core): add node update message type 2023-05-22 09:26:09 +08:00
eeff 7046f998f4 fix: neu_adapter_rename null pointer deref 2023-05-22 09:26:09 +08:00
fengzeroz 07a55c8281 Merge pull request #1275 from hxy7yx/main
chore(Modbus)improve log
2023-05-19 16:51:26 +08:00
fengzeroz 233fe1978f Merge pull request #1277 from eeff/eeff/dev
feat: add function neu_adapter_rename
2023-05-19 16:51:02 +08:00
fengzeroz 0815456cde Merge pull request #1282 from lixiumei123/main
fix(dlt645-1997):crash when close the driver
2023-05-19 16:44:43 +08:00
hxy7yx 5f4b23528b Add node type to /api/v2/metrics 2023-05-19 16:41:20 +08:00
liyuxi c97594afc4 fix(dlt645-1997):core in driver close 2023-05-19 08:26:09 +00:00
fengzeroz a1378691cd Merge pull request #1281 from fengzeroz/main
update log level
2023-05-19 16:24:38 +08:00
fengzero 5a6cc83240 fix(daemon): log format 2023-05-19 08:14:30 +00:00
fengzero 6a46b761e4 chore(adapter): log level 2023-05-19 08:14:30 +00:00
fengzero 5e3fa6a3b6 chore(base): log level 2023-05-19 08:14:30 +00:00
fengzero fa3f4d239c chore(connection): log level 2023-05-19 08:14:30 +00:00
fengzero 472ab5b250 chore(manager): log level 2023-05-19 08:14:30 +00:00
fengzero de1d36398d chore(event): log level 2023-05-19 08:14:30 +00:00
fengzero 442894f0d0 chore(log): default notice 2023-05-19 08:14:30 +00:00
fengzeroz 59462ae948 Merge pull request #1279 from lixiumei123/main
chore(file plugin):update log level
2023-05-19 16:12:34 +08:00
eeff 0f57174819 feat: add function neu_adapter_rename 2023-05-19 16:07:03 +08:00
eeff 5b99bb951a refactor: adapter start/stop timer into function 2023-05-19 15:05:06 +08:00
liyuxi fe065c8c40 chore(file plugin):update log level 2023-05-19 05:44:58 +00:00
fengzeroz 3195e0dc83 Merge pull request #1266 from hxy7yx/main
Backward compatibility with Modbus plugin for versions prior to 2.5.
2023-05-18 12:32:42 +08:00
fengzeroz efb131b370 Merge pull request #1272 from eeff/eeff/dev
chore: update monitor , ekuiper and restful plugin log level
2023-05-18 12:32:26 +08:00
hxy7yx 50ab414874 chore(modbus):improve log 2023-05-18 09:29:09 +08:00
fengzeroz 78ade35138 Merge pull request #1270 from fengzeroz/main
chore: log type & value
2023-05-17 18:59:45 +08:00
fengzero 12da5c41e4 chore(log): limit string length 2023-05-17 10:02:19 +00:00
fengzero 53a0261193 chore: log type & value 2023-05-17 10:02:19 +00:00
eeff 1eb1014140 chore(restful): update log level 2023-05-17 17:17:20 +08:00
eeff bcfb4dc454 chore(ekuiper): update log level 2023-05-17 17:06:59 +08:00
eeff 4c0a5477e3 chore(monitor): update log level 2023-05-17 17:06:48 +08:00
eeff 86639cb7cb Merge pull request #1269 from eeff/eeff/dev
chore(mqtt): update log level
2023-05-17 16:37:02 +08:00
eeff 07aecc7d7b chore(mqtt): update log level 2023-05-17 16:11:05 +08:00
fengzeroz 35150ad177 Merge pull request #1265 from eeff/eeff/dev
feat(core): load template data
2023-05-17 14:40:20 +08:00
fengzeroz be164f2233 Merge pull request #1259 from fengzeroz/main
improve(driver): drive reads and writes in a single thread
2023-05-17 14:06:59 +08:00
fengzero e362c3d460 type: get value 2023-05-17 03:38:14 +00:00
fengzero 73ae5e5d5a manager nng: set sendtimeout 2023-05-16 12:24:09 +00:00
fengzero aefda9aebc improve: nng buf size 2023-05-16 12:24:09 +00:00
fengzero eeecbbe3aa improve(driver): drive reads and writes in a single thread 2023-05-16 12:24:09 +00:00
hxy7yx 59b04283a3 For backward compatibility before version 2.5, add transport mode parameter to modbus plugin. 2023-05-16 15:35:52 +08:00
fengzeroz e2fd6b690d Merge pull request #1264 from eeff/eeff/dev
fix(persist): neu_persister_load_template_tags to use correct table
2023-05-16 10:03:15 +08:00
eeff 6ea5ccc193 feat(core): load template data 2023-05-15 17:31:35 +08:00
eeff 88719738f5 refactor(core): manager internal interface for loading template 2023-05-15 17:19:47 +08:00
eeff c0df1615a8 fix(persist): neu_persister_load_template_tags to use correct table 2023-05-15 17:15:44 +08:00
fengzeroz 2403444d0c Merge pull request #1248 from hxy7yx/main
Modbus supports UDP
2023-05-15 11:33:33 +08:00
hxy7yx 6b7920aa8d Merge branch 'emqx:main' into main 2023-05-11 16:33:51 +08:00
fengzeroz 5155d30bff Merge pull request #1257 from eeff/eeff/dev
chore: fix mqtt log
2023-05-11 14:28:08 +08:00
eeff 5f25e5a256 chore: fix mqtt log 2023-05-11 10:50:14 +08:00
fengzeroz 03a304cb25 Merge pull request #1254 from fengzeroz/main
protocol buf: use all buf
2023-05-10 17:38:32 +08:00
fengzero 683f3ef8f9 protocol buf: use all buf 2023-05-10 08:29:33 +00:00
eeff 1c0dc0716a Merge pull request #1253 from eeff/eeff/dev
feat: make MQTT and Monitor plugin CA parameter optional
2023-05-09 12:10:34 +08:00
hxy7yx ac6d5286c3 Modbus support UDP 2023-05-09 10:42:57 +08:00
eeff 93c12b69ce feat(monitor): make CA parameter optional 2023-05-08 17:09:45 +08:00
eeff cc4a10eb63 feat(mqtt): make CA parameter optional 2023-05-08 17:09:45 +08:00
eeff 3d3c87ab3a fix: neu_mqtt_client_set_tls function
1. Explicit ssl flag
  2. Optional ca parameter
2023-05-08 17:09:45 +08:00
eeff ad05844d78 Merge pull request #1246 from eeff/eeff/dev
feat: add SQL schema migrating MQTT upload-topic to subscription parameters
2023-05-08 16:34:40 +08:00
fengzeroz 2b6d23183c Merge pull request #1251 from lixiumei123/main
fix(dlt645):fix the connection status
2023-05-08 15:37:56 +08:00
liyuxi 456a4365fd fix(dlt645):fix the connection status 2023-05-08 07:14:45 +00:00
fengzeroz bdcba78789 Merge pull request #1247 from fengzeroz/main
mips support
2023-05-08 14:22:51 +08:00
fengzero 520d115fe5 fix(modbus): parse tag address 2023-05-08 06:08:57 +00:00
fengzero 3fc32e340f fix(connection): recv errorno check 2023-05-08 03:35:49 +00:00
fengzero 695512eca5 fix clang format 2023-05-06 07:49:40 +00:00
fengzero 7381c547df fix(mips): link atomic 2023-05-06 07:49:33 +00:00
fengzero eea193136d fix(mips): compile error 2023-05-06 07:49:26 +00:00
eeff c4194ea0ee fix(core): subscription parameter memory leak 2023-05-06 15:18:56 +08:00
eeff f0da62f3b1 feat: add SQL schema migrating MQTT upload-topic to subscription parameters 2023-05-06 15:18:56 +08:00
eeff 3f2ecd86fc Merge pull request #1240 from eeff/eeff/dev
feat(mqtt): add write request/response topic parameters
2023-05-06 14:35:02 +08:00
eeff bc6cb180e6 feat(mqtt): use write-req-topic and write-resp-topic 2023-05-05 18:18:36 +08:00
eeff 44df07369e feat: add mqtt client unsubscribe method 2023-05-05 18:18:36 +08:00
eeff a738e2b3cb feat(mqtt): add write request/response topic config 2023-05-05 14:51:03 +08:00
eeff 8484edb44f Merge pull request #1239 from eeff/eeff/dev
feat(restful): add template group get api
2023-05-04 17:39:34 +08:00
eeff a7db246201 feat(restful): add template group get api 2023-05-04 17:28:00 +08:00
eeff b94b02d06e feat(core): fulfil template group get request 2023-05-04 16:10:53 +08:00
eeff 9e0aedec95 Merge pull request #1236 from eeff/eeff/dev
feat(restful): add template group del api
2023-05-04 14:06:55 +08:00
fengzeroz d5f48e1a81 Merge pull request #1237 from fengzeroz/main
chore(error): device not response
2023-05-04 13:51:06 +08:00
fengzero ee40e1b819 chore(error): device not response 2023-05-04 03:22:12 +00:00
eeff aa4e94cc6d feat(restful): add template group del api 2023-05-04 11:07:28 +08:00
eeff 44b202e721 feat(core): fulfil template group del request 2023-05-04 11:05:31 +08:00
eeff eac4a14980 feat: add template group del request json parser 2023-05-04 11:02:20 +08:00
fengzeroz 6a0efce610 Merge pull request #1230 from hxy7yx/main
Add tag related functional test cases
2023-05-04 09:56:44 +08:00
hxy7yx 209eebdd90 Merge branch 'emqx:main' into main 2023-05-04 09:34:11 +08:00
eeff af89e3d21d Merge pull request #1234 from eeff/eeff/dev
feat(restful): add template group add/update api
2023-04-28 17:54:24 +08:00
eeff e4a3f0e6b3 feat(restful): add template group add/update api 2023-04-28 15:35:57 +08:00
eeff 3b7ef5f9e2 feat: add json parser for template group add/update 2023-04-28 15:35:57 +08:00
eeff 32b42e0e19 feat(core): fulfill template group add/update request 2023-04-28 15:35:57 +08:00
eeff 1406b4c7cf feat(core): add template group CRUD request message 2023-04-28 15:35:57 +08:00
hxy7yx c6aadcbc4f Add tag related functional test cases 2023-04-28 15:17:52 +08:00
fengzeroz 128fa658a1 Merge pull request #1220 from fengzeroz/main
eth conn: remove lldp
2023-04-28 14:04:17 +08:00
fengzero 891990fafa eth conn: remove lldp 2023-04-28 05:52:38 +00:00
eeff 3dcb641d1b Merge pull request #1229 from eeff/eeff/dev
feat(core): persist data when add/update/del template tags
2023-04-28 10:25:54 +08:00
fengzeroz 14c23f6953 Merge pull request #1228 from lixiumei123/main
fix(readme):fix link error about docs
2023-04-27 17:50:46 +08:00
eeff cbbba80080 feat(core): persist data when add/update/del template tags 2023-04-27 17:32:20 +08:00
eeff af94581652 feat: add template tags persister functions 2023-04-27 17:32:20 +08:00
eeff 86196ee949 feat: add template group persister functions 2023-04-27 17:32:20 +08:00
liyuxi f58e607010 fix(readme):fix link error about docs 2023-04-27 06:41:08 +00:00
fengzeroz b8cb7e4a5d Merge pull request #1223 from eeff/eeff/dev
feat(core): persist data when adding/deleting template
2023-04-27 10:36:47 +08:00
fengzeroz c2a824e22c Merge pull request #1226 from eeff/eeff/fix
fix: global metrics OS info
2023-04-27 10:36:12 +08:00
eeff e691b15a18 fix: global metrics OS info 2023-04-26 17:51:23 +08:00
lxm 8d87ce2d1f Merge pull request #1224 from lixiumei123/main
fix(file plugin):read error
2023-04-26 14:45:37 +08:00
eeff 482995f310 feat(core): persist data when adding and deleting template 2023-04-26 14:25:07 +08:00
liyuxi cc419307a4 fix(file plugin):read error 2023-04-26 06:19:41 +00:00
eeff f942ab623a Merge pull request #1221 from eeff/eeff/fix
fix: static tag value expired error in read_report_group
2023-04-26 14:19:11 +08:00
eeff 6cacfae633 feat: add template persister functions 2023-04-26 11:51:16 +08:00
eeff e5e54fcc5e fix: static tag value expired error in read_report_group 2023-04-26 11:43:01 +08:00
eeff 70a738da41 Merge pull request #1219 from eeff/eeff/dev
feat: add template SQL schema
2023-04-25 18:45:14 +08:00
eeff b4386d2358 feat: add template SQL schema 2023-04-25 16:03:38 +08:00
lxm bf8af30eb2 Merge pull request #1217 from lixiumei123/main
refactor:replace plugin name before starting
2023-04-24 14:24:12 +08:00
liyuxi 4b806bf65a refactor:replace plugin name before starting 2023-04-24 03:24:56 +00:00
eeff 57ea0d9527 Merge pull request #1216 from eeff/eeff/dev
feat(restful): add template instantiation api
2023-04-24 10:43:24 +08:00
hxy7yx 9a3f7a6670 Merge pull request #1214 from evhv/main
feat: add FC 0x06 compatibility to modbus plugins and simulator
2023-04-24 09:51:05 +08:00
evhv ee8ec446fb add FC 0x06 compatibility to neuron and simulator 2023-04-23 10:27:42 +00:00
eeff da296b6bea feat(core): fulfill NEU_REQ_INST_TEMPLATE request 2023-04-23 16:44:29 +08:00
eeff 767563dcd3 feat(restful): add template instantiation api 2023-04-23 15:12:50 +08:00
eeff 082eb6393a feat(core): add NEU_REQ_INST_TEMPLATE message 2023-04-23 15:09:58 +08:00
eeff 43005248c7 feat: add template instantiation request json parser 2023-04-23 12:15:26 +08:00
evhv 89b1fb8fa4 add FC 0x06 compatibility to neuron and simulator 2023-04-22 22:49:36 +00:00
fengzeroz 38590a70d0 Merge pull request #1211 from fengzeroz/main
fix(eth connection): check bind eth socket
2023-04-21 11:32:00 +08:00
fengzero a0019e8c4b fix(eth connection): check bind eth socket 2023-04-21 03:07:18 +00:00
eeff a3c7aa14de Merge pull request #1209 from eeff/eeff/dev
feat(mqtt): make offline cache setting more explicit
2023-04-20 18:09:24 +08:00
eeff 74450405f6 feat(mqtt): make offline cache setting more explicit
1. Add `offline-cache` bool parameter.
  2. Require `cache-mem-size` and `cache-disk-size` only when
     `offline-cache` is enabled. We provide no defaults for
     `cache-mem-size` and `cache-disk-size`, so the user must provide
     values explicitly.
2023-04-20 16:40:16 +08:00
eeff 634e51e9b7 Merge pull request #1206 from eeff/eeff/dev
feat: update global memory metrics
2023-04-20 13:47:59 +08:00
eeff f15ee5ed61 feat: update global memory metrics 2023-04-20 12:04:36 +08:00
fengzeroz e0f45ba1b9 Merge pull request #1202 from hxy7yx/main
Add README for ut and ft
2023-04-20 09:56:19 +08:00
fengzeroz bde9e31a29 Merge pull request #1203 from eeff/eeff/dev
chore: make monitor schema description more clear
2023-04-20 09:55:38 +08:00
eeff 576943bb33 chore: make monitor schema description more clear 2023-04-19 18:34:00 +08:00
hxy7yx 490c6f48b0 Add README for ut and ft 2023-04-19 11:02:05 +08:00
fengzeroz a173e16caf Merge pull request #1200 from eeff/eeff/dev
fix(restful): global config json parsing on empty array
2023-04-18 09:45:38 +08:00
eeff 69b6d0ebdc fix(restful): global config json parsing on empty array 2023-04-17 18:58:10 +08:00
eeff bdbad227f9 Merge pull request #1199 from eeff/eeff/dev
feat(restful): add template get tags api
2023-04-17 10:16:35 +08:00
eeff 30d6bc4407 feat(restful): add template get tags api 2023-04-14 18:16:11 +08:00
eeff 5411e9dbb4 feat(core): manager fulfil get template tags request 2023-04-14 17:59:20 +08:00
eeff dfa3c79475 refactor: manager internal template tags management 2023-04-14 17:48:58 +08:00
eeff b88596cc6e Merge pull request #1198 from eeff/eeff/dev
feat: template del tags api
2023-04-14 17:24:14 +08:00
eeff 6e7985f173 feat: template del tags api 2023-04-14 17:10:05 +08:00
eeff e3ff4a0b6e Merge pull request #1197 from eeff/eeff/dev
feat(restful): template update api
2023-04-14 17:09:29 +08:00
eeff 0e2d11322a feat(core): manager fulfill del template tags requests 2023-04-14 16:48:25 +08:00
eeff a863214e9b feat: add template del tags req json parser 2023-04-14 16:46:05 +08:00
eeff 60472adbae feat(restful): template update api 2023-04-14 16:34:48 +08:00
eeff 63052def67 Merge pull request #1195 from eeff/eeff/dev
feat(restful): template add tags api
2023-04-14 16:16:52 +08:00
eeff 0ef5e5993e feat(core): manager fulfill update template tags requests 2023-04-14 15:18:12 +08:00
eeff fec281e89c feat(restful): template add tags api 2023-04-14 15:01:39 +08:00
eeff 0d8d76ddb6 feat(core): manager fulfill template add tags requests 2023-04-14 14:59:54 +08:00
eeff 6e8fea9cea feat(core): add message type for template tags CRUD operation 2023-04-14 14:59:54 +08:00
fengzeroz 022381e9e1 Merge pull request #1194 from zhouzaihang/main
fix: confirm the length of the group name to avoid program exceptions
2023-04-14 10:51:20 +08:00
eeff 80aceb0263 Merge pull request #1189 from eeff/eeff/dev
feat: add template add tags request json parser
2023-04-14 10:20:49 +08:00
zhouzaihang 47c2376f67 fix: format code 2023-04-14 10:16:38 +08:00
fengzeroz 41614e23b9 Merge pull request #1186 from hxy7yx/main
Introduce coverage statistics for testing
2023-04-14 10:13:22 +08:00
Zhou Zaihang 1071bf30e7 fix: neu_http_response instead of http_response 2023-04-14 10:12:07 +08:00
Zhou Zaihang 401a248f55 fix: confirm the length of the group name to avoid program exceptions caused by the group name exceeding the length when directly inserting tags 2023-04-14 10:07:59 +08:00
eeff b15727599a feat: add template add tags request json parser 2023-04-13 18:56:04 +08:00
eeff 91cb441f65 fix: template structure dangling pointer 2023-04-13 18:54:39 +08:00
eeff 0a895ae18c Merge pull request #1188 from eeff/eeff/dev
fix: restful template api potential memory leak
2023-04-13 18:10:01 +08:00
eeff d6b084af6e fix: restful template api potential memory leak 2023-04-13 16:16:31 +08:00
hxy7yx 13703317d5 Introduce coverage statistics for testing 2023-04-13 15:30:16 +08:00
eeff 50a82b6edd Merge pull request #1184 from eeff/eeff/dev
fix: data race when close mqtt client
2023-04-12 17:43:14 +08:00
eeff f37f3a9f40 fix: data race when close mqtt client 2023-04-11 17:58:55 +08:00
fengzeroz f567a11633 Merge pull request #1183 from fengzeroz/main
modbus rtu: more baudrate 1800/1200/600/300/200/150
2023-04-11 16:37:11 +08:00
eeff a6dd8fd608 Merge pull request #1182 from eeff/eeff/dev
feat: sql schema add default setting for data-strream-processing node
2023-04-11 16:23:11 +08:00
fengzero 4789961d49 modbus rtu: more baudrate 1800/1200/600/300/200/150 2023-04-11 08:21:35 +00:00
eeff b5765c88c6 feat: sql schema add default setting for data-strream-processing node 2023-04-11 16:04:15 +08:00
fengzeroz 47761e65d7 Merge pull request #1176 from hxy7yx/main
Open source Modbus TCP/RTU, delete existing Modbus TCP community
2023-04-11 15:58:20 +08:00
hxy7yx 7c160385c7 Merge branch 'emqx:main' into main 2023-04-10 17:57:00 +08:00
hxy7yx e1ca981860 Open source Modbus TCP/RTU, delete existing Modbus TCP community 2023-04-10 17:56:17 +08:00
eeff c3fddf18cf Merge pull request #1179 from eeff/eeff/dev
chore: update mqtt schema
2023-04-10 17:30:09 +08:00
eeff bcfe38331e chore: update mqtt schema 2023-04-10 17:17:07 +08:00
fengzeroz e8c4b1f904 Merge pull request #1171 from fengzeroz/main
serial: more baudrate 300/200/150
2023-04-10 14:11:05 +08:00
fengzero 5840ff9485 fix(connection): replace client 2023-04-10 03:34:10 +00:00
fengzero e4e00b2d1b fix compile warning 2023-04-10 03:25:44 +00:00
fengzero 7548de61c6 improve(connection): replace old client 2023-04-10 03:12:27 +00:00
fengzero 6c24b78781 serial: more baudrate 300/200/150 2023-04-07 06:21:15 +00:00
fengzeroz 789543dfdd Merge pull request #1165 from fengzeroz/main
serial: more baudrate 1800/1200/600
2023-04-07 10:00:47 +08:00
fengzeroz b8ea911474 Merge pull request #1167 from gc87/spb-float-fix
[main]fix: determined f32 type data is treated as d64
2023-04-07 09:58:48 +08:00
eeff 353e0b153e Merge pull request #1166 from eeff/eeff/dev
chore: make mqtt configuration parameter description more clear
2023-04-06 16:54:26 +08:00
gc87 633762d6c1 fix: determined f32 type data is treated as d64 2023-04-06 16:47:19 +08:00
eeff 1f8055771c chore: make mqtt configuration parameter description more clear 2023-04-06 16:17:25 +08:00
fengzero 5da1c27c8c serial: more baudrate 1800/1200/600 2023-04-06 08:14:52 +00:00
fengzeroz 70823b6dc3 Merge pull request #1159 from fengzeroz/main
limit log size
2023-04-06 14:38:35 +08:00
fengzeroz 35cbf72bd1 Merge pull request #1161 from lixiumei123/main
fix(log debug):error reporting that the node does not exist
2023-04-06 14:38:17 +08:00
liyuxi 71178b09c0 fix(log debug):error reporting that the node does not exist 2023-04-06 06:23:35 +00:00
fengzeroz 6910de2fef Merge pull request #1155 from eeff/eeff/dev
fix(mqtt): schema use drop drown selection button for QoS setting
2023-04-06 13:01:18 +08:00
fengzeroz 8212e38de5 Merge pull request #1157 from lixiumei123/main
fix(file plugin):fix delay
2023-04-06 13:00:53 +08:00
fengzero b54fce0c7d limit log size 2023-04-06 04:58:06 +00:00
liyuxi d40b4678e6 fix(file plugin):fix delay 2023-04-06 02:24:02 +00:00
eeff e6052a934e fix(mqtt): schema use drop drown selection button for QoS setting 2023-04-04 09:52:23 +08:00
458 changed files with 33480 additions and 446007 deletions
-1
View File
@@ -12,4 +12,3 @@ PointerAlignment: Right
SpaceAfterCStyleCast: true
AllowShortFunctionsOnASingleLine: Inline
BreakBeforeBinaryOperators: None
-28
View File
@@ -1,28 +0,0 @@
name: Check helm version
on:
push:
paths:
- deploy/charts/neuron/templates/**
pull_request:
paths:
- deploy/charts/neuron/templates/**
jobs:
check-helm-version:
runs-on: ubuntu-latest
steps:
- run: minikube start
- uses: actions/checkout@v2
- name: Update helm
run: |
helm repo add emqx https://repos.emqx.io/charts
helm repo update
- name: Check helm version
run: |
old=$(helm show chart emqx/neuron |egrep "^version" | sed -r 's|^version:[[:space:]]([0-9]+.[0-9]+.[0-9]+)$|\1|g')
now=$(egrep "^version" deploy/charts/neuron/Chart.yaml | sed -r 's|^version:[[:space:]]([0-9]+.[0-9]+.[0-9]+)$|\1|g')
if [ "$old" = "$now" ];then
echo "Need update version for Chart.yaml"
exit 1
fi
+40 -26
View File
@@ -13,12 +13,12 @@ jobs:
steps:
# checkout
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Run clang-format style check for C/C++ programs.
uses: DoozyX/clang-format-lint-action@v0.12
uses: DoozyX/clang-format-lint-action@v0.18
with:
source: 'src plugins include tests'
exclude: 'include/neuron/utils/uthash.h include/neuron/utils/utarray.h include/neuron/utils/utlist.h include/neuron/utils/zlog.h'
@@ -29,21 +29,22 @@ jobs:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
submodules: recursive
- name: cppcheck
run: |
sudo apt install cppcheck
cppcheck --enable=all --error-exitcode=2 --inline-suppr --suppress=missingInclude --suppress=unusedFunction ./plugins ./simulator ./src
cppcheck --enable=all --error-exitcode=2 --inline-suppr --suppress=missingInclude --suppress=unusedFunction ./plugins ./src
cppcheck --enable=all --error-exitcode=2 --inline-suppr --suppress=missingInclude --suppress=variableScope ./simulator
ut:
runs-on: ubuntu-20.04
container: neugates/build:x86_64-main
container: ghcr.io/neugates/build:x86_64-v2.9
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
submodules: recursive
@@ -51,7 +52,7 @@ jobs:
run: |
git config --global --add safe.directory $(pwd)
mkdir -p build && cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=../cmake/x86_64-linux-gnu.cmake
cmake -DUSE_GCOV=1 .. -DCMAKE_TOOLCHAIN_FILE=../cmake/x86_64-linux-gnu.cmake
make -j4
- name: unit test
@@ -59,35 +60,48 @@ jobs:
cd build
ctest --output-on-failure
ft:
pft:
runs-on: ubuntu-20.04
container: neugates/build:x86_64-main
container: ghcr.io/neugates/build:x86_64-v2.9
strategy:
matrix:
plugin: [core, ekuiper, modbus, mqtt, azure, metrics]
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
submodules: recursive
- name: setup dependencies
run: |
sudo apt-get install -y mosquitto
pip install -U pytest requests prometheus-client gmqtt pynng sniffio
sudo apt-get install -y socat
- name: compile
run: |
git config --global --add safe.directory $(pwd)
mkdir -p build && cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=../cmake/x86_64-linux-gnu.cmake
cmake -DUSE_GCOV=1 .. -DCMAKE_TOOLCHAIN_FILE=../cmake/x86_64-linux-gnu.cmake
make -j4
- name: function test
run: |
sudo apt-get install -y mosquitto
mosquitto -v &
python3 -m pip install -U pip
python3 -m pip install -r ft/requirements.txt
python3 -m robot --maxerrorlines=600 -P ft/ -d ft/reports ft
- uses: actions/upload-artifact@v3
with:
name: ft_result
path: |
ft/reports/log.html
ft/reports/output.xml
ft/reports/report.html
build/neuron.log
if [ "${{ matrix.plugin }}" = "core" ]; then
pytest -s -v tests/ft \
--ignore=tests/ft/app/test_ekuiper.py \
--ignore=tests/ft/app/test_mqtt.py \
--ignore=tests/ft/app/test_azure.py \
--ignore=tests/ft/driver/test_modbus.py \
--ignore=tests/ft/metrics/test_metrics.py
elif [ "${{ matrix.plugin }}" = "ekuiper" ]; then
pytest -s -v tests/ft/app/"test_ekuiper.py"
elif [ "${{ matrix.plugin }}" = "modbus" ]; then
pytest -s -v tests/ft/driver/"test_modbus.py"
elif [ "${{ matrix.plugin }}" = "mqtt" ]; then
pytest -s -v tests/ft/app/"test_mqtt.py"
elif [ "${{ matrix.plugin }}" = "azure" ]; then
pytest -s -v tests/ft/app/"test_azure.py"
else
pytest -s -v tests/ft/metrics/"test_metrics.py"
fi
+20 -163
View File
@@ -8,9 +8,9 @@ on:
- published
env:
VERSION: 2.4.0
UI_VERSION: 2.4.0
BRANCH: main
VERSION: 2.9.5
UI_VERSION: 2.6.1
BRANCH: v2.9
jobs:
cross-build:
@@ -21,10 +21,10 @@ jobs:
- [aarch64-linux-gnu, aarch64, arm64]
- [arm-linux-gnueabihf, armv4, armhf]
- [x86_64-linux-gnu, x86_64, amd64]
container: neugates/build:${{ matrix.arch[1] }}-main
container: ghcr.io/neugates/build:${{ matrix.arch[1] }}-v2.9
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: recursive
@@ -54,7 +54,7 @@ jobs:
- uses: actions/upload-artifact@v3
with:
name: neuron-sdk-${{ matrix.arch[2] }}
name: neuron-sdk
path: |
neuron-sdk-*.tar.gz
@@ -64,10 +64,10 @@ jobs:
matrix:
arch:
- [x86_64-linux-gnu, x86_64, amd64]
container: neugates/build:${{ matrix.arch[1] }}-main
container: ghcr.io/neugates/build:${{ matrix.arch[1] }}-v2.9
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: recursive
@@ -85,15 +85,14 @@ jobs:
- uses: actions/upload-artifact@v3
with:
name: neuron-sdk-debug-${{ matrix.arch[2] }}
name: neuron-sdk
path: |
neuron-sdk-debug-*.tar.gz
create_daily_release:
runs-on: ubuntu-20.04
create_update_daily_release:
runs-on: ubuntu-latest
if: github.event_name == 'push'
needs: [cross-build, build-debug-sdk]
steps:
- name: delete old daily-pre-release
uses: dev-drprasad/delete-tag-and-release@v0.2.1
@@ -103,159 +102,17 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: create daily-pre-release
id: create_release
uses: actions/create-release@v1
- uses: actions/download-artifact@v3
with:
name: neuron-sdk
- uses: softprops/action-gh-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
name: Daily Release(${{ env.BRANCH }})
tag_name: ${{ env.BRANCH }}-daily
release_name: Daily Release(${{ env.BRANCH }})
draft: false
prerelease: true
- shell: bash
run: |
echo "${{ steps.create_release.outputs.upload_url }}" > release_url.txt
- uses: actions/upload-artifact@v3
with:
name: release_url
path: release_url.txt
upload_daily_release_asset:
runs-on: ubuntu-20.04
if: github.event_name == 'push'
needs: create_daily_release
strategy:
matrix:
arch: [arm64, armhf, amd64]
type: [neuron-sdk]
package: [tar.gz]
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/download-artifact@v2
with:
name: release_url
- id: release_url
run: |
value=`cat release_url.txt`
echo "name=$value" >> $GITHUB_OUTPUT
- uses: actions/download-artifact@v2
with:
name: ${{ matrix.type }}-${{ matrix.arch }}
- id: package
run: echo "name=${{ matrix.type }}-${{ env.VERSION }}-${{ matrix.arch }}.${{ matrix.package }}" >> $GITHUB_OUTPUT
- name: upload daily release asset
id: upload-release-asset
uses: actions/upload-release-asset@v1.0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.release_url.outputs.name }}
asset_path: ./${{ steps.package.outputs.name }}
asset_name: ${{ matrix.type }}-${{ env.VERSION }}-daily-linux-${{ matrix.arch }}.${{ matrix.package }}
asset_content_type: application/octet-stream
upload_daily_release_debug_asset:
runs-on: ubuntu-20.04
if: github.event_name == 'push'
needs: create_daily_release
strategy:
matrix:
arch: [amd64]
type: [neuron-sdk-debug]
package: [tar.gz]
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/download-artifact@v2
with:
name: release_url
- id: release_url
run: |
value=`cat release_url.txt`
echo "name=$value" >> $GITHUB_OUTPUT
- uses: actions/download-artifact@v2
with:
name: ${{ matrix.type }}-${{ matrix.arch }}
- id: package
run: echo "name=${{ matrix.type }}-${{ env.VERSION }}-${{ matrix.arch }}.${{ matrix.package }}" >> $GITHUB_OUTPUT
- name: upload daily release asset
id: upload-release-asset
uses: actions/upload-release-asset@v1.0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.release_url.outputs.name }}
asset_path: ./${{ steps.package.outputs.name }}
asset_name: ${{ matrix.type }}-${{ env.VERSION }}-daily-linux-${{ matrix.arch }}.${{ matrix.package }}
asset_content_type: application/octet-stream
clean:
runs-on: ubuntu-20.04
needs: [upload_daily_release_asset, upload_daily_release_debug_asset]
steps:
- uses: geekyeggo/delete-artifact@v1
with:
name: release_url
release:
runs-on: ubuntu-20.04
if: github.event_name == 'release'
needs: cross-build
strategy:
matrix:
arch: [arm64, armhf, amd64]
type: [neuron-sdk]
package: [tar.gz]
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/download-artifact@v2
with:
name: ${{ matrix.type }}-${{ matrix.arch }}
- id: package
run: echo "name=${{ matrix.type }}-${{ env.VERSION }}-${{ matrix.arch }}.${{ matrix.package }}" >> $GITHUB_OUTPUT
- name: gen packages sha256
run: sudo bash -c "echo $(sha256sum ./${{ steps.package.outputs.name }} | awk '{print $1}') > ./${{ steps.package.outputs.name }}.sha256"
- uses: actions/upload-release-asset@v1
if: github.event_name == 'release'
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./${{ steps.package.outputs.name}}.sha256
asset_name: ${{ matrix.type }}-${{ env.VERSION }}-linux-${{ matrix.arch }}.${{ matrix.package }}.sha256
asset_content_type: application/octet-stream
- uses: actions/upload-release-asset@v1
if: github.event_name == 'release'
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./${{ steps.package.outputs.name}}
asset_name: ${{ matrix.type }}-${{ env.VERSION }}-linux-${{ matrix.arch }}.${{ matrix.package }}
asset_content_type: application/octet-stream
files: |
neuron-sdk-*
-44
View File
@@ -1,44 +0,0 @@
name: Release neuron
on:
push:
tags:
- "*"
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Check appVersion for helm
run: |
appVersion=$(egrep "^appVersion" deploy/charts/neuron/Chart.yaml | sed -r 's|^appVersion:[[:space:]]([0-9]+.[0-9]+.[0-9]+)$|\1|g')
if [ "$appVersion" != "${GITHUB_REF##*/}" ]; then
echo "Need update appVersion for Chart.yaml"
exit 1
fi
helm:
runs-on: self-hosted
if: github.repository_owner == 'emqx'
needs:
- release
steps:
- uses: actions/checkout@v2
- name: Check appVersion for helm
working-directory: deploy/charts/neuron
run: |
appVersion=$(egrep "^appVersion" Chart.yaml | sed -r 's|^appVersion:[[:space:]]([0-9]+.[0-9]+.[0-9]+)$|\1|g')
if [ "$appVersion" != "${GITHUB_REF##*/}" ]; then
echo "Need update appVersion for Chart.yaml"
exit 1
fi
- name: Update helm repo
uses: emqx/push-helm-action@v1
with:
charts_dir: "${{ github.workspace }}/deploy/charts/neuron"
version: ${{ github.ref_name }}
aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws_region: "us-west-2"
aws_bucket_name: "repos-emqx-io"
+4 -1
View File
@@ -16,4 +16,7 @@ tmp
*.deb
*.rpm
neuron-sdk
.vscode
.vscode
log.html
output.xml
report.html
+40 -11
View File
@@ -31,8 +31,17 @@ if(NOT DISABLE_WERROR)
set(CMAKE_C_FLAGS "$ENV{CFLAGS} -Werror")
endif()
if(USE_GCOV)
message(STATUS "using gcov")
SET(GCC_COVERAGE_COMPILE_FLAGS "-fprofile-arcs -ftest-coverage -O0")
SET(GCC_COVERAGE_LINK_FLAGS "-lgcov")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${GCC_COVERAGE_COMPILE_FLAGS}")
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${GCC_COVERAGE_COMPILE_FLAGS}")
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_LINKER_FLAGS} ${GCC_COVERAGE_LINK_FLAGS}")
endif(USE_GCOV)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -g")
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS} -O1")
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS} -O0")
if(NOT DISABLE_ASAN)
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS} -fsanitize=address")
@@ -57,6 +66,7 @@ endif()
set(PERSIST_SOURCES
src/persist/persist.c
src/persist/sqlite.c
src/persist/json/persist_json_plugin.c)
aux_source_directory(src/parser NEURON_SRC_PARSE)
set(NEURON_BASE_SOURCES
@@ -65,7 +75,7 @@ set(NEURON_BASE_SOURCES
src/base/tag_sort.c
src/base/group.c
src/base/metrics.c
src/base/template.c
src/base/msg.c
src/connection/connection.c
src/connection/connection_eth.c
src/connection/mqtt_client.c
@@ -75,12 +85,28 @@ set(NEURON_BASE_SOURCES
src/utils/json.c
src/utils/http.c
src/utils/http_handler.c
src/utils/http_proxy.c
src/utils/neu_jwt.c
src/utils/base64.c
src/utils/async_queue.c
src/utils/mem_cache.c
src/utils/log.c
${PERSIST_SOURCES})
if (SMART_LINK)
message(STATUS "using smart link")
add_definitions(-DNEU_SMART_LINK)
set(NEURON_BASE_SOURCES ${NEURON_BASE_SOURCES} src/connection/smart_link.c)
endif()
if (CLIB)
message(STATUS "set clib")
add_definitions(-DNEU_CLIB=${CLIB})
endif()
if(CMAKE_BUILD_TYPE STREQUAL "Release")
message(STATUS "build release")
add_definitions(-DNEU_RELEASE)
endif()
add_library(neuron-base SHARED)
target_sources(neuron-base PRIVATE ${NEURON_BASE_SOURCES} ${NEURON_SRC_PARSE})
@@ -88,7 +114,7 @@ target_include_directories(neuron-base
PRIVATE include/neuron src)
target_link_libraries(neuron-base libssl.a libcrypto.a)
target_link_libraries(neuron-base nng libzlog.so jansson jwt
${CMAKE_THREAD_LIBS_INIT})
${CMAKE_THREAD_LIBS_INIT} -lm)
add_dependencies(neuron-base neuron-version)
# dependency imposed by nng
@@ -104,15 +130,15 @@ set(NEURON_SOURCES
src/core/subscribe.c
src/core/plugin_manager.c
src/core/node_manager.c
src/core/template_manager.c
src/core/storage.c
src/adapter/msg_q.c
src/adapter/storage.c
src/adapter/adapter.c
src/adapter/driver/cache.c
src/adapter/driver/driver.c
plugins/restful/handle.c
plugins/restful/log_handle.c
plugins/restful/file_handle.c
plugins/restful/metric_handle.c
plugins/restful/normal_handle.c
plugins/restful/rw_handle.c
plugins/restful/adapter_handle.c
@@ -120,8 +146,8 @@ set(NEURON_SOURCES
plugins/restful/global_config_handle.c
plugins/restful/group_config_handle.c
plugins/restful/plugin_handle.c
plugins/restful/template_handle.c
plugins/restful/version_handle.c
plugins/restful/scan_handle.c
plugins/restful/rest.c
plugins/restful/user.c)
@@ -135,6 +161,7 @@ target_link_options(neuron PRIVATE "LINKER:--dynamic-list-data")
#copy file for run
file(COPY ${CMAKE_SOURCE_DIR}/zlog.conf DESTINATION ${CMAKE_BINARY_DIR}/config)
file(COPY ${CMAKE_SOURCE_DIR}/dev.conf DESTINATION ${CMAKE_BINARY_DIR}/config)
file(COPY ${CMAKE_SOURCE_DIR}/neuron.json DESTINATION ${CMAKE_BINARY_DIR}/config)
file(COPY ${CMAKE_SOURCE_DIR}/.gitkeep DESTINATION ${CMAKE_BINARY_DIR}/logs)
file(COPY ${CMAKE_SOURCE_DIR}/.gitkeep DESTINATION ${CMAKE_BINARY_DIR}/persistence)
file(COPY ${CMAKE_SOURCE_DIR}/neuron.key DESTINATION ${CMAKE_BINARY_DIR}/config)
@@ -146,15 +173,17 @@ file(COPY ${CMAKE_SOURCE_DIR}/default_plugins.json DESTINATION ${CMAKE_BINARY_DI
add_subdirectory(plugins/modbus)
add_subdirectory(plugins/mqtt)
add_subdirectory(plugins/ekuiper)
add_subdirectory(plugins/monitor)
add_subdirectory(plugins/file)
add_subdirectory(simulator)
if(NOT DISABLE_UT)
add_subdirectory(tests)
add_subdirectory(tests/ut)
endif()
add_subdirectory(tests/plugins/c1)
add_subdirectory(tests/plugins/s1)
add_subdirectory(tests/plugins/sc1)
# Set sane defaults for multi-lib linux systems
include(GNUInstallDirs)
if(UNIX)
+7 -7
View File
@@ -18,17 +18,17 @@ Neuron 是一款开源的、轻量级工业协议网关软件,支持数十种
以下是 Neuron 的一些重要特性:
- 具有实时能力的边缘原生应用程序可以利用边缘端的低延迟网络。
- 松耦合模块化 [架构设计](https://neugates.io/docs/en/latest/architecture/architecture.html) 通过可插拔模块扩展更多功能服务。
- 松耦合模块化 [架构设计](https://neugates.io/docs/zh/latest/introduction/architecture/architecture.html) 通过可插拔模块扩展更多功能服务。
- 支持可以在运行时更新设备和应用程序模块的热插件。
- 支持多种工业设备协议,包括 Modbus、OPCUA、Ethernet/IP、IEC104、BACnet 等 [更多协议](https://neugates.io/docs/en/latest/introduction/module-list/module-list.html)。
- 支持多种工业设备协议,包括 Modbus、OPCUA、Ethernet/IP、IEC104、BACnet 等 [更多协议](https://neugates.io/docs/zh/latest/configuration/south-devices/south-devices.html)。
- 支持同时连接大量不同协议的工业设备。
- 结合[eKuiper](https://www.lfedge.org/projects/ekuiper)提供的规则引擎功能,快速实现基于规则的设备控制或 AI/ML 分析。
- 通过 [SparkplugB](https://neugates.io/docs/en/latest/use-cases/use_cases.html) 解决方案支持对工业应用程序的数据访问,例如 MES 或 ERP、SCADA、historian 和数据分析软件。
- 通过 [SparkplugB](https://neugates.io/docs/zh/latest/use-cases/use_cases.html#mqtt-sparkplugb-%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88) 解决方案支持对工业应用程序的数据访问,例如 MES 或 ERP、SCADA、historian 和数据分析软件。
- 具有非常低的内存占用,小于 10M 的内存占用和 CPU 使用率,可以在 ARM、x86 和 RISC-V 等资源有限的硬件上运行。
- 支持在本地安装可执行文件或部署在容器化环境中。
- 控制工业设备,通过[API](https://neugates.io/docs/en/latest/http-api/configuration.html)和[MQTT](https://neugates.io/docs/en/latest/north-apps/mqtt/api.html) 服务更改参数和数据标签。
- 控制工业设备,通过[HTTP API](https://neugates.io/docs/zh/latest/http-api/http-api.html)和[MQTT API](https://neugates.io/docs/en/latest/north-apps/mqtt/api.html) 服务更改参数和数据标签。
- 与其他 EMQ 产品高度集成,包括 [EMQX](https://www.emqx.com/zh/products/emqx)、[NanoMQ](https://nanomq.io/zh)、[eKuiper](https://ekuiper.org/zh)。
- 核心框架和 Modbus、MQTT 和 eKuiper 的代码在 LGPLv3 的许可下开源。商业模块需要 [EMQ 许可证](https://neugates.io/docs/en/latest/introduction/license-describe.html) 才能运行。
- 核心框架和 Modbus、MQTT 和 eKuiper 的代码在 LGPLv3 的许可下开源。商业模块需要 [EMQ 许可证](https://neugates.io/docs/zh/latest/introduction/license-describe.html) 才能运行。
获取更多信息,请访问 [Neuron 官网](https://neugates.io/zh)。
@@ -40,7 +40,7 @@ Neuron 是一款开源的、轻量级工业协议网关软件,支持数十种
docker run -d --name neuron -p 7000:7000 -p 7001:7001 -p 9081:9081 --privileged=true --restart=always emqx/neuron:latest
```
接下来请参考 [入门指南](https://neugates.io/docs/en/latest/quick-start/installation.html) 开启您的 Neuron 之旅。
接下来请参考 [快速入门](https://neugates.io/docs/zh/latest/quick-start/hardware-specifications.html) 开启您的 Neuron 之旅。
> **提示**
>
@@ -52,7 +52,7 @@ docker run -d --name neuron -p 7000:7000 -p 7001:7001 -p 9081:9081 --privileged=
您可以从 [neugates.io/zh/downloads?os=Linux](https://neugates.io/zh/downloads?os=Linux) 下载不同格式的 Neuron 安装包进行手动安装。
也可以直接访问 [Neuron 安装文档](https://neugates.io/docs/en/latest/quick-start/installation.html) 查看不同安装方式的操作步骤。
也可以直接访问 [Neuron 安装文档](https://neugates.io/docs/zh/latest/installation/installation.html) 查看不同安装方式的操作步骤。
## 文档
+8 -50
View File
@@ -2,6 +2,7 @@
[![GitHub Release](https://img.shields.io/github/release/emqx/neuron?color=brightgreen&label=Release)](https://github.com/emqx/neuron/releases)
[![Docker Pulls](https://img.shields.io/docker/pulls/emqx/neuron?label=Docker%20Pulls)](https://hub.docker.com/r/emqx/neuron)
[![codecov](https://codecov.io/gh/emqx/neuron/graph/badge.svg?token=X95RD0NUT0)](https://codecov.io/gh/emqx/neuron)
[![Slack](https://img.shields.io/badge/Slack-Neuron-39AE85?logo=slack)](https://slack-invite.emqx.io/)
[![Discord](https://img.shields.io/discord/931086341838622751?label=Discord&logo=discord)](https://discord.gg/xYGf3fQnES)
[![Twitter](https://img.shields.io/badge/Follow-EMQ-1DA1F2?logo=twitter)](https://twitter.com/EMQTech)
@@ -14,17 +15,17 @@ Neuron is an Industrial IoT (IIoT) connectivity server for modern big data and A
The following are some important features of Neuron:
- Edge native application with real-time capability to leverage the low latency network of edge side.
- Loosely-coupled modularity [architecture design](https://neugates.io/docs/en/latest/architecture/architecture.html) for extending more functional services by pluggable modules.
- Loosely-coupled modularity [architecture design](https://neugates.io/docs/en/latest/introduction/architecture/architecture.html) for extending more functional services by pluggable modules.
- Support hot plugins that can update device and application modules during runtime.
- Support numerous protocols for industrial devices, including Modbus, OPCUA, Ethernet/IP, IEC104, BACnet and [more](https://neugates.io/docs/en/latest/introduction/module-list/module-list.html).
- Support numerous protocols for industrial devices, including Modbus, OPCUA, Ethernet/IP, IEC104, BACnet and [more](https://neugates.io/docs/en/latest/configuration/south-devices/south-devices.html).
- Support simultaneous connection of a large number of industrial devices with different protocols.
- Combine with the rule engine function provided by [eKuiper](https://www.lfedge.org/projects/ekuiper) to quickly implement rule-based device control or AI/ML analytics.
- Support data access to industrial applications, such as MES or ERP, SCADA, historian and data analytics software via [SparkplugB](https://neugates.io/docs/en/latest/use-cases/use_cases.html) solution.
- Support data access to industrial applications, such as MES or ERP, SCADA, historian and data analytics software via [SparkplugB](https://neugates.io/docs/en/latest/use-cases/sparkplug/sparkplug.html) solution.
- Has very low memory footprint, less than 10M, and CPU usage, can run on limited resource hardware like ARM, x86 and RISC-V.
- Support installation of native executable or deployed in containerized enviornment.
- Control industrial devices, and make changes to the parameters and data tags through [API](https://neugates.io/docs/en/latest/http-api/configuration.html) and [MQTT](https://neugates.io/docs/en/latest/north-apps/mqtt/api.html) services.
- Control industrial devices, and make changes to the parameters and data tags through [HTTP API](https://neugates.io/docs/en/latest/api/configuration.html) and [MQTT API](https://neugates.io/docs/en/latest/configuration/north-apps/mqtt/api.html) services.
- Highly integrated with other EMQ products, including [EMQX](https://www.emqx.com/en/products/emqx), [NanoMQ](https://nanomq.io/), [eKuiper](https://ekuiper.org/).
- The code of the core framework and Modbus, MQTT and eKuiper are licensed under open source LGPLv3. Commercial modules require a [EMQ License](https://neugates.io/docs/en/latest/introduction/license-describe.html) to run.
- The code of the core framework and Modbus, MQTT and eKuiper are licensed under open source LGPLv3. Commercial modules require a [EMQ License](https://neugates.io/docs/en/latest/installation/license-install/license-install.html) to run.
For more information, please visit [Neuron homepage](https://neugates.io/).
@@ -36,7 +37,7 @@ For more information, please visit [Neuron homepage](https://neugates.io/).
docker run -d --name neuron -p 7000:7000 -p 7001:7001 -p 9081:9081 --privileged=true --restart=always emqx/neuron:latest
```
Next, please follow the [getting started guide](https://neugates.io/docs/en/latest/quick-start/installation.html) to tour the Neuron features.
Next, please follow the [getting started guide](https://neugates.io/docs/en/latest/quick-start/hardware-specifications.html) to tour the Neuron features.
> **Limitations**
>
@@ -48,7 +49,7 @@ Next, please follow the [getting started guide](https://neugates.io/docs/en/late
If you prefer to install and manage Neuron yourself, you can download the latest version from [neugates.io/downloads?os=Linux](https://neugates.io/downloads?os=Linux).
For more installation options, see the [Neuron installation documentation](https://neugates.io/docs/en/latest/quick-start/installation.html).
For more installation options, see the [Neuron installation documentation](https://neugates.io/docs/en/latest/installation/installation.html).
## Documentation
@@ -92,49 +93,6 @@ $ ./neuron
>Change the log level in the rules in the zlog.conf file. Available levels include INFO, DEBUG, NOTICE, WARN, ERROR and FATAL.
>
## Test
To run all unit testers
```shell
$ cd build
$ ctest --output-on-failure
```
### Functional test
To run all functional testers
```shell
$ sudo apt-get install -y mosquitto
$ mosquitto -v &
$ python3 -m pip install -U pip
$ python3 -m pip install -r ft/requirements.txt
$ python3 -m robot --maxerroelines=600 -P ft/ -d ft/reports ft
```
### Pressure test
There are datasets for pressure testing in directory `ft/data/persistence/`.
To run pressure tests
```shell
# python dependencies
$ pip3 install -r ft/requirements.txt
# through http api, on dataset total-10k
$ python3 -m robot -P ft/ --variable neuron_api:http --variable dataset:total-10k -d ft/http-total-10k ft/pressure.test
# through http api, on dataset total-50k
$ python3 -m robot -P ft/ --variable neuron_api:http --variable dataset:total-50k -d ft/http-total-50k ft/pressure.test
# A MQTT broker is needed if using the mqtt api, mosquitto in this example
$ mosquitto -v &
# through mqtt api, on dataset simple-1k
$ python3 -m robot -P ft/ --variable neuron_api:mqtt --variable dataset:simple-1k -d ft/mqtt-simple-1k ft/pressure.test
```
## License
See [LICENSE](./LICENSE).
+1 -1
View File
@@ -1,7 +1,7 @@
set(CMAKE_SYSTEM_NAME Linux)
set(COMPILER_PREFIX aarch64-linux-gnu)
set(CMAKE_SYSTEM_PROCESSOR aarch64)
set(LIBRARY_DIR /home/neuron/libs)
set(LIBRARY_DIR /home/neuron/v2.9/libs)
set(CMAKE_C_COMPILER ${COMPILER_PREFIX}-gcc)
set(CMAKE_CXX_COMPILER ${COMPILER_PREFIX}-g++)
+1 -1
View File
@@ -1,7 +1,7 @@
set(CMAKE_SYSTEM_NAME Linux)
set(COMPILER_PREFIX arm-linux-gnueabi)
set(CMAKE_SYSTEM_PROCESSOR armv5tejl)
set(LIBRARY_DIR /home/neuron/libs)
set(LIBRARY_DIR /home/neuron/v2.9/libs)
set(CMAKE_C_COMPILER ${COMPILER_PREFIX}-gcc)
set(CMAKE_CXX_COMPILER ${COMPILER_PREFIX}-g++)
+1 -1
View File
@@ -1,7 +1,7 @@
set(CMAKE_SYSTEM_NAME Linux)
set(COMPILER_PREFIX arm-linux-gnueabihf)
set(CMAKE_SYSTEM_PROCESSOR armv7l)
set(LIBRARY_DIR /home/neuron/libs)
set(LIBRARY_DIR /home/neuron/v2.9/libs)
set(CMAKE_C_COMPILER ${COMPILER_PREFIX}-gcc)
set(CMAKE_CXX_COMPILER ${COMPILER_PREFIX}-g++)
+11
View File
@@ -17,3 +17,14 @@ set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
link_directories(${CMAKE_STAGING_PREFIX})
if(CMAKE_SYSTEM_PROCESSOR MATCHES "mips32")
link_libraries(atomic)
endif()
if(CMAKE_SYSTEM_PROCESSOR MATCHES "riscv64")
link_libraries(atomic)
endif()
if(CMAKE_SYSTEM_PROCESSOR MATCHES "loongarch64")
link_libraries(atomic)
endif()
+1 -1
View File
@@ -1,7 +1,7 @@
set(CMAKE_SYSTEM_NAME Linux)
set(COMPILER_PREFIX x86_64-linux-gnu)
set(CMAKE_SYSTEM_PROCESSOR x86_64)
set(LIBRARY_DIR /home/neuron/libs)
set(LIBRARY_DIR /home/neuron/v2.9/libs)
set(CMAKE_C_COMPILER ${COMPILER_PREFIX}-gcc)
set(CMAKE_CXX_COMPILER ${COMPILER_PREFIX}-g++)
+54
View File
@@ -0,0 +1,54 @@
#!/bin/bash
# core trace
lcov -c -d build/CMakeFiles/neuron-base.dir/src -o cov_report/cov-neuron-base.info
lcov -c -d build/CMakeFiles/neuron.dir/src -o cov_report/cov-neuron.info
lcov -c -d build/CMakeFiles/neuron.dir/plugins/restful -o cov_report/cov-restful.info
# always with core trace
function gen_trace () {
lcov -a cov-neuron-base.info -a cov-neuron.info -a cov-restful.info $@;
}
case $1 in
(ut)
rm -f cov_report/cov-neuron.info cov_report/cov-restful.info
for dir in build/tests/ut/CMakeFiles/*_test.dir; do
test_name=$(basename ${dir} "_test.dir")
lcov -c -d ${dir} -o "cov_report/cov-${test_name}_test.info"
done
cd cov_report
lcov $(for file in cov-*.info; do echo "-a $file "; done) -a cov-neuron-base.info -o cov-ut.info;;
(ft)
lcov -c -d build/plugins/mqtt/CMakeFiles/plugin-mqtt.dir -o cov_report/cov-mqtt.info
lcov -c -d build/plugins/modbus/CMakeFiles/plugin-modbus-rtu.dir -o cov_report/cov-modbus-rtu.info
lcov -c -d build/plugins/modbus/CMakeFiles/plugin-modbus-tcp.dir -o cov_report/cov-modbus-tcp.info
cd cov_report
gen_trace -a cov-mqtt.info -a cov-modbus-rtu.info -a cov-modbus-tcp.info -o cov-ft.info;;
(ekuiper)
lcov -c -d build/plugins/ekuiper/CMakeFiles/plugin-ekuiper.dir -o cov_report/cov-ekuiper.info
cd cov_report
gen_trace -a cov-ekuiper.info -o cov-ekuiper.info;;
(modbus)
lcov -c -d build/plugins/modbus/CMakeFiles/plugin-modbus-rtu.dir -o cov_report/cov-modbus-rtu.info
lcov -c -d build/plugins/modbus/CMakeFiles/plugin-modbus-tcp.dir -o cov_report/cov-modbus-tcp.info
lcov -c -d build/simulator/CMakeFiles/modbus_simulator.dir -o cov_report/cov-simulator-modbus.info
cd cov_report
gen_trace -a cov-simulator-modbus.info -a cov-modbus-rtu.info -a cov-modbus-tcp.info -o cov-modbus.info;;
(mqtt)
lcov -c -d build/plugins/mqtt/CMakeFiles/plugin-mqtt.dir -o cov_report/cov-mqtt.info
cd cov_report
gen_trace -a cov-mqtt.info -o cov-mqtt.info;;
(azure)
lcov -c -d build/plugins/mqtt/CMakeFiles/plugin-azure-iot.dir -o cov_report/cov-azure.info
cd cov_report
gen_trace -a cov-azure.info -o cov-azure.info;;
(core)
cd cov_report
gen_trace -o cov-core.info;;
(metrics)
cd cov_report
gen_trace -o cov-metrics.info;;
(*)
lcov -c -d build/plugins/$1/CMakeFiles/plugin-$1.dir -o cov_report/cov-$1.info;;
esac
+5 -4
View File
@@ -1,9 +1,10 @@
{
"plugins": [
"libplugin-mqtt.so",
"libplugin-aws-iot.so",
"libplugin-azure-iot.so",
"libplugin-ekuiper.so",
"libplugin-monitor.so",
"libplugin-modbus-tcp-comm.so",
"libplugin-file.so"
"libplugin-modbus-tcp.so",
"libplugin-modbus-rtu.so"
]
}
}
+5 -3
View File
@@ -4,10 +4,12 @@ file perms = 666
[formats]
stdout_format = "%d [%V] [%c] %f:%L %m%n"
file_format = "%d [%V] %f:%L %m%n"
stdout_format = "%d:%ms [%V] [%c] %f:%L %m%n"
file_format = "%d:%ms [%V] %f:%L %m%n"
syslog = "<P>%d(%Y-%m-%dT%T%z) %H neuron[%p]: level=%v msg="[%c] %m" file="%f:%L"%n"
[rules]
*.* "./logs/%c.log", 100MB * 10 ~ "./logs/%c.#2s.log"; file_format
*.* "./logs/%c.log", 25MB * 1 ~ "./logs/%c.#2r.log"; file_format
*.* >stdout; stdout_format
*.* $remote_syslog,"%V"; syslog
-235
View File
@@ -1,235 +0,0 @@
from os import remove
import os
import random
import subprocess
import shutil
import time
def prepare_persistence_dir():
os.system("mkdir -p build/persistence")
class Neuron(object):
process = 0
profiler_process = None
def __init__(self):
pass
def Start_Neuron(self):
prepare_persistence_dir()
self.process = subprocess.Popen(['./neuron', '--log'], cwd='build/')
return self.process
def Stop_Neuron(self, remove_persistence_data=True):
if self.profiler_process is not None:
# wait for plotting
time.sleep(5)
self.process.kill()
if remove_persistence_data:
os.system("rm build/persistence/sqlite.db")
prepare_persistence_dir()
def End_Neuron(self, process):
process.kill()
def Remove_Persistence(self):
os.system("rm build/persistence/sqlite.db")
prepare_persistence_dir()
def Profile_Neuron(self, interval, result_dir):
cmd = [
'psrecord', str(self.process.pid),
'--interval', str(interval),
'--plot', result_dir + '/cpu_mem.svg'
]
self.profiler_process = subprocess.Popen(cmd)
class Tool(object):
def __init__(self):
pass
def Array_Len(self, array):
return len(array)
class Plugin(object):
def __init__(self):
pass
def Get_Plugin_By_Name(self, splugins, name):
for plugin in splugins:
if plugin['name'] == name:
return plugin['id']
return 0
def Plugin_With_Name_Sholud_Exist(self, splugins, name):
assert 0 != self.Get_Plugin_By_Name(splugins, name)
def Plugin_With_Name_Should_Not_Exist(self, splugins, name):
assert 0 == self.Get_Plugin_By_Name(splugins, name)
class GrpConfig(object):
def __init__(self):
pass
def Get_Interval_In_Group_Config(self, gconfigs, gname):
for gconfig in gconfigs[0]:
if gconfig['name'] == gname:
return gconfig['interval']
return 0
def Group_Config_Size(self, gconfigs):
size = 0
for gconfig in gconfigs[0]:
size = size + 1
return size
def Get_Random_Group_Config(self, gconfigs):
return random.choice(gconfigs)['name']
def Group_Config_Check(self, gconfigs, name, interval):
ret = -1
for gconfig in gconfigs:
if gconfig['name'] == name:
if gconfig['interval'] == int(interval):
ret = 0
break
return ret
def Get_Group_Config_By_Name(self, sgconfigs, name):
for gconfig in sgconfigs:
if gconfig['name'] == name:
return gconfig['name']
return 0
class Node(object):
def __init__(self):
pass
def Get_Node_By_Name(self, snodes, name):
for node in snodes:
if node['name'] == name:
return True
return False
def Node_Should_Exist(self, snodes, name):
assert True == self.Get_Node_By_Name(snodes, name)
def Node_Should_Not_Exist(self, snodes, name):
assert False == self.Get_Node_By_Name(snodes, name)
def Node_With_Name_Should_Not_Exist(self, snodes, name):
assert 0 == self.Get_Node_By_Name(snodes, name)
def Get_Random_Node(self, snodes):
return random.choice(snodes)['id']
class Tag(object):
def __init__(self):
pass
def Tag_Check(self, tags, name, type, group_config_name, attribute, address):
ret = -1
for tag in tags:
if tag['name'] == name:
if tag['type'] == int(type) and tag['group_config_name'] == group_config_name and tag['attribute'] == int(attribute) and tag['address'] == address:
ret = 0
break
return ret
def Tag_Find_By_Name(self, tags, name):
for tag in tags:
if tag['name'] == name:
return tag
return None
class Subscribe(object):
def __init__(self):
pass
def Subscribe_Check(self, groups, node_id, group_config_name):
ret = -1
for group in groups:
if group['node_id'] == int(node_id) and group['group_config_name'] == group_config_name:
ret = 0
break
return ret
class Read(object):
def __init__(self):
pass
def Compare_Tag_Value_Bool(self, tags, name, value):
ret = -1
for tag in tags:
if tag['name'] == name:
if isinstance(value, str):
if (tag['value'] == False and value.lower() == "false" or
tag['value'] == True and value.lower() == "true"):
ret = 0
elif tag['value'] == int(value):
ret = 0
break
return ret
def Compare_Tag_Value_Int(self, tags, name, value):
ret = -1
for tag in tags:
if tag['name'] == name:
if int(tag['value']) == int(value):
ret = 0
break
return ret
def Compare_Tag_Value_Float(self, tags, name, value):
ret = -1
for tag in tags:
if tag['name'] == name:
if float(tag['value']) <= float(value) + 0.1 and float(tag['value']) >= float(value) - 0.1:
ret = 0
break
return ret
def Compare_Tag_Value_String(self, tags, name, value):
ret = -1
for tag in tags:
if tag['name'] == name:
if tag['value'] == str(value):
ret = 0
break
return ret
def Compare_Tag_Value_Strings(self, tags, name, value):
ret = -1
for tag in tags:
if tag['name'] == name:
if "\"" + tag['value'] + "\"" == str(value):
ret = 0
break
return ret
def Check_Tag_Error(self, tags, name, value):
ret = -1
for tag in tags:
if tag['name'] == name:
if int(tag['error']) == int(value):
ret = 0
break
return ret
@@ -1,10 +0,0 @@
{
"nodes": [
{
"type": 1,
"plugin_name": "modbus-tcp",
"name": "modbus-tcp-0000",
"state": 1
}
]
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0000",
"adapter_name": "modbus-tcp-0000"
}
@@ -1,7 +0,0 @@
{
"params": {
"host": "127.0.0.1",
"port": 60502,
"connection_mode": 0
}
}
@@ -1,11 +0,0 @@
{
"params": {
"req-topic": "Neuron/req",
"res-topic": "Neuron/resp",
"ssl": "false",
"host": "127.0.0.1",
"port": 1883,
"username": "",
"password": ""
}
}
@@ -1,10 +0,0 @@
{
"subscriptions": [
{
"sub_adapter_name": "mqtt-0000",
"group_config_name": "group-0000",
"src_adapter_name": "modbus-tcp-0000",
"read_interval": 1000
}
]
}
@@ -1,3 +0,0 @@
{
"plugins": []
}
@@ -1,10 +0,0 @@
{
"nodes": [
{
"type": 1,
"plugin_name": "modbus-tcp",
"name": "modbus-tcp-0000",
"state": 1
}
]
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0000",
"adapter_name": "modbus-tcp-0000"
}
@@ -1,7 +0,0 @@
{
"params": {
"host": "127.0.0.1",
"port": 60502,
"connection_mode": 0
}
}
@@ -1,11 +0,0 @@
{
"params": {
"req-topic": "Neuron/req",
"res-topic": "Neuron/resp",
"ssl": "false",
"host": "127.0.0.1",
"port": 1883,
"username": "",
"password": ""
}
}
@@ -1,10 +0,0 @@
{
"subscriptions": [
{
"sub_adapter_name": "mqtt-0000",
"group_config_name": "group-0000",
"src_adapter_name": "modbus-tcp-0000",
"read_interval": 1000
}
]
}
@@ -1,3 +0,0 @@
{
"plugins": []
}
-124
View File
@@ -1,124 +0,0 @@
{
"nodes": [
{
"type": 1,
"plugin_name": "modbus-tcp",
"name": "modbus-tcp-0000",
"state": 1
},
{
"type": 1,
"plugin_name": "modbus-tcp",
"name": "modbus-tcp-0001",
"state": 1
},
{
"type": 1,
"plugin_name": "modbus-tcp",
"name": "modbus-tcp-0002",
"state": 1
},
{
"type": 1,
"plugin_name": "modbus-tcp",
"name": "modbus-tcp-0003",
"state": 1
},
{
"type": 1,
"plugin_name": "modbus-tcp",
"name": "modbus-tcp-0004",
"state": 1
},
{
"type": 1,
"plugin_name": "modbus-tcp",
"name": "modbus-tcp-0005",
"state": 1
},
{
"type": 1,
"plugin_name": "modbus-tcp",
"name": "modbus-tcp-0006",
"state": 1
},
{
"type": 1,
"plugin_name": "modbus-tcp",
"name": "modbus-tcp-0007",
"state": 1
},
{
"type": 1,
"plugin_name": "modbus-tcp",
"name": "modbus-tcp-0008",
"state": 1
},
{
"type": 1,
"plugin_name": "modbus-tcp",
"name": "modbus-tcp-0009",
"state": 1
},
{
"type": 1,
"plugin_name": "neuron-opcua-plugin",
"name": "opcua-0000",
"state": 1
},
{
"type": 1,
"plugin_name": "neuron-opcua-plugin",
"name": "opcua-0001",
"state": 1
},
{
"type": 1,
"plugin_name": "neuron-opcua-plugin",
"name": "opcua-0002",
"state": 1
},
{
"type": 1,
"plugin_name": "neuron-opcua-plugin",
"name": "opcua-0003",
"state": 1
},
{
"type": 1,
"plugin_name": "neuron-opcua-plugin",
"name": "opcua-0004",
"state": 1
},
{
"type": 1,
"plugin_name": "neuron-opcua-plugin",
"name": "opcua-0005",
"state": 1
},
{
"type": 1,
"plugin_name": "neuron-opcua-plugin",
"name": "opcua-0006",
"state": 1
},
{
"type": 1,
"plugin_name": "neuron-opcua-plugin",
"name": "opcua-0007",
"state": 1
},
{
"type": 1,
"plugin_name": "neuron-opcua-plugin",
"name": "opcua-0008",
"state": 1
},
{
"type": 1,
"plugin_name": "neuron-opcua-plugin",
"name": "opcua-0009",
"state": 1
}
]
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0000",
"adapter_name": "modbus-tcp-0000"
}
@@ -1,604 +0,0 @@
{
"tags": [
{
"type": 4,
"name": "modbus1",
"attribute": 3,
"address": "1!400001"
},
{
"type": 4,
"name": "modbus2",
"attribute": 3,
"address": "1!400002"
},
{
"type": 4,
"name": "modbus3",
"attribute": 3,
"address": "1!400003"
},
{
"type": 4,
"name": "modbus4",
"attribute": 3,
"address": "1!400004"
},
{
"type": 4,
"name": "modbus5",
"attribute": 3,
"address": "1!400005"
},
{
"type": 4,
"name": "modbus6",
"attribute": 3,
"address": "1!400006"
},
{
"type": 4,
"name": "modbus7",
"attribute": 3,
"address": "1!400007"
},
{
"type": 4,
"name": "modbus8",
"attribute": 3,
"address": "1!400008"
},
{
"type": 4,
"name": "modbus9",
"attribute": 3,
"address": "1!400009"
},
{
"type": 4,
"name": "modbus10",
"attribute": 3,
"address": "1!400010"
},
{
"type": 4,
"name": "modbus11",
"attribute": 3,
"address": "1!400011"
},
{
"type": 4,
"name": "modbus12",
"attribute": 3,
"address": "1!400012"
},
{
"type": 4,
"name": "modbus13",
"attribute": 3,
"address": "1!400013"
},
{
"type": 4,
"name": "modbus14",
"attribute": 3,
"address": "1!400014"
},
{
"type": 4,
"name": "modbus15",
"attribute": 3,
"address": "1!400015"
},
{
"type": 4,
"name": "modbus16",
"attribute": 3,
"address": "1!400016"
},
{
"type": 4,
"name": "modbus17",
"attribute": 3,
"address": "1!400017"
},
{
"type": 4,
"name": "modbus18",
"attribute": 3,
"address": "1!400018"
},
{
"type": 4,
"name": "modbus19",
"attribute": 3,
"address": "1!400019"
},
{
"type": 4,
"name": "modbus20",
"attribute": 3,
"address": "1!400020"
},
{
"type": 4,
"name": "modbus21",
"attribute": 3,
"address": "1!400021"
},
{
"type": 4,
"name": "modbus22",
"attribute": 3,
"address": "1!400022"
},
{
"type": 4,
"name": "modbus23",
"attribute": 3,
"address": "1!400023"
},
{
"type": 4,
"name": "modbus24",
"attribute": 3,
"address": "1!400024"
},
{
"type": 4,
"name": "modbus25",
"attribute": 3,
"address": "1!400025"
},
{
"type": 4,
"name": "modbus26",
"attribute": 3,
"address": "1!400026"
},
{
"type": 4,
"name": "modbus27",
"attribute": 3,
"address": "1!400027"
},
{
"type": 4,
"name": "modbus28",
"attribute": 3,
"address": "1!400028"
},
{
"type": 4,
"name": "modbus29",
"attribute": 3,
"address": "1!400029"
},
{
"type": 4,
"name": "modbus30",
"attribute": 3,
"address": "1!400030"
},
{
"type": 4,
"name": "modbus31",
"attribute": 3,
"address": "1!400031"
},
{
"type": 4,
"name": "modbus32",
"attribute": 3,
"address": "1!400032"
},
{
"type": 4,
"name": "modbus33",
"attribute": 3,
"address": "1!400033"
},
{
"type": 4,
"name": "modbus34",
"attribute": 3,
"address": "1!400034"
},
{
"type": 4,
"name": "modbus35",
"attribute": 3,
"address": "1!400035"
},
{
"type": 4,
"name": "modbus36",
"attribute": 3,
"address": "1!400036"
},
{
"type": 4,
"name": "modbus37",
"attribute": 3,
"address": "1!400037"
},
{
"type": 4,
"name": "modbus38",
"attribute": 3,
"address": "1!400038"
},
{
"type": 4,
"name": "modbus39",
"attribute": 3,
"address": "1!400039"
},
{
"type": 4,
"name": "modbus40",
"attribute": 3,
"address": "1!400040"
},
{
"type": 4,
"name": "modbus41",
"attribute": 3,
"address": "1!400041"
},
{
"type": 4,
"name": "modbus42",
"attribute": 3,
"address": "1!400042"
},
{
"type": 4,
"name": "modbus43",
"attribute": 3,
"address": "1!400043"
},
{
"type": 4,
"name": "modbus44",
"attribute": 3,
"address": "1!400044"
},
{
"type": 4,
"name": "modbus45",
"attribute": 3,
"address": "1!400045"
},
{
"type": 4,
"name": "modbus46",
"attribute": 3,
"address": "1!400046"
},
{
"type": 4,
"name": "modbus47",
"attribute": 3,
"address": "1!400047"
},
{
"type": 4,
"name": "modbus48",
"attribute": 3,
"address": "1!400048"
},
{
"type": 4,
"name": "modbus49",
"attribute": 3,
"address": "1!400049"
},
{
"type": 4,
"name": "modbus50",
"attribute": 3,
"address": "1!400050"
},
{
"type": 4,
"name": "modbus51",
"attribute": 3,
"address": "1!400051"
},
{
"type": 4,
"name": "modbus52",
"attribute": 3,
"address": "1!400052"
},
{
"type": 4,
"name": "modbus53",
"attribute": 3,
"address": "1!400053"
},
{
"type": 4,
"name": "modbus54",
"attribute": 3,
"address": "1!400054"
},
{
"type": 4,
"name": "modbus55",
"attribute": 3,
"address": "1!400055"
},
{
"type": 4,
"name": "modbus56",
"attribute": 3,
"address": "1!400056"
},
{
"type": 4,
"name": "modbus57",
"attribute": 3,
"address": "1!400057"
},
{
"type": 4,
"name": "modbus58",
"attribute": 3,
"address": "1!400058"
},
{
"type": 4,
"name": "modbus59",
"attribute": 3,
"address": "1!400059"
},
{
"type": 4,
"name": "modbus60",
"attribute": 3,
"address": "1!400060"
},
{
"type": 4,
"name": "modbus61",
"attribute": 3,
"address": "1!400061"
},
{
"type": 4,
"name": "modbus62",
"attribute": 3,
"address": "1!400062"
},
{
"type": 4,
"name": "modbus63",
"attribute": 3,
"address": "1!400063"
},
{
"type": 4,
"name": "modbus64",
"attribute": 3,
"address": "1!400064"
},
{
"type": 4,
"name": "modbus65",
"attribute": 3,
"address": "1!400065"
},
{
"type": 4,
"name": "modbus66",
"attribute": 3,
"address": "1!400066"
},
{
"type": 4,
"name": "modbus67",
"attribute": 3,
"address": "1!400067"
},
{
"type": 4,
"name": "modbus68",
"attribute": 3,
"address": "1!400068"
},
{
"type": 4,
"name": "modbus69",
"attribute": 3,
"address": "1!400069"
},
{
"type": 4,
"name": "modbus70",
"attribute": 3,
"address": "1!400070"
},
{
"type": 4,
"name": "modbus71",
"attribute": 3,
"address": "1!400071"
},
{
"type": 4,
"name": "modbus72",
"attribute": 3,
"address": "1!400072"
},
{
"type": 4,
"name": "modbus73",
"attribute": 3,
"address": "1!400073"
},
{
"type": 4,
"name": "modbus74",
"attribute": 3,
"address": "1!400074"
},
{
"type": 4,
"name": "modbus75",
"attribute": 3,
"address": "1!400075"
},
{
"type": 4,
"name": "modbus76",
"attribute": 3,
"address": "1!400076"
},
{
"type": 4,
"name": "modbus77",
"attribute": 3,
"address": "1!400077"
},
{
"type": 4,
"name": "modbus78",
"attribute": 3,
"address": "1!400078"
},
{
"type": 4,
"name": "modbus79",
"attribute": 3,
"address": "1!400079"
},
{
"type": 4,
"name": "modbus80",
"attribute": 3,
"address": "1!400080"
},
{
"type": 4,
"name": "modbus81",
"attribute": 3,
"address": "1!400081"
},
{
"type": 4,
"name": "modbus82",
"attribute": 3,
"address": "1!400082"
},
{
"type": 4,
"name": "modbus83",
"attribute": 3,
"address": "1!400083"
},
{
"type": 4,
"name": "modbus84",
"attribute": 3,
"address": "1!400084"
},
{
"type": 4,
"name": "modbus85",
"attribute": 3,
"address": "1!400085"
},
{
"type": 4,
"name": "modbus86",
"attribute": 3,
"address": "1!400086"
},
{
"type": 4,
"name": "modbus87",
"attribute": 3,
"address": "1!400087"
},
{
"type": 4,
"name": "modbus88",
"attribute": 3,
"address": "1!400088"
},
{
"type": 4,
"name": "modbus89",
"attribute": 3,
"address": "1!400089"
},
{
"type": 4,
"name": "modbus90",
"attribute": 3,
"address": "1!400090"
},
{
"type": 4,
"name": "modbus91",
"attribute": 3,
"address": "1!400091"
},
{
"type": 4,
"name": "modbus92",
"attribute": 3,
"address": "1!400092"
},
{
"type": 4,
"name": "modbus93",
"attribute": 3,
"address": "1!400093"
},
{
"type": 4,
"name": "modbus94",
"attribute": 3,
"address": "1!400094"
},
{
"type": 4,
"name": "modbus95",
"attribute": 3,
"address": "1!400095"
},
{
"type": 4,
"name": "modbus96",
"attribute": 3,
"address": "1!400096"
},
{
"type": 4,
"name": "modbus97",
"attribute": 3,
"address": "1!400097"
},
{
"type": 4,
"name": "modbus98",
"attribute": 3,
"address": "1!400098"
},
{
"type": 4,
"name": "modbus99",
"attribute": 3,
"address": "1!400099"
},
{
"type": 4,
"name": "modbus100",
"attribute": 3,
"address": "1!400100"
}
]
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0001",
"adapter_name": "modbus-tcp-0000"
}
@@ -1,604 +0,0 @@
{
"tags": [
{
"type": 4,
"name": "modbus101",
"attribute": 3,
"address": "1!400101"
},
{
"type": 4,
"name": "modbus102",
"attribute": 3,
"address": "1!400102"
},
{
"type": 4,
"name": "modbus103",
"attribute": 3,
"address": "1!400103"
},
{
"type": 4,
"name": "modbus104",
"attribute": 3,
"address": "1!400104"
},
{
"type": 4,
"name": "modbus105",
"attribute": 3,
"address": "1!400105"
},
{
"type": 4,
"name": "modbus106",
"attribute": 3,
"address": "1!400106"
},
{
"type": 4,
"name": "modbus107",
"attribute": 3,
"address": "1!400107"
},
{
"type": 4,
"name": "modbus108",
"attribute": 3,
"address": "1!400108"
},
{
"type": 4,
"name": "modbus109",
"attribute": 3,
"address": "1!400109"
},
{
"type": 4,
"name": "modbus110",
"attribute": 3,
"address": "1!400110"
},
{
"type": 4,
"name": "modbus111",
"attribute": 3,
"address": "1!400111"
},
{
"type": 4,
"name": "modbus112",
"attribute": 3,
"address": "1!400112"
},
{
"type": 4,
"name": "modbus113",
"attribute": 3,
"address": "1!400113"
},
{
"type": 4,
"name": "modbus114",
"attribute": 3,
"address": "1!400114"
},
{
"type": 4,
"name": "modbus115",
"attribute": 3,
"address": "1!400115"
},
{
"type": 4,
"name": "modbus116",
"attribute": 3,
"address": "1!400116"
},
{
"type": 4,
"name": "modbus117",
"attribute": 3,
"address": "1!400117"
},
{
"type": 4,
"name": "modbus118",
"attribute": 3,
"address": "1!400118"
},
{
"type": 4,
"name": "modbus119",
"attribute": 3,
"address": "1!400119"
},
{
"type": 4,
"name": "modbus120",
"attribute": 3,
"address": "1!400120"
},
{
"type": 4,
"name": "modbus121",
"attribute": 3,
"address": "1!400121"
},
{
"type": 4,
"name": "modbus122",
"attribute": 3,
"address": "1!400122"
},
{
"type": 4,
"name": "modbus123",
"attribute": 3,
"address": "1!400123"
},
{
"type": 4,
"name": "modbus124",
"attribute": 3,
"address": "1!400124"
},
{
"type": 4,
"name": "modbus125",
"attribute": 3,
"address": "1!400125"
},
{
"type": 4,
"name": "modbus126",
"attribute": 3,
"address": "1!400126"
},
{
"type": 4,
"name": "modbus127",
"attribute": 3,
"address": "1!400127"
},
{
"type": 4,
"name": "modbus128",
"attribute": 3,
"address": "1!400128"
},
{
"type": 4,
"name": "modbus129",
"attribute": 3,
"address": "1!400129"
},
{
"type": 4,
"name": "modbus130",
"attribute": 3,
"address": "1!400130"
},
{
"type": 4,
"name": "modbus131",
"attribute": 3,
"address": "1!400131"
},
{
"type": 4,
"name": "modbus132",
"attribute": 3,
"address": "1!400132"
},
{
"type": 4,
"name": "modbus133",
"attribute": 3,
"address": "1!400133"
},
{
"type": 4,
"name": "modbus134",
"attribute": 3,
"address": "1!400134"
},
{
"type": 4,
"name": "modbus135",
"attribute": 3,
"address": "1!400135"
},
{
"type": 4,
"name": "modbus136",
"attribute": 3,
"address": "1!400136"
},
{
"type": 4,
"name": "modbus137",
"attribute": 3,
"address": "1!400137"
},
{
"type": 4,
"name": "modbus138",
"attribute": 3,
"address": "1!400138"
},
{
"type": 4,
"name": "modbus139",
"attribute": 3,
"address": "1!400139"
},
{
"type": 4,
"name": "modbus140",
"attribute": 3,
"address": "1!400140"
},
{
"type": 4,
"name": "modbus141",
"attribute": 3,
"address": "1!400141"
},
{
"type": 4,
"name": "modbus142",
"attribute": 3,
"address": "1!400142"
},
{
"type": 4,
"name": "modbus143",
"attribute": 3,
"address": "1!400143"
},
{
"type": 4,
"name": "modbus144",
"attribute": 3,
"address": "1!400144"
},
{
"type": 4,
"name": "modbus145",
"attribute": 3,
"address": "1!400145"
},
{
"type": 4,
"name": "modbus146",
"attribute": 3,
"address": "1!400146"
},
{
"type": 4,
"name": "modbus147",
"attribute": 3,
"address": "1!400147"
},
{
"type": 4,
"name": "modbus148",
"attribute": 3,
"address": "1!400148"
},
{
"type": 4,
"name": "modbus149",
"attribute": 3,
"address": "1!400149"
},
{
"type": 4,
"name": "modbus150",
"attribute": 3,
"address": "1!400150"
},
{
"type": 4,
"name": "modbus151",
"attribute": 3,
"address": "1!400151"
},
{
"type": 4,
"name": "modbus152",
"attribute": 3,
"address": "1!400152"
},
{
"type": 4,
"name": "modbus153",
"attribute": 3,
"address": "1!400153"
},
{
"type": 4,
"name": "modbus154",
"attribute": 3,
"address": "1!400154"
},
{
"type": 4,
"name": "modbus155",
"attribute": 3,
"address": "1!400155"
},
{
"type": 4,
"name": "modbus156",
"attribute": 3,
"address": "1!400156"
},
{
"type": 4,
"name": "modbus157",
"attribute": 3,
"address": "1!400157"
},
{
"type": 4,
"name": "modbus158",
"attribute": 3,
"address": "1!400158"
},
{
"type": 4,
"name": "modbus159",
"attribute": 3,
"address": "1!400159"
},
{
"type": 4,
"name": "modbus160",
"attribute": 3,
"address": "1!400160"
},
{
"type": 4,
"name": "modbus161",
"attribute": 3,
"address": "1!400161"
},
{
"type": 4,
"name": "modbus162",
"attribute": 3,
"address": "1!400162"
},
{
"type": 4,
"name": "modbus163",
"attribute": 3,
"address": "1!400163"
},
{
"type": 4,
"name": "modbus164",
"attribute": 3,
"address": "1!400164"
},
{
"type": 4,
"name": "modbus165",
"attribute": 3,
"address": "1!400165"
},
{
"type": 4,
"name": "modbus166",
"attribute": 3,
"address": "1!400166"
},
{
"type": 4,
"name": "modbus167",
"attribute": 3,
"address": "1!400167"
},
{
"type": 4,
"name": "modbus168",
"attribute": 3,
"address": "1!400168"
},
{
"type": 4,
"name": "modbus169",
"attribute": 3,
"address": "1!400169"
},
{
"type": 4,
"name": "modbus170",
"attribute": 3,
"address": "1!400170"
},
{
"type": 4,
"name": "modbus171",
"attribute": 3,
"address": "1!400171"
},
{
"type": 4,
"name": "modbus172",
"attribute": 3,
"address": "1!400172"
},
{
"type": 4,
"name": "modbus173",
"attribute": 3,
"address": "1!400173"
},
{
"type": 4,
"name": "modbus174",
"attribute": 3,
"address": "1!400174"
},
{
"type": 4,
"name": "modbus175",
"attribute": 3,
"address": "1!400175"
},
{
"type": 4,
"name": "modbus176",
"attribute": 3,
"address": "1!400176"
},
{
"type": 4,
"name": "modbus177",
"attribute": 3,
"address": "1!400177"
},
{
"type": 4,
"name": "modbus178",
"attribute": 3,
"address": "1!400178"
},
{
"type": 4,
"name": "modbus179",
"attribute": 3,
"address": "1!400179"
},
{
"type": 4,
"name": "modbus180",
"attribute": 3,
"address": "1!400180"
},
{
"type": 4,
"name": "modbus181",
"attribute": 3,
"address": "1!400181"
},
{
"type": 4,
"name": "modbus182",
"attribute": 3,
"address": "1!400182"
},
{
"type": 4,
"name": "modbus183",
"attribute": 3,
"address": "1!400183"
},
{
"type": 4,
"name": "modbus184",
"attribute": 3,
"address": "1!400184"
},
{
"type": 4,
"name": "modbus185",
"attribute": 3,
"address": "1!400185"
},
{
"type": 4,
"name": "modbus186",
"attribute": 3,
"address": "1!400186"
},
{
"type": 4,
"name": "modbus187",
"attribute": 3,
"address": "1!400187"
},
{
"type": 4,
"name": "modbus188",
"attribute": 3,
"address": "1!400188"
},
{
"type": 4,
"name": "modbus189",
"attribute": 3,
"address": "1!400189"
},
{
"type": 4,
"name": "modbus190",
"attribute": 3,
"address": "1!400190"
},
{
"type": 4,
"name": "modbus191",
"attribute": 3,
"address": "1!400191"
},
{
"type": 4,
"name": "modbus192",
"attribute": 3,
"address": "1!400192"
},
{
"type": 4,
"name": "modbus193",
"attribute": 3,
"address": "1!400193"
},
{
"type": 4,
"name": "modbus194",
"attribute": 3,
"address": "1!400194"
},
{
"type": 4,
"name": "modbus195",
"attribute": 3,
"address": "1!400195"
},
{
"type": 4,
"name": "modbus196",
"attribute": 3,
"address": "1!400196"
},
{
"type": 4,
"name": "modbus197",
"attribute": 3,
"address": "1!400197"
},
{
"type": 4,
"name": "modbus198",
"attribute": 3,
"address": "1!400198"
},
{
"type": 4,
"name": "modbus199",
"attribute": 3,
"address": "1!400199"
},
{
"type": 4,
"name": "modbus200",
"attribute": 3,
"address": "1!400200"
}
]
}
@@ -1,7 +0,0 @@
{
"params": {
"host":"127.0.0.1",
"port":60502,
"connection_mode":0
}
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0000",
"adapter_name": "modbus-tcp-0001"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0001",
"adapter_name": "modbus-tcp-0001"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0002",
"adapter_name": "modbus-tcp-0001"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0003",
"adapter_name": "modbus-tcp-0001"
}
@@ -1,7 +0,0 @@
{
"params": {
"host":"127.0.0.1",
"port":60502,
"connection_mode":0
}
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0000",
"adapter_name": "modbus-tcp-0002"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0001",
"adapter_name": "modbus-tcp-0002"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0002",
"adapter_name": "modbus-tcp-0002"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0003",
"adapter_name": "modbus-tcp-0002"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0004",
"adapter_name": "modbus-tcp-0002"
}
@@ -1,7 +0,0 @@
{
"params": {
"host":"127.0.0.1",
"port":60502,
"connection_mode":0
}
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0000",
"adapter_name": "modbus-tcp-0003"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0001",
"adapter_name": "modbus-tcp-0003"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0002",
"adapter_name": "modbus-tcp-0003"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0003",
"adapter_name": "modbus-tcp-0003"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0004",
"adapter_name": "modbus-tcp-0003"
}
@@ -1,7 +0,0 @@
{
"params": {
"host":"127.0.0.1",
"port":60502,
"connection_mode":0
}
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0000",
"adapter_name": "modbus-tcp-0004"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0001",
"adapter_name": "modbus-tcp-0004"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0002",
"adapter_name": "modbus-tcp-0004"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0003",
"adapter_name": "modbus-tcp-0004"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0004",
"adapter_name": "modbus-tcp-0004"
}
@@ -1,7 +0,0 @@
{
"params": {
"host":"127.0.0.1",
"port":60502,
"connection_mode":0
}
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0000",
"adapter_name": "modbus-tcp-0005"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0001",
"adapter_name": "modbus-tcp-0005"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0002",
"adapter_name": "modbus-tcp-0005"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0003",
"adapter_name": "modbus-tcp-0005"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0004",
"adapter_name": "modbus-tcp-0005"
}
@@ -1,7 +0,0 @@
{
"params": {
"host":"127.0.0.1",
"port":60502,
"connection_mode":0
}
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0000",
"adapter_name": "modbus-tcp-0006"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0001",
"adapter_name": "modbus-tcp-0006"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0002",
"adapter_name": "modbus-tcp-0006"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0003",
"adapter_name": "modbus-tcp-0006"
}
@@ -1,5 +0,0 @@
{
"read_interval": 1000,
"group_config_name": "group-0004",
"adapter_name": "modbus-tcp-0006"
}

Some files were not shown because too many files have changed in this diff Show More