Commit Graph

1306 Commits

Author SHA1 Message Date
Shawn 630b54f6ee feat(acl): make mqtt over websocket work with the new config 2021-07-07 14:43:54 +08:00
Rory Z 612d25fdb3 chore(connector): rename mongo config key 2021-07-07 10:06:10 +08:00
k32 a95b91c005 chore(coap): Fix debug logs 2021-07-06 18:42:39 +02:00
Shawn 707851c36f refactor(force_shutdown): force shutdown the connection if it don't kill itself 2021-07-06 20:11:49 +08:00
Shawn 7c0fd642bb feat(acl): make acl cache work with the new config 2021-07-06 19:24:54 +08:00
Shawn 5efd5c8d3b refactor(emqx_connection): make the mqtt tcp connection work with new config 2021-07-06 18:26:54 +08:00
lafirest 72f9e60d63 feat(emqx_retainer): add simple restapi for emqx_retainer 2021-07-06 18:16:05 +08:00
Rory Z 53df218e6a feat(connector): mongo support replica set 2021-07-06 18:07:06 +08:00
Shawn 969e72c82b refactor(connection): remove active_n from state 2021-07-05 19:13:55 +08:00
Shawn 10b01a34ef refactor(listeners): reformat the code for starting stopping listeners 2021-07-05 19:12:26 +08:00
Shawn 6d92d87ae7 feat(map_lib): support emqx_map_lib:deep_merge/2 2021-07-05 19:11:05 +08:00
Rory Z fd0a211629 chore(authz): mongo connector support ssl 2021-07-05 17:57:03 +08:00
Rory Z 45ee504dc5 chore(authz): rename ACL to AuthZ 2021-07-05 17:57:03 +08:00
Rory Z f733293a8b chore(authz): update apps vsn 2021-07-05 17:57:03 +08:00
Rory Z f92b8bb7fb chore(authz): add test case 2021-07-05 17:57:03 +08:00
Rory Z 694f3bd67f feat(authz): support mongo single 2021-07-05 17:57:03 +08:00
Shawn 807bbb391c feat(map_lib): support emqx_config:get_listener_conf/3,4 2021-07-05 16:40:00 +08:00
Shawn 0aec496886 feat(map_lib): support emqx_map_lib:deep_find/2 2021-07-05 16:02:03 +08:00
Shawn 30c2a76dae refactor(emqx_config): move helper funcs to emqx_map_lib 2021-07-05 15:16:01 +08:00
DDDHuang ce1e6ce89d fix: start jiffy by emqx 2021-07-05 14:41:33 +08:00
Shawn a884d215e1 fix(connection): start connection failed 2021-07-05 13:50:37 +08:00
Shawn fb809a5c08 fix(active_n): revert the changes to active_n 2021-07-05 11:28:21 +08:00
Shawn 8b3fcde380 feat(config): make the listeners up 2021-07-02 22:17:22 +08:00
JianBo He 8ee86f2fbe fix(gw): start emqx-gateway after emqx restarted 2021-07-02 20:41:46 +08:00
JianBo He 56cdd469ff
feat(gateway): The prototype for emqx-gateway application
* feat(gateway): add gateway application

* chore(gateway): add normalize confs function

* refactor: move emqx-stomp to emqx-gateway subdir

* chore(gateway): fix some bad function defination

* chore(gateway): rename type to gwid

* chore(gw-stomp): upgrade the implementation to suppport gateway instance

* feat(gw-stomp): add reconnect mechanism

* refactor(stomp): upgrade connection&channel module to latest

* refactor(stomp): more details for handle_in/out

* refactor(stomp): get it up and running

* chore(gw): load some modules by default

* refactor: upgrade the emqx-gateway schema module

* test(stomp): fix testcases for stomp gateway

* chore(gw): remove needless lines

* chore(gateway): correct a lot of specs

* chore(gw): add a draft for metrics

* chore(gw): add metrics process

* fix(gw): fix cm process monitor

* test(gw): add test cases for gateway-regitry

* feat(gw): add metrics/cli for gateway

* fix(gw): fix xref errors

* chore(gw): pretty gateway metrics print format

* chore(gw-stomp): generate clientid by default

* chore(gw): more reliable

* chore(gw): rename gwid -> type

* chore(gw): impl the update logic

* chore(gw): some format improvement

* chore(gw): adapts the hocon configs

* fix(gw): fix xref errors

* test(gw): update configurations for tests

* chore(gw): ignore diaylzer warnings

* fix(gw): fix bad function call

