Commit Graph

1765 Commits

Author SHA1 Message Date
k32 9c74fa42a5 chore(rlog): Use the new method of creating shards 2021-08-21 17:47:53 +02:00
k32 53a0c8b8a8 chore(ekka): Bump version to 0.10.7 2021-08-21 17:47:34 +02:00
k32 ca0fb214a7 feat(emqx-sn): Add tables to the SN shard 2021-08-21 17:47:34 +02:00
k32 af902df040 fix(emqx_machine): Fix application startup order
Ekka application should be started first
2021-08-21 17:47:34 +02:00
Shawn 91f787533d fix(log): text formatter crash
```
(emqx@127.0.0.1)1> logger:error("abc").
ok
2021-08-20T18:10:01.180622+08:00 error: FORMATTER CRASH: {string,"abc"}
```
2021-08-21 15:36:36 +08:00
Shawn f3efc89192
refactor(config): replace all ':' with '=' in the *.conf (#5531) 2021-08-19 19:57:42 +08:00
DDDHuang 65563e9f8c
Merge pull request #5511 from DDDHuang/delayed_api
feat: add delayed api
2021-08-19 17:59:29 +08:00
DDDHuang c07fadc336
Merge pull request #5526 from DDDHuang/fix_node_stats_api
fix: node stats api
2021-08-19 17:59:05 +08:00
DDDHuang 11ea506af6
Merge branch 'master' into delayed_api 2021-08-19 17:24:16 +08:00
DDDHuang cc1b8eca6c fix: params & config generate; api base64 encode payload 2021-08-19 17:23:11 +08:00
DDDHuang 2088fe17cf fix: node stats api 2021-08-19 16:45:38 +08:00
zhouzb f0ba6af660 chore(authn): fix dialyzer 2021-08-19 16:01:55 +08:00
zhouzb e6c01cb6e6 fix(undefined function): fix undefined function 2021-08-19 16:01:55 +08:00
zhouzb 87051c0e53 test(authn): fix test case 2021-08-19 16:01:55 +08:00
zhouzb 178d1006e1 chore(match): reduce the risk of crash 2021-08-19 16:01:55 +08:00
zhouzb e5892d16e5 feat(auth): support hot config 2021-08-19 16:01:38 +08:00
zhouzb e6f9767066 feat(authn): support superuser 2021-08-19 15:59:26 +08:00
zhouzb 429def6b95 fix(authn): fix http api spec 2021-08-19 15:59:26 +08:00
zhouzb 3f2ca5282c chore(authn): remove implied schema 2021-08-19 15:59:26 +08:00
zhouzb b7bc8b8cac feat(authn): improve apis of moving authenticators 2021-08-19 15:59:26 +08:00
zhouzb 60f0e8e5a5 refactor(authn): replace mnesia with ets table 2021-08-19 15:59:26 +08:00
zhouzb 61da3a4fd7 feat(authn hot config): initial support for hot config 2021-08-19 15:59:26 +08:00
Shawn ef59309ed0 fix(config): check config failed when updating 2021-08-19 15:53:45 +08:00
Shawn e17612b237 fix(config): return only updated confs for emqx:update_config/2,3 2021-08-19 15:53:45 +08:00
lafirest d321cdbd47
Merge pull request #5515 from lafirest/refactor/emqx_retainer_api
refactor(emqx_retainer): emqx_retainer_api use openapi model
2021-08-19 10:56:58 +08:00
DDDHuang 5520326ce3 feat: add delayed api 2021-08-19 10:48:12 +08:00
lafirest adc6226eae refactor(emqx_retainer): emqx_retainer_api use openapi model 2021-08-19 10:12:08 +08:00
DDDHuang 9c76247cde fix: alarms api timestamp millisecond 2021-08-19 09:56:32 +08:00
Shawn 213b7c2501 fix(config_api): improve the schema for config update APIs 2021-08-19 09:38:33 +08:00
turtleDeng f01b77e4fe
refactor(event-message): refactor event_message
* refactor(event-message): refactor event_message configuration

* feat(event-message): add event_message REST API
2021-08-18 16:26:15 +08:00
Shawn e8e95d39ef
refactor(config): move emqx_config:get/get_raw to emqx:get_config/get_raw_config (#5517) 2021-08-18 14:52:57 +08:00
Shawn 5f6bcd1ebb fix(config_api): remove config APIs that already been provided by apps 2021-08-18 11:30:20 +08:00
Shawn a1da519d55 fix(rewrite): use emqx:update_config/2 instead of emqx_config:update/2 2021-08-18 09:42:06 +08:00
Shawn bf6251e20f refactor(config): update the return values of config handlers 2021-08-18 09:42:06 +08:00
Shawn e5c3199d6e fix(config): emqx:update_config/2,3 doesn't work on binary conf paths 2021-08-18 09:42:06 +08:00
Shawn 24207b80cb refactor(config): improve the return value of emqx:update_config/2,3 2021-08-18 09:42:06 +08:00
Shawn bd8263e324 refactor(config): move APIs for config update,remove,reset to emqx
Move the emqx_config:update,remove,reset APIs to emqx, to remove
the circular dependency between the modules emqx_config and
emqx_config_handler.

After this change the dependency among these modules will be:

```
emqx ---> emqx_config
   |          ^
   |          |
   + ---> emqx_conifg_handler
```
2021-08-18 09:42:06 +08:00
Shawn a2067c3bf3 refactor(spec): move some type specs from emqx_config_handler to emqx_config 2021-08-18 09:42:06 +08:00
JianBo He 9190f1f6f9 chore(gw): reformat config options 2021-08-18 09:26:48 +08:00
JianBo He b8cb31c0ff fix(gw): fix the bad return value for initiating chain 2021-08-18 09:26:48 +08:00
JianBo He 430f20adc1 fix(gw): fix conn_state 2021-08-18 09:26:48 +08:00
JianBo He c5a4e05418 refactor(gw): rename gateway type to name 2021-08-18 09:26:48 +08:00
JianBo He 9072a60652 chore(gw): refine the cli command 2021-08-18 09:26:48 +08:00
JianBo He 630e0fb8cb test(gw): fix bad test cases 2021-08-18 09:26:48 +08:00
JianBo He cac0ea4b19 chore(gw): fix dialyzer warnigns 2021-08-18 09:26:48 +08:00
JianBo He be4d2495f0 refactor(gw): single instance support only 2021-08-18 09:26:48 +08:00
DDDHuang 50ee840220
feat: add rewrite api (#5502) 2021-08-17 17:49:37 +08:00
Turtle 7fcd925eff feat(delayed): add delayed REST HTTP API 2021-08-17 09:21:19 +08:00
turtleDeng 4dc5772103
chore(rule-metrics): remove hot upgrade code change 2021-08-17 09:15:27 +08:00
Shawn 988d620421 fix(test): mock emqx_resource:remove/1 in emqx_authz_http_SUITE 2021-08-16 17:41:53 +08:00
Shawn 7f03cd0e8b fix(config): update the calls to emqx_config:update/2,3 2021-08-16 17:41:53 +08:00
Shawn b381b5d2b9 feat(emqx_config): return config maps when emqx_config:update/2,3 2021-08-16 17:41:53 +08:00
zhanghongtong 26c0754732 chore(release): update emqx release version
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-13 17:55:56 +08:00
DDDHuang 4b3b4dd54c fix: dashboard 404 conflict 2021-08-13 16:57:10 +08:00
DDDHuang 3f1d3b9cf4
Merge pull request #5482 from DDDHuang/monitor_millseconds
fix: monitor timestamp millsecond
2021-08-13 15:27:48 +08:00
DDDHuang 1868414637
Merge pull request #5473 from DDDHuang/jwt
feat: api support jwt
2021-08-13 15:26:45 +08:00
DDDHuang 23a8e28f77 fix: monitor timestamp millsecond 2021-08-13 14:26:43 +08:00
DDDHuang 22dd6e1a86 fix: rename tab & params 2021-08-13 14:19:31 +08:00
tigercl e73df538a7
Merge pull request #5476 from k32/fix-auth-init-order
fix(rlog): Ensure the correct order of table initalization
2021-08-13 13:49:06 +08:00
Turtle 96ee04bbd0 chore(modules): remove start emqx-ee load_modules 2021-08-13 13:44:00 +08:00
DDDHuang 93dbdaa84a feat: dashboard api support jwt 2021-08-13 11:23:13 +08:00
lafirest e80d95bd76
Merge pull request #5470 from lafirest/fix/emqx_coap
fix(emqx_gateway): fix some error in README and code
2021-08-13 10:46:37 +08:00
k32 dfa6761e49 fix(rlog): Ensure the correct order of table initalization 2021-08-12 19:58:52 +02:00
zhanghongtong 618125b1da fix(connector): fix schema error for mongo 2021-08-12 21:52:06 +08:00
DDDHuang 3b52328244 fix: monitor response data format 2021-08-12 19:41:53 +08:00
lafirest 20f9cf19cd fix(emqx_gateway): fix some error in README and code 2021-08-12 19:01:28 +08:00
Shawn 4bf1e83449 fix(test): variable 'Id' shadowed in 'fun' 2021-08-12 17:20:05 +08:00
Shawn cc1222ffea fix(emqx_config): correct some function sepcs and return values 2021-08-12 17:20:05 +08:00
Shawn b652a64dbb fix(config): reset config failed due to rootname not found 2021-08-12 17:20:05 +08:00
Shawn 8dbb14b668 feat(config): improve the API for resetting configs 2021-08-12 17:20:05 +08:00
Shawn 1c86bd6199 feat(emqx_config): add emqx_config:fill_defaults/1 2021-08-12 17:20:05 +08:00
JianBo He a4d29ec8de chore(exhook): fix diaylzer warnings 2021-08-12 16:34:10 +08:00
JianBo He 4921c00a19 chore(exhook): change the name to binary type 2021-08-12 16:34:10 +08:00
JianBo He b3fac24c5e chore(schmea): include the emqx_exhook_schema 2021-08-12 16:34:10 +08:00
JianBo He 3cef377b33 feat(exhook): make request_failed_action working 2021-08-12 16:34:10 +08:00
JianBo He 6574fc4f14 fix(exhook): set trap_exit flag 2021-08-12 16:34:10 +08:00
JianBo He f5acf5fd0b refactor(exhook): move all manager code into mngr module 2021-08-12 16:34:10 +08:00
JianBo He 7e5be6ed6c refactor(exhook): add mechanism to reload the failure server 2021-08-12 16:34:10 +08:00
DDDHuang 870b68c104
Merge pull request #5463 from DDDHuang/fix_moniyor
fix: depart monitor api path & add parameter
2021-08-12 14:35:37 +08:00
lafirest 18c2765a1e
Merge pull request #5441 from lafirest/refactor/emqx_coap
refactor(emqx_gateway): refactor the emqx_coap
2021-08-12 14:05:12 +08:00
x1001100011 9640132edc
Merge pull request #5452 from x1001100011/make-EMQX_DEP_APPS-static
feat: make EMQX_DEPS_APPS static
2021-08-11 21:50:57 -07:00
DDDHuang e3415ae361 fix: depart api path & add parameter 2021-08-12 12:24:11 +08:00
DDDHuang 8efe854f63 fix: remove test code 2021-08-12 10:24:46 +08:00
DDDHuang 324a036aa8 fix: users api path & params name 2021-08-12 10:23:28 +08:00
k32 5abec37098 chore(build): Globally set snk_kind macro to msg 2021-08-11 14:03:41 +02:00
Zaiming (Stone) Shi 258191a5b4
Merge pull request #5453 from zmstone/fix-invalide-config-value-in-schema
fix(config): infinity is not valid for log.max_depth
2021-08-11 13:48:47 +02:00
lafirest aafdf29cd8 refactor(emqx_gateway): refactor the emqx_coap 2021-08-11 19:03:02 +08:00
zhanghongtong a94bfaf28b feat(authz api): support move rule position
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-11 18:23:22 +08:00
DDDHuang d62e7239c2
Merge pull request #5451 from DDDHuang/fix_monitor_params
fix: merge counters each node
2021-08-11 17:46:25 +08:00
Zaiming Shi ac1763cd80 fix(config): infinity is not valid for log.max_depth 2021-08-11 10:14:59 +02:00
x1001100011 698c6c6ebc feat: make EMQX_DEPS_APPS static 2021-08-11 01:09:27 -07:00
DDDHuang 776aabda7d fix: merge counters each node 2021-08-11 15:00:30 +08:00
zhanghongtong 632cc895d5 chore(authz): formatting error returned
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-11 11:06:58 +08:00
zhanghongtong 69a0fafd6b feat(authz api): get api support paging
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-11 11:06:58 +08:00
zhanghongtong c821528af9 feat(authz api): full CURD api 2021-08-11 11:06:58 +08:00
zhanghongtong 4bb1e9c964 feat(authz): more better update function
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-11 11:06:58 +08:00
zhanghongtong c26ec5c0dd feat(authz): support api
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-11 11:06:58 +08:00
lafirest 69a202e4c0
Merge pull request #5446 from lafirest/chore/emqx_retainer
chore(emqx_retainer): simplified the retainer config
2021-08-11 09:46:21 +08:00
Zaiming (Stone) Shi 1239eb23b0
Merge pull request #5407 from zmstone/build-ci-on-otp-24
Build ci on otp 24
2021-08-10 12:20:48 +02:00
lafirest 6c73679b02 chore(emqx_retainer): simplified the retainer config 2021-08-10 17:47:30 +08:00
Shawn 566d6f8d74 refactor(config): create a dedicate API for config reset 2021-08-10 15:17:45 +08:00
Shawn a4b773b66f refactor(config): create only one API for resetting configs 2021-08-10 15:17:45 +08:00
Shawn 74a849bfbb refactor(config): create APIs for each root-name 2021-08-10 15:17:45 +08:00
Shawn bafcb7f34a fix(emqx_config): always return atom-key map for emqx_config:get/2 2021-08-10 15:17:45 +08:00
Shawn eee98a5803 fix(API): return 400 if delete failed 2021-08-10 15:17:45 +08:00
Shawn 139712fc94 fix(API): return 200 for PUT method 2021-08-10 15:17:45 +08:00
Shawn 2738815af9 feat(API): add a general API to update configs 2021-08-10 15:17:45 +08:00
Shawn 990c383e01 feat(emqx_config): support fetching the entire config map 2021-08-10 15:17:45 +08:00
Shawn c05e92a7cc fix(emqx_config): delete the emqx_config_handler:remove_config/2 2021-08-10 15:17:45 +08:00
Shawn b8253ee94f feat(config): support config path mixed with atom() and binary() 2021-08-10 15:17:45 +08:00
Shawn c745120453 fix(api): update config APIs for emqx core 2021-08-10 15:17:45 +08:00
Shawn c9911a3b5f feat(api): add API /v5/configs for updating configs 2021-08-10 15:17:45 +08:00
DDDHuang 1064278db1 chore: add node param in subscription 2021-08-10 14:23:17 +08:00
DDDHuang 054406322a
Merge pull request #5440 from DDDHuang/api_desc
chore: add some api params description
2021-08-10 13:41:23 +08:00
DDDHuang a87521358e chore: add some api params description 2021-08-10 11:42:58 +08:00
Zaiming Shi 0fb81c7e99 fix(coap): log error level only when it error 2021-08-09 21:46:07 +02:00
DDDHuang dc2f6303d4
Merge pull request #5393 from DDDHuang/dashboard_metrics
feat: add dashboard metrics; api username params
2021-08-09 18:36:42 +08:00
x1001100011 0fe3083cd7 build: add erlang 24.0.1 for ci 2021-08-09 11:12:25 +02:00
Zaiming (Stone) Shi 672f94e118
Merge pull request #5430 from zmstone/refactor-simplify-ci-scripts
refactor: simplify ci scripts
2021-08-09 11:09:44 +02:00
Zaiming Shi f1262e04bf feat: log error if timed out waiting after init:stop 2021-08-09 10:28:30 +02:00
Zaiming Shi 668ecbe97b fix: improve node stop wait loop 2021-08-09 10:28:04 +02:00
DDDHuang b50afba5b9 feat: add dash board metrics 2021-08-09 16:20:02 +08:00
tigercl 40a9932167
Merge pull request #5427 from tigercl/feat/redis-authn
feat(authn redis): support authn with redis
2021-08-09 11:11:37 +08:00
JianBo He ade69c1e18 fix(exhook): more safe type convertion 2021-08-07 08:48:34 +08:00
JianBo He 6dd33907f1 fix(exhook): fix the server name type 2021-08-07 08:48:34 +08:00
JianBo He 183a65d263 fix(exhook): fix the server config format 2021-08-07 08:48:34 +08:00
JianBo He 31d4f72d16 fix(exhook): correct the broker-info 2021-08-07 08:48:34 +08:00
Zaiming Shi e698600903 refactor(emqx_machine): supervise terminator 2021-08-06 12:51:25 +02:00
Zaiming Shi 032a49114c fix(emqx_machine): start terminator in emqx_machine_app 2021-08-06 12:16:15 +02:00
Zaiming Shi 5063d3a2b3 fix(emqx_machine): ensure digraph is deleted after use
also add tests
2021-08-06 12:16:10 +02:00
Zaiming Shi 75f9741d75 fix(terminator): ensure erl_signal_server init:stop
ensure init:stop can be triggered by kill signal even before the
terminator is ready
2021-08-06 11:10:16 +02:00
Zaiming Shi 304b322a0c fix(emqx_machine): handle early shutdown 2021-08-06 10:20:42 +02:00
zhouzb f43d3e9f66 feat(authn redis): add api spec for redis authentication 2021-08-06 15:22:49 +08:00
Zaiming Shi 81c9dcb6ae refactor(emqx_machine_terminator): future-proof try-catch
Ensure exceptions in emqx_machine:stop_apps/0 is caught
and call init:stop/0 in the after clause
2021-08-06 08:51:48 +02:00
Zaiming Shi 044e084698 feat(emqx_machine): ignore sighup, ensure sigterm 2021-08-06 08:46:07 +02:00
Zaiming Shi 85f8ba10ce fix(emqx_machine_signal_handler): ignore unknown info 2021-08-06 08:21:06 +02:00
zhouzb 3761db0525 feat(authn redis): support authn with redis 2021-08-06 14:05:31 +08:00
Zaiming Shi bee8f01ee8 feat(emqx_machine): add a kill signal handler
Now the signal from kill PID can also be handled gracefully
2021-08-06 02:12:21 +02:00
Zaiming Shi 4025d31295 refactor(emqx_machine): move code from _app module to to emqx_machine 2021-08-05 14:30:59 +02:00
Zaiming Shi bc23ff5e47 feat: add graceful shutdown
prior to this cahnge emqx node shutdown is done by init:stop
which might have undesired stop order of the applications

in this change, emqx_machine_terminator is added to stop apps
in defined order and then terminate the node in infinite loop
2021-08-05 14:11:58 +02:00
Zaiming Shi d453005d8b fix(emqx): pin quicer 0.0.7 2021-08-05 13:43:22 +02:00
Zaiming Shi d3038c0b71 fix(exhook): BrokerInfo uptime is now a duration integer 2021-08-05 12:58:03 +02:00
Zaiming Shi 6f8ca4ce07 feat: allow disable listener from environment variable 2021-08-05 12:58:03 +02:00
Zaiming Shi ce24696329 refactor(emqx_app): start quic listener condition
when the app is present, and when listners are configured
2021-08-05 12:58:03 +02:00
Zaiming Shi bdb871cb9a refactor(emqx_listeners): simplify listing logic 2021-08-05 12:07:10 +02:00
DDDHuang e7cb9491c6
Merge pull request #5306 from DDDHuang/sys_info
chore: sys uptime by millisecond
2021-08-05 13:51:06 +08:00
zhanghongtong dba37513a1 fix(emqx_ctl): fix an error when "~" in the print content 2021-08-05 10:45:40 +08:00
JianBo He 835eb84b5d chore(gw): remove needless files 2021-08-05 09:47:17 +08:00
JianBo He 94e33c3917 chore(gw): adapt to authn config format 2021-08-05 09:47:17 +08:00
JianBo He 1b2f732f13 chore(gw): fix zone name 2021-08-05 09:47:17 +08:00