* chore(gw): remove needless comments
2021-07-02 20:17:40 +08:00
zhanghongtong 4313e37994 chore(release): update emqx release version 2021-07-02 19:11:02 +08:00
Turtle 24292f4f4e chore: delete plugins related configuration 2021-07-02 18:12:06 +08:00
William Yang 5ae8cd2fa3 fix(quic): dialyzer errors 2021-07-02 17:10:56 +08:00
William Yang 72117f3f1d feat(quic): bump emqtt and quicer version
emqtt: 1.4.1
quicer: 0.0.5
2021-07-02 17:10:56 +08:00
William Yang 82d0f2b016 feat(quic): Add tests and support more listener option
- support option `active_n`
- add quic group in emqx_mqtt_protocol_v5_SUITE
- fix rate limit
2021-07-02 17:10:56 +08:00
Turtle 41870a00b3 chore: fix emqx_retainer test cases 2021-07-02 17:01:16 +08:00
Turtle 390b28a25d fix: join cluster fail 2021-07-02 17:01:16 +08:00
Turtle 918a26e921 feat(conf): merge all conf to emqx.conf 2021-07-02 17:01:16 +08:00
Turtle fb2f2741a4 fix: fix test cases fail 2021-07-02 14:41:28 +08:00
Turtle 4b87594839 feat(conf): sys、mon、alarm、plugins、broker、mqtt conf to hocon 2021-07-02 14:41:28 +08:00
zhouzb c7cbe819ed feat(hocon): convert config format of rpc and log to hocon 2021-07-02 14:41:28 +08:00
Shawn 092c5455c8 feat(config): change configs of zone and listener to hocon format 2021-07-02 14:41:28 +08:00
Turtle 8266a79867 feat(conf): cluster/node conf to hocon 2021-07-02 14:41:28 +08:00
DDDHuang 2c7fd0b547
chore: mgmt hoconf support (#5153) 2021-07-02 00:02:09 +08:00
turtleDeng c7e540f4f1
feat(modules): Update the configuration file to hocon (#5151) 2021-07-01 20:08:13 +08:00
zhanghongtong bf4c31b745 chore(authz): use atom key for hocon config 2021-07-01 18:29:32 +08:00
Shawn 8dcb5ceb86 fix(config): get config problems in sysmon 2021-07-01 18:01:38 +08:00
Shawn aad393f8d7 feat(config): apply new config struct to emqx_sys_mon 2021-07-01 16:27:59 +08:00
Shawn db38137d5c feat(config): apply new config struct to emqx_alarm 2021-07-01 15:00:59 +08:00
Shawn 66aaed1f87 feat(config): update emqx_schema for logger 2021-07-01 11:47:33 +08:00
turtleDeng d4f726419f
feat(bridge-mqtt): Update the configuration file to hocon (#5142) 2021-07-01 10:51:59 +08:00
lafirest 860aea50db chore(emqx_retainer): change config of emqx_retainer to use hocon 2021-06-30 21:42:34 +08:00
Shawn d2c50baf93 fix(config): set console_handler.enable to turewhen start from console 2021-06-30 19:24:37 +08:00
zhanghongtong e0f1087490 chore(mgmt): cancel plugins test case 2021-06-30 19:17:38 +08:00
zhouzb b63bba59d5 feat(authn): update schema for mysql and postgresql 2021-06-30 18:57:50 +08:00
tigercl cdcb63374a
refactor(authn): support hocon for authn (#5068)
* refactor(use hocon): rename to authn, , support hocon, support two types of chains and support bind listener to chain
2021-06-30 17:04:28 +08:00
Shawn 02c9a3163b refactor(config): emqx.conf for 5.0 2021-06-30 09:39:03 +08:00
k32 dae4c771d0
Merge pull request #5126 from k32/dev/delayed-mod-shard
chore(mod_delayed): Add RLOG shard
2021-06-29 13:05:41 +02:00
zhanghongtong 2b082f9cf9 chore(connector): update connector ssl schema 2021-06-29 18:22:44 +08:00
zhanghongtong c9acf423ba chore: rename authorze_cache function name to check_authorization_cache 2021-06-29 10:09:15 +08:00
zhanghongtong e1b0f44a8a chore: rename check_authz to authorize 2021-06-29 10:09:15 +08:00
zhanghongtong c63bdc355a chore: rename check_acl to check_authz
update emqx_coap vsn

rename OnClientCheckAcl to OnClientCheckAuthz in exhook
2021-06-29 10:09:15 +08:00
k32 e8e956b074 chore(mod_delayed): Add RLOG shard 2021-06-28 21:35:10 +02:00
k32 2bea95ff6e
Merge pull request #5124 from k32/dev/rule-engine-shard
chore(rule_engine): Add an RLOG shard
2021-06-28 21:27:18 +02:00
k32 73ec8c47cc chore(rule_engine): Add an RLOG shard 2021-06-28 20:29:08 +02:00
k32 9ab5c88d20 chore(retainer): Add RLOG shard 2021-06-28 20:22:06 +02:00
k32 1618a90ddd chore(telemetry): Add an RLOG shard 2021-06-28 18:14:36 +02:00
k32 26b2216e25 chore(shared_sub): Add shared_sub shard 2021-06-28 17:52:57 +02:00
k32 ce4800e6ae chore(alarm): Alarm shard 2021-06-28 17:52:57 +02:00
k32 7c9861dbaa chore(banned): Add banned shard 2021-06-28 14:05:35 +02:00
k32 98739224f6 chore(emqx_sn): Add SN shard 2021-06-28 14:05:30 +02:00
k32 ca1b789ef6
Merge pull request #5100 from k32/dev/authn-shard
Create authN shard
2021-06-28 12:57:36 +02:00
zhanghongtong 64ce0d0e4f chore(acl): delete acl nomatch config item 2021-06-28 17:47:44 +08:00
Turtle faad90c9d4 chore(plugins): rm emqx-web-hook and mv webhook action to emqx_rule_actions 2021-06-28 17:07:46 +08:00
William Yang 5571c54607
Merge pull request #5002 from qzhuyan/dev/william/quic-support-centos7
Quic support part 1
2021-06-28 10:49:44 +02:00
k32 dc1deff3f3 refactor(rlog): Fix initialization of emqx_cm_registry table 2021-06-28 10:35:36 +02:00
Turtle 33036a1a91 chore(plugins): rm emqx-pks-file plugin 2021-06-28 15:57:19 +08:00
Turtle 434beef3ad feat(rule-engine): Update the configuration file to hocon 2021-06-28 14:51:15 +08:00
Turtle 54aeacee14 feat(rule-engine): update the configuration file to hocon 2021-06-28 14:51:15 +08:00
zhanghongtong dd424c7656 build: delete sasl plugin 2021-06-28 11:52:47 +08:00
zhanghongtong d6e531bd8f Merge branch 'master' of https://github.com/emqx/emqx into merge-4.3-to-5.0 2021-06-28 11:46:55 +08:00
zhanghongtong 4e4c1dd17a build: delete needless auth plugins 2021-06-28 11:45:01 +08:00
Turtle d0d14f7a02 chore(plugins): rm emqx-lua-hook plugin 2021-06-28 11:44:01 +08:00
Rory Z 1f7291380b chore: delete internal acl code 2021-06-28 11:44:01 +08:00
Rory Z 1582c07cbe chore: delete import and export feature 2021-06-28 11:44:01 +08:00
Rory Z e949cdca98 chore: delete import and export feature 2021-06-28 11:44:01 +08:00
zhanghongtong 9da51d4b1c build: delete needless auth plugins 2021-06-28 11:44:01 +08:00
zhanghongtong cbc782f5bf build: delete needless auth plugins 2021-06-28 11:43:58 +08:00
Turtle 78cbc2a19d chore: move emqx_recon to emqx_modules plugin 2021-06-28 11:43:48 +08:00
turtleDeng 89529ec4fa chore: reset plugin conf generate (#5094)
* chore: reset plugin conf generate

* fix(plugin): check dialyzer fail

* chore: rm emqx_management_schema.erl file

* fix(plugin): check dialyzer fail

* fix(plugin): fix check ct fail

* fix(plugin): check dialyzer fail
2021-06-28 11:43:48 +08:00
Turtle c9ac851d27 feat(prometheus): Update the configuration file to hocon 2021-06-28 11:43:48 +08:00
Shawn cc1f57ff01 Add some APIs for emqx_config (#5095) 2021-06-28 11:43:48 +08:00
Shawn d77352168f Reference to foreign schema definitions in emqx_schema (#5090) 2021-06-28 11:43:48 +08:00
Rory Z 6f0f670550 feat(redis connector): redis connector support cluster (#5074) 2021-06-28 11:43:48 +08:00
Shawn 36c7785fd0 The config handler phase2 (#5052)
* refator(config_handler): handle and validate the updates to raw_configs

* fix(hocon): update hocon to 0.8.0

* refactor(config_handler): check and apply envs only in top-level handler

* refactor(config_handler): update config from top level to bottom level

* refactor(emqx_data_bridge): move configs to emqx.conf

* fix(emqx_schema): remove the extra config path

* fix(config_handler): load the emqx.conf when starting emqx_config_handler

* fix(data_bridge): API not working

* feat(config_handler): save updated configs to emqx_override.conf

* fix(config_handler): cannot find the emqx.conf and emqx_override.conf

* fix(emqx_config): cannot find the correct path for etc dir

* fix(test): load load emqx_schema foreign refereced apps

* refactor(emqx_plugin): do not generate configs before load plugins

All configs (including the configs for plugins) now should go into
the `emqx.conf`.

* fix(tests): update the test cases for plugins

* fix(tests): don't include schema from apps when testing

* fix(tests): use emqx-ct-helper branch hocon
2021-06-28 11:43:48 +08:00
DDDHuang 44412549ab fix: statsd hocon schema & add test suit (#5060) 2021-06-28 11:43:48 +08:00
k32 b88c71b481 feat(dashboard): Introduce dashboard RLOG shard 2021-06-28 11:43:48 +08:00
k32 198e3c03e0 feat(emqx_management): mqtt_app shard 2021-06-28 11:43:48 +08:00
turtleDeng b4d9af0e85 feat(telemetry): Update the configuration file to hocon (#5064) 2021-06-28 11:43:48 +08:00
Rory Z 39e4d348f6 feat: add authz (#4852)
* feat(authorization): add authorization api

* feat(authorization): add check function

* feat(authorization): use hocon config file

* feat(authz): add mysql connector

* feat(authz): support pgsql

* feat(connector): support redis

* chore(authz): use "publish/subscribe/all" instead of "pub/sub/pubsub"
2021-06-28 11:43:48 +08:00
Zaiming Shi 871f23f047 build: do not allow user override PKG_VSN
We have an assertion in code, allowing user to override
will compile but not run.
2021-06-28 11:43:48 +08:00
Zaiming Shi cd5431e71d chore(emqx_lwm2m): pin lwm2m-coap v2.0.0
v2.0.0 has emqx_http_lib added as a rebar dependency
v1.* is for emqx v4.3.*
2021-06-28 11:43:46 +08:00
DDDHuang 9bc3b4684a refactor(config): support hocon 2021-06-28 11:43:31 +08:00
DDDHuang 8356102450 chore: support statsd 2021-06-28 11:43:31 +08:00
Turtle 205e588b22 fix(plugins): fix load plugin generate hocon configs fail 2021-06-28 11:43:31 +08:00
Shawn e2d96e46a0 change resource,connectors,data_bridges as normal apps (#5034) 2021-06-28 11:43:31 +08:00
Turtle f004e36e28 feat(plugins): Support load plugins of hocon configuration format 2021-06-28 11:43:31 +08:00
Rory Z 87cc94ad28 chore(hooks): update type 2021-06-28 11:43:31 +08:00
Rory Z 0dd068135d chore(hooks): delete is_function() 2021-06-28 11:43:31 +08:00
Rory Z b21959b0c3 test: fix tests error 2021-06-28 11:43:31 +08:00
Rory Z 227c8e626b chore(appup): update appup file 2021-06-28 11:43:31 +08:00
Rory Z 46fe77687c chore(dialyzer): fix dialyzer error 2021-06-28 11:43:31 +08:00
zhanghongtong 64a63ab892 chore(hooks): emqx_hooks no longer accept anonymous functions 2021-06-28 11:43:31 +08:00
zhanghongtong f5c4863420 fix(connector): add nullable for sentinel_name in redis schema 2021-06-28 11:43:31 +08:00
Zaiming Shi 62df9f03ad fix(emqx_schema): add 'sensitive' flag for passowrd configs 2021-06-28 11:43:31 +08:00
Zaiming Shi 1fca3cd1b5 chore(rebar.config): use hocon 0.6.0
hocon 0.6.0 added supports for sensitive config flagging
sub-struct type checking, and remote struct referencing
2021-06-28 11:43:31 +08:00
DDDHuang 22b0fa0b92 chore: more node info 2021-06-28 11:43:31 +08:00
turtleDeng 271869b817 Revert "chore: mv emqx_connector to emqx_data_bridge"
This reverts commit d640e2ccfa.
2021-06-28 11:43:31 +08:00
zhanghongtong 786fd6fe3e feat(connector): mysql and pgsql query support params 2021-06-28 11:43:31 +08:00
Turtle 07ade268f9 chore: mv emqx_connector to emqx_data_bridge 2021-06-28 11:43:31 +08:00
Shawn ff54fbd1d1 fix(shared_sub): discard all unexpected msgs 2021-06-28 11:43:14 +08:00
Shawn 95e7a4dd7b chore(appup): update the appup for 4.3.5 2021-06-28 11:43:13 +08:00
Shawn 8f15a41f54 fix(shared_sub): failed to clean the emqx_shared_subscription tab
A trick that fixes the issue that we demonitored the shared subscriber
too early if it not unsubscribed all of the topics.
2021-06-28 11:42:56 +08:00
Turtle 22f1e8d7ed chore(review): review 4.3.4 2021-06-28 11:42:39 +08:00
Turtle bde9d052a5 feat(lwm2m): fix check dialyzer fail 2021-06-28 11:42:39 +08:00
Turtle 8c0c6974d9 fix: Ignore repeatedly receiving connection packet in the wait_will_msg/wait_will_topic/connected state 2021-06-28 11:42:39 +08:00
JianBo He 8da6d5cf16 fix(emqx_cm): catch noproc exception from rpc_call (#5048) 2021-06-28 11:42:39 +08:00
JianBo He ab75901061 fix(coap): fix coap uri format (#5059) 2021-06-28 11:42:25 +08:00
Zaiming Shi c7fe49c200 test(ci): add plugin list status check after relup new vsn install 2021-06-28 11:42:12 +08:00
JianBo He f3617aa082 chore: upgrade lwm2m_coap to 1.1.4 2021-06-28 11:41:53 +08:00
Turtle c7ebc12ce1 feat(lwm2m): add emqx_lwm2m http API 2021-06-28 11:41:53 +08:00
Shawn 8e08e83090 fix(appup): relup for emqx_rule_registry failed 2021-06-28 11:41:53 +08:00
Shawn c1b2163362 feat(rules): remove stats update from rule_engine_registry (#5029) 2021-06-28 11:41:53 +08:00
Shawn a610c3d1f3 fix(rule): delete resource failed when searching dependent rules (#4996) 2021-06-28 11:40:51 +08:00
Turtle 8a3ac7c878 chore(plugins): rm emqx-sasl plugin 2021-06-28 11:40:49 +08:00
tigercl bcedd7fe9e fix(query string): support query string in path (#4981) 2021-06-28 11:40:44 +08:00
JianBo He 56ac459b7f fix(modules): fix start/stop exhook module failure 2021-06-28 11:40:44 +08:00
JianBo He 2bc586b930 fix(ws): avoid funcation_clause for un-inited websocket 2021-06-28 11:40:43 +08:00
k32 c1d2bae833 fix(auth_ldap): Handle missing attributes
Fixes: #4953
2021-06-28 11:40:42 +08:00
Zaiming Shi 0451f89c22 chore(conf): change default number of gen_rpc connections to 1 2021-06-28 11:40:24 +08:00
JianBo He 8352fa6f31 fix(mqttsn): fix proto_name to MQTT-SN instead of MQTT (#4961) 2021-06-28 11:40:22 +08:00
JianBo He 7af4b80ef4 fix(lwm2m): base64 decode for opaque value 2021-06-28 11:39:29 +08:00
Turtle 1063f2cae5 chore(plugins): rm emqx-lua-hook plugin 2021-06-28 09:44:17 +08:00
k32 6063fc72f7 chore(authentication): Migrate to RLOG 2021-06-25 16:58:50 +02:00
Rory Z c79e478c42 chore: delete internal acl code 2021-06-25 18:45:34 +08:00
Rory Z 55613593f0 chore: delete import and export feature 2021-06-25 18:45:34 +08:00
Rory Z ecc450e942 chore: delete import and export feature 2021-06-25 18:45:34 +08:00
zhanghongtong 09e995a1b2 build: delete needless auth plugins 2021-06-25 18:45:34 +08:00
zhanghongtong c24f3688c4 build: delete needless auth plugins 2021-06-25 18:45:34 +08:00
Turtle 2d1008ceaf chore: move emqx_recon to emqx_modules plugin 2021-06-25 18:45:04 +08:00
turtleDeng c9c6b69cc9
chore: reset plugin conf generate (#5094)
* chore: reset plugin conf generate

* fix(plugin): check dialyzer fail

* chore: rm emqx_management_schema.erl file

* fix(plugin): check dialyzer fail

* fix(plugin): fix check ct fail

* fix(plugin): check dialyzer fail
2021-06-25 17:06:30 +08:00
Turtle 2582fdcfe8 feat(prometheus): Update the configuration file to hocon 2021-06-25 16:31:18 +08:00
Shawn d5eb37c537
Add some APIs for emqx_config (#5095) 2021-06-25 15:40:28 +08:00
Shawn 9977d836bc
Reference to foreign schema definitions in emqx_schema (#5090) 2021-06-25 12:46:57 +08:00
Rory Z 4157524910
feat(redis connector): redis connector support cluster (#5074) 2021-06-25 11:47:57 +08:00