Commit Graph

5821 Commits

Author SHA1 Message Date
Ilya Averyanov f4e4331556 chore(emqx_mangement): improve emqx_mgmt_api_nodes coverage 2022-04-04 23:39:53 +03:00
Zaiming (Stone) Shi 6fd902ebc8 chore: update dependency app versions
lc: 0.2.1
emqtt: 1.5.0
2022-04-04 21:07:02 +02:00
Thales Macedo Garitezi af4ad5721f
feat(telemetry): add gateway info to reported data 2022-04-04 15:21:02 -03:00
Thales Macedo Garitezi 7d807ce6bb
feat(gateway): export basic gateway info for telemetry 2022-04-04 15:20:48 -03:00
Thales Macedo Garitezi b1902cff27
test: silence export warning 2022-04-04 15:20:48 -03:00
Ilya Averyanov 8f0497c441 chore(emqx_modules): add tests and refactor
* improve `emqx_rewrite_api` coverage
* improve `emqx_telemetry_api` coverage
* refactor `emqx_telemetry` to use config clustering for settings
2022-04-04 18:16:07 +03:00
Zaiming (Stone) Shi 5080c17ad6
Merge pull request #7512 from zmstone/0404-5.0-add-test-coverage-for-observer-cli
test: add test coverage for emqx_observer_cli
2022-04-04 13:47:05 +01:00
Thales Macedo Garitezi 1df850710e
Merge pull request #7457 from thalesmg/telemetry-revamp-part3
feat(telemetry): add authn and authz info to telemetry data
2022-04-04 09:12:37 -03:00
Zaiming (Stone) Shi c24d61efcd test: add test coverage for emqx_observer_cli 2022-04-04 11:57:33 +02:00
Zaiming (Stone) Shi 9ed44e3bd7
Merge pull request #7494 from zmstone/0401-5.0-perf-demonitor
perf: improve demonitor performance
2022-04-02 08:23:58 +02:00
firest 0db6b8d47e test(gateway): integration stomp && exproto test with http authn 2022-04-02 14:06:36 +08:00
firest 25ebe2535e test(gateway): integration MQTT-SN test with http authn 2022-04-02 14:00:37 +08:00
firest ec243d8946 test(gateway): integration CoAP && LwM2M test with http authn 2022-04-02 14:00:33 +08:00
Thales Macedo Garitezi 59d5478d4e
Merge pull request #7463 from thalesmg/mria-shard-transport
feat: allow customizing per-shard transaction log transport
2022-04-01 13:16:28 -03:00
Zaiming (Stone) Shi 850a95a43e style: avoid using function-like macros in catch clauses 2022-04-01 16:58:51 +02:00
Zaiming (Stone) Shi 67608f623f perf: improve demonitor performance
demonitor(Ref, [flush]) often will not be be able to get optimised
by the compiler hence fallback to a full mailbox scan to drain
the DOWN message.

This commit tries to avoid the 'flush' when it's for sure
that there is no 'DOWN' message sent.
2022-04-01 16:58:51 +02:00
Thales Macedo Garitezi f425665449
fix(test): fix flaky test 2022-04-01 09:27:53 -03:00
Thales Macedo Garitezi c0d2243e72
refactor(telemetry): move authn/authz info fns to their own apps 2022-04-01 09:27:52 -03:00
Thales Macedo Garitezi b07b705621
feat(telemetry): add authn and authz info to telemetry data 2022-04-01 09:24:51 -03:00
Thales Macedo Garitezi 5c069319a7
fix(authz): make `acl_conf_file` mockable 2022-04-01 09:23:42 -03:00
Thales Macedo Garitezi 1fa68a277e
docs: fix some typos 2022-04-01 09:23:41 -03:00
Thales Macedo Garitezi 8513580f5a
fix: use api for setting advanced mqtt features in use 2022-04-01 09:23:41 -03:00
JianBo He acb3544d4b style(authz): reformat authz subdir source files 2022-04-01 09:55:47 +08:00
JianBo He 3022ee081d style(authn): reformat authn subdir source files 2022-04-01 09:55:02 +08:00
JianBo He 8500200e81 Merge remote-tracking branch 'ce/master' into fmt-gw 2022-04-01 09:52:12 +08:00
Zaiming (Stone) Shi 4d74296fb9
Merge pull request #7484 from JimMoen/erlfmt-authn-authz
Erlfmt authn and authz
2022-04-01 00:24:53 +02:00
Ilya Averyanov 8f5812e61f
Merge pull request #7479 from savonarola/emqx_topic_metrics-cov
chore(emqx_modules): improve emqx_topic_metrics coverage
2022-03-31 23:15:35 +03:00
Ilya Averyanov 871e69a88f
Merge pull request #7483 from savonarola/emqx_delayed-cov
Improve emqx_delayed coverage
2022-03-31 23:07:28 +03:00
JimMoen 82559b9b08 style: erlfmt apps/emqx_authz 2022-04-01 02:19:46 +08:00
JimMoen aae2d01582 style: erlfmt apps/emqx_authn 2022-04-01 02:19:46 +08:00
Ilya Averyanov ce437ac5b2 chore(emqx_modules): improve emqx_delayed coverage 2022-03-31 20:29:46 +03:00
Ilya Averyanov 12f6b8fab0 chore(emqx_modules): improve emqx_delayed_api coverage 2022-03-31 18:44:29 +03:00
lafirest 9ffc58071d
Merge pull request #7467 from lafirest/test/exhook_metrics
test(exhook): add test case for exhook metrics
2022-03-31 20:05:32 +08:00
Ilya Averyanov f34fce7c70 chore(emqx_modules): improve emqx_topic_metrics coverage 2022-03-31 14:29:42 +03:00
JianBo He 989f0a7c2c
Merge pull request #7449 from JimMoen/rm-authz-dry-run
fix(authz): rm authz source update dry_run
2022-03-31 18:15:08 +08:00
JianBo He 2dce43ac8e chore: ignore 'if' expression checking 2022-03-31 17:41:43 +08:00
JianBo He f2168f5b0d style(modules): reformat emqx_modules appplication 2022-03-31 17:41:43 +08:00
JianBo He 244b123742 style(emqx): reformat emqx application 2022-03-31 17:41:43 +08:00
JianBo He 3f6d78dda0 style(gateway): format gateway application 2022-03-31 17:41:32 +08:00
Ilya Averyanov a6031d6695
Merge pull request #7464 from savonarola/emqx_topic_metrics_api-cov
chore(emqx_modules): add emqx_topic_metrics_api tests
2022-03-31 11:27:58 +03:00
firest 57cdf86977 fix(exhook): fix elvis error 2022-03-31 16:04:40 +08:00
firest 877db375ed test(exhook): add test case for exhook metrics 2022-03-31 15:29:52 +08:00
JimMoen 4746204f6f fix(authz): rm authz source update dry_run 2022-03-31 10:34:33 +08:00
JianBo He 8431387408 chore(exproto): set proto_name default to exproto 2022-03-31 10:02:12 +08:00
JianBo He 6a4d823b24 fix(sys): compatible with binary type protocol 2022-03-31 09:54:56 +08:00
Ilya Averyanov 0728b1e3f4 chore(emqx_modules): add emqx_topic_metrics_api tests 2022-03-30 21:18:27 +03:00
Thales Macedo Garitezi 5748b9b492
feat: allow customizing per-shard transaction log transport 2022-03-30 11:11:30 -03:00
Thales Macedo Garitezi 2a48f143bd
style: please elvis checks 2022-03-30 11:11:30 -03:00
ieQu1 b6d93e91e6 docs(schema): Document fields for HTTP auth 2022-03-30 13:05:56 +02:00
ieQu1 d23a88d0a9 docs(schema): Minor improvements to spelling and formatting. 2022-03-30 13:05:56 +02:00
ieQu1 edb91e2e4a docs(schema): Add descriptions for authZ and connector 2022-03-30 13:01:01 +02:00
ieQu1 80cd1350a5 docs(schema): Add documentation for connector records 2022-03-30 11:53:53 +02:00
ieQu1 d8e16b37da docs(schema): Add documentation for the fields and records 2022-03-30 11:53:53 +02:00
ieQu1 ce450b7da7 docs(schema): Document the records 2022-03-30 11:53:53 +02:00
ieQu1 c0e5139e9f docs(schema): Add description for clientinfo_override 2022-03-30 11:53:51 +02:00
ieQu1 abb4d42406 docs(schema): Document conn_congestion fields 2022-03-30 11:53:38 +02:00
ieQu1 866a0b2687 docs(schema): Document exhook records 2022-03-30 11:53:38 +02:00
Dmitrii dd61f86c2f
Merge pull request #7436 from ieQu1/doc-schema-5
docs(schema): Add descriptions for the records
2022-03-30 11:35:19 +02:00
Dmitrii fcc99b484f
docs(schema): Apply suggestions from code review
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-03-30 10:12:04 +02:00
lafirest 694d3b1782
Merge pull request #7439 from lafirest/fix/empty_topic_5
fix(frame): forbidden empty topic in strict mode
2022-03-30 09:54:33 +08:00
lafirest 55516364ae
Merge pull request #7444 from lafirest/test/delayed_api
test(delayed): add test case for emqx_delayed_api
2022-03-30 09:53:06 +08:00
Yang Miao 97ff2a78bb
Merge pull request #7448 from EMQ-YangM/fix_use_maps_get
fix: use masp:get/3 to avoid crash after match failure
2022-03-30 09:37:33 +08:00
Thales Macedo Garitezi 187079859b
chore: bump hocon -> 0.26.6 2022-03-29 15:54:45 -03:00
Thales Macedo Garitezi f9597bb247
fix: set default db backend in etc/emqx_conf.conf 2022-03-29 15:54:00 -03:00
Ilya Averyanov eac09eed7c
Merge pull request #7446 from savonarola/emqx_telemety-total-memory-macos-fix
fix(emqx_telemety): use total_memory memsup key
2022-03-29 15:44:05 +03:00
ieQu1 465e0e418c docs(schema): Document rate_limit fields 2022-03-29 14:09:32 +02:00
ieQu1 410b69d616 docs(schema): Document records for gateway 2022-03-29 14:09:32 +02:00
ieQu1 fff6bffa0c docs(schema): Add descriptions of the records 2022-03-29 14:09:32 +02:00
ieQu1 aecfa77985 chore(hocon): Bump version 2022-03-29 14:09:32 +02:00
EMQ-YangM 3b43cca5bf fix: use masp:get/3 to avoid crash after match failure 2022-03-29 18:51:10 +08:00
firest 410bc8005e test(delayed): add test case for emqx_delayed_api 2022-03-29 17:23:00 +08:00
firest ed7ce7078a test(frame): add test case for empty topic check 2022-03-29 17:14:36 +08:00
Ilya Averyanov f85fc98b39 fix(emqx_telemety): use total_memory memsup key 2022-03-29 11:56:50 +03:00
Yang Miao d72da3ecf6
Merge pull request #7440 from EMQ-YangM/add_connack_and_cac
feat: add rule events: 'client.connack', 'client.check_authz_complete'
2022-03-29 16:50:18 +08:00
EMQ-YangM 4c8deeb544 fix(emqx_access_control): reformat code 2022-03-29 14:11:45 +08:00
EMQ-YangM ccc134d061 fix(emqx_rule_api_schema): add rule events schema 2022-03-29 14:03:15 +08:00
firest 978350b643 fix(frame): make elvis && erlfmt happy 2022-03-29 11:58:59 +08:00
EMQ-YangM 4791c64b73 feat: add rule event 'client.check_authz_complete' 2022-03-29 11:24:36 +08:00
firest 5febf480a2 fix(frame): forbidden empty topic in strict mode 2022-03-29 10:34:50 +08:00
JimMoen e9ce91b60c
Merge pull request #7429 from JimMoen/fix-authn-redis-api
fix authn redis api and eredis_cluster version
2022-03-29 09:57:02 +08:00
Thales Macedo Garitezi 7b6a71c117
Merge pull request #7369 from thalesmg/telemetry-revamp-part2
Telemetry revamp part2
2022-03-28 09:03:45 -03:00
JimMoen e0fbf08d7e chore: update eredis_cluster version to 0.7.1 2022-03-28 14:37:38 +08:00
EMQ-YangM 65164fb046 feat: add rule event 'client.connack' 2022-03-28 11:32:07 +08:00
JimMoen 9554255449 fix(authn): fix delete authn redis crashed 2022-03-28 10:56:11 +08:00
ieQu1 32584650de docs(schema): Fix definition 2022-03-25 16:12:32 +01:00
Zaiming (Stone) Shi 39d477e77c
Merge pull request #7413 from zmstone/docs-add-more-schema-desc
docs: add more schema desc
2022-03-25 16:10:00 +01:00
Thales Macedo Garitezi 105ec5104a
fix: set own app environment and expose convenient api
... for accessing advanced mqtt features in use.
2022-03-25 10:12:50 -03:00
zhouzb 3b387cfd9e chore: revert ee vsn bump 2022-03-25 19:49:13 +08:00
zhouzb 098ba91351 chore: bump release vsn 2022-03-25 19:43:22 +08:00
JimMoen 81243b43e8 fix(os_mon): fix wrongly high mem alarm 2022-03-25 19:21:03 +08:00
zhongwencool d7bd09b2e1
Merge pull request #7416 from zhongwencool/conf-readyonly
fix: cluster conf must be readonly; add dashboard listener update hook
2022-03-25 19:06:26 +08:00
Zhongwen Deng 86f455fd3a fix: cluster conf must be readonly; add dashboard listener update hook 2022-03-25 18:43:15 +08:00
Xinyu Liu 0f4f6b4fb4
Merge pull request #7419 from EMQ-YangM/fix_health_check_crash
fix(emqx_resource_instance): improve the pattern match of the call_health_check
2022-03-25 18:42:22 +08:00
EMQ-YangM 9a2d70f98e fix(emqx_resource): remove extra space 2022-03-25 18:26:18 +08:00
EMQ-YangM 6b662d87ba fix(emqx_resource): fix dialyzer warning 2022-03-25 18:15:23 +08:00
Zaiming (Stone) Shi 036266769c docs: add more schema desc 2022-03-25 10:52:58 +01:00
EMQ-YangM bb12378806 fix(emqx_resource_instance): improve the pattern match of the function call_health_check 2022-03-25 17:35:55 +08:00
Xinyu Liu 1fc2124ff9
Merge pull request #7414 from terry-xiaoyu/list_connectors_with_default_values
fix: list connectors with default values
2022-03-25 16:52:25 +08:00
zhongwencool aa831d6c3f
Merge pull request #7406 from zhongwencool/monitor-api-crash
fix: dashboard_monitor crash
2022-03-25 16:30:30 +08:00
Shawn 79222e694e fix: list connectors with default values 2022-03-25 15:15:27 +08:00
Zhongwen Deng 8d46332b30 chore: upgrade hocon to 0.26.4 to limit HOCON_MAP's key format 2022-03-25 15:00:51 +08:00
JianBo He e6cd3ad3ac
Merge pull request #7405 from HJianBo/remove-event-message
refactor: remove event_messages mod
2022-03-25 14:22:19 +08:00
Zhongwen Deng 55f805bac0 fix: dashboard_monitor crash 2022-03-25 14:18:56 +08:00
DDDHuang 16f943459e
Merge pull request #7391 from DDDHuang/as_doc
fix(doc): add auto sub docs & more notes
2022-03-25 13:54:32 +08:00
JianBo He 7f1082a0bb chore: make xref happy 2022-03-25 11:20:18 +08:00
zhongwencool f1b511023d
Merge pull request #7400 from DDDHuang/fix_examples_spec
fix: api examples spec error
2022-03-25 11:03:27 +08:00
JianBo He ec0c698914 refactor: remove event_messages mod 2022-03-25 10:20:11 +08:00
lafirest 68961c7479
Merge pull request #7397 from lafirest/test/prometheus_coverage
test(prometheus): improve test coverage to 88%
2022-03-25 02:40:13 +08:00
Thales Macedo Garitezi 2e05e45245
Merge pull request #7385 from thalesmg/bump-ekka-0-12-3
chore: bump ekka -> 0.12.3, mria -> 0.2.2
2022-03-24 11:47:28 -03:00
Dmitrii f4125fbe0d
Merge pull request #7386 from ieQu1/doc-schema-3
docs(schema): Add descriptions to the schema
2022-03-24 14:05:38 +01:00
Zaiming (Stone) Shi 14e12a79d8
Merge pull request #7388 from zmstone/chore-delete-epmd-related
chore: delete epmd related ports and settings
2022-03-24 13:16:54 +01:00
Thales Macedo Garitezi a310d2390e
Merge pull request #7381 from thalesmg/fix-telemetry-mac-symlink
fix(test): use a real copy of BUILD_INFO for testing
2022-03-24 09:04:28 -03:00
DDDHuang 88403559af
fix(conf): auto subscription, batter docs
Co-authored-by: Dmitrii <99872536+ieQu1@users.noreply.github.com>
2022-03-24 18:42:54 +08:00
Dmitrii fa8ab06368
docs: Apply remark
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-03-24 11:39:35 +01:00
Dmitrii 1c65176362
docs: Apply remark
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-03-24 11:39:11 +01:00
DDDHuang 08de17e631 fix: api examples spec error 2022-03-24 18:01:47 +08:00
firest 8c8162facb test(prometheus): improve test coverage to 88% 2022-03-24 16:17:40 +08:00
DDDHuang 9037b807ae fix: add api auth failed code def & fix bad spelling 2022-03-24 12:12:19 +08:00
DDDHuang ad12c3a4e3 fix(doc): add auto sub docs & more notes 2022-03-24 10:02:59 +08:00
JianBo He 5a6023676e
Merge pull request #7360 from JimMoen/fix-authz-cluster-update-config
fix authz cluster update config
2022-03-24 09:21:27 +08:00
Zaiming (Stone) Shi 0a5d1b0f52 chore: delete epmd related ports and settings 2022-03-23 22:16:10 +01:00
Zaiming (Stone) Shi 5458490bc3 chore: add namespace to bridge schema 2022-03-23 21:12:55 +01:00
ieQu1 077ef073e5 docs(schema): Add descriptions to the schema 2022-03-23 19:05:25 +01:00
Thales Macedo Garitezi 29ca83184a
chore: bump ekka -> 0.12.3, mria -> 0.2.2 2022-03-23 14:41:10 -03:00
Thales Macedo Garitezi d312bc0f28
feat: add advanced mqtt features to telemetry 2022-03-23 14:05:04 -03:00
Thales Macedo Garitezi 7e3b9bb356
fix(test): use a real copy of BUILD_INFO for testing
On macOS, apparently symlinks can cause problems when rebar3 tries to
copy files to the `_build` directory.  So we now use a copy of
`rel/BUILD_INFO`.  Unfortunately, this has the downside of this copy
possibly going stale over time.
2022-03-23 13:29:11 -03:00
Dmitrii b163fce35b
Merge pull request #7382 from ieQu1/doc-schema-2
docs: Add definitions to the schema
2022-03-23 15:19:20 +01:00
JimMoen d20388cf01 test(authz): acl file rules update 2022-03-23 21:14:43 +08:00
JimMoen fc687bed27 test(authz): authz mnesia suite json body 2022-03-23 21:14:43 +08:00
JimMoen 41c808a262 fix(authz): write acl and cert files after nodes config synced 2022-03-23 21:14:43 +08:00
JimMoen c2e1c38fdf refactor(authz): prepend and append only allow one source 2022-03-23 21:14:43 +08:00
JimMoen 843e12ad16 refactor(authz): unifined function names and var names 2022-03-23 21:14:43 +08:00
Chris Hicks e659748153
Merge pull request #7306 from mononym/EMQX-3917-add-test-cases-for-connectors-mongo-db
refactor: refactor mongo connector test suite
2022-03-23 14:01:26 +01:00
ieQu1 8967e13eee docs(schema): Move descriptions from emqx.conf.all 2022-03-23 13:52:54 +01:00
ieQu1 ee805f12a6 docs(schema): Add documentation for prometheus and logger 2022-03-23 13:52:54 +01:00
ieQu1 d1e8fefa1f docs(schema): Add descriptions of events 2022-03-23 13:52:51 +01:00
JianBo He 617022f276
Merge pull request #7372 from lafirest/fix/coap_events
fix(coap): trigger disconnect logic when the client manually disconne…
2022-03-23 19:36:23 +08:00
Dmitrii a0bec0d921
Merge pull request #7103 from ieQu1/doc-schema
docs: Add to the schema
2022-03-23 10:46:11 +01:00
firest ab2f5b9bb7 fix(coap): fix system topic case 2022-03-23 17:25:52 +08:00
ieQu1 503c7f00ae docs(schema): Fix typos 2022-03-23 08:40:59 +01:00
firest ab51d8ab8e fix(coap): trigger disconnect logic when the client manually disconnected 2022-03-23 14:19:00 +08:00
JianBo He 97c05d3a72 chore(emqx): fmt codes 2022-03-23 09:53:18 +08:00
JianBo He a889b0b6a9 test: update test/emqx_channel_SUITE.erl
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-03-23 09:53:18 +08:00
JianBo He df74c180b7 fix(channel): send will_msg if client has been kicked 2022-03-23 09:53:18 +08:00
JianBo He 87a29beb5f fix(channel): send DISCONNECT packet if connection has been kicked
fix #7241
2022-03-23 09:53:18 +08:00
ieQu1 6f4e7dc118 docs(schema): Formatting 2022-03-22 20:19:18 +01:00
Zaiming (Stone) Shi ab40036a45
Merge pull request #7363 from zmstone/docs-add-more-desc
docs: add doc for stats
2022-03-22 19:41:35 +01:00
Thales Macedo Garitezi fbfbaa8a9a
test: add more tests to telemetry 2022-03-22 15:28:42 -03:00
Thales Macedo Garitezi 35a523230f
feat: add mqtt runtime insights to telemetry data 2022-03-22 15:28:19 -03:00
ieQu1 c6b0e8806f docs(schema): Add descriptions to the schema 2022-03-22 19:09:20 +01:00
Zaiming (Stone) Shi f08c317939 docs: fix spellcheck 2022-03-22 14:07:51 +01:00
Thales Macedo Garitezi 4d3157743e
style: format `emqx_modules` 2022-03-22 09:31:55 -03:00
Thales Macedo Garitezi 650683ac19
Merge pull request #7333 from thalesmg/telemetry-revamp1
Telemetry revamp part 1

- Remove obsolete `active_modules`.
- Don't use `mnesia(boot)` callback for indirect initialization.
- Add build info and vm specs to the exported data.
2022-03-22 09:03:13 -03:00
Zaiming (Stone) Shi 7a9ad86574 chore: increase line width to 120
and fix bad formats from erlfmt
2022-03-22 11:34:29 +01:00
Zaiming (Stone) Shi f9bad0412b docs: add doc for stats 2022-03-22 11:34:29 +01:00
JianBo He 83e16a5bc5
Merge pull request #7343 from HJianBo/fix-gw-bugs 2022-03-22 17:49:02 +08:00
firest 49fc1ab1c0 fix(exhook): use emqx_hook_metrics to count hook call information 2022-03-22 16:59:49 +08:00
lafirest 7e8bf82573
Merge pull request #7352 from lafirest/fix/auto_sub_empty_topic
fix(auto_subscribe): make a warning if the topic is empty when auto s…
2022-03-22 15:15:18 +08:00
firest d657a161db fix(auto_subscribe): improve log information 2022-03-22 15:02:25 +08:00
firest 0c3d02b02d test(coap): add a observe test case 2022-03-22 11:57:49 +08:00
Thales Macedo Garitezi 7ec6947c02
fix: add http timeout to prevent hanging 2022-03-21 14:24:40 -03:00
Thales Macedo Garitezi bf82b2d45c
style: fix typo 2022-03-21 14:24:40 -03:00
Thales Macedo Garitezi e8682a1107
feat: add build info and vm specs to telemetry 2022-03-21 14:24:40 -03:00
Thales Macedo Garitezi 5b49f3eee8
chore: rm `active_modules` 2022-03-21 14:24:40 -03:00
Thales Macedo Garitezi 98f950881f
chore: drop `mnesia(boot)`, create tables on start up 2022-03-21 14:24:40 -03:00
Zaiming (Stone) Shi 91bcf02970 chore: format code apps/emqx 2022-03-21 16:51:31 +01:00
Xinyu Liu ecf4d4b206
Merge pull request #7356 from DDDHuang/update_version
chore: release 5.0.0 beta4
2022-03-21 21:16:48 +08:00
Yang Miao 79b8c63b54
Merge pull request #7355 from EMQ-YangM/upstream_master
fix(rule): replace sql crlf with spaces
2022-03-21 21:15:15 +08:00
zhouzb 9820728e5c
Merge pull request #7351 from JimMoen/fix-authz-api-pem-check
fix authz api flaky status code.
2022-03-21 20:55:36 +08:00
DDDHuang e86fd9c4cb feat: release V5.0.0 beta4 2022-03-21 19:45:03 +08:00
EMQ-YangM 6cff53ad67 fix(rule): replace sql crlf with spaces
get around the hocon bug: error handling escape character \n
2022-03-21 19:26:06 +08:00
JianBo He 6da4592bb0 chore: fix elivs warnings 2022-03-21 18:52:41 +08:00
JianBo He 094c4ad262 fix(exproto): don't carry the ssl confs if ssl.enable is false 2022-03-21 18:44:01 +08:00
firest bad04e3571 fix(auto_subscribe): make a warning if the topic is empty when auto subscribe 2022-03-21 18:37:33 +08:00
JianBo He 670749493b fix(coap): reject duplicated connection request 2022-03-21 18:17:24 +08:00
JianBo He 053f9b422c fix(stomp): fix client.disconnect not trigger 2022-03-21 18:17:24 +08:00
JianBo He 5682dcb72e fix(gw): enrich conninfo for coap&lwm2m 2022-03-21 18:17:24 +08:00
JianBo He edb1460b56 chore(rule-engine): more safe generate even_msg content 2022-03-21 18:17:24 +08:00
JianBo He 3645cb244b fix(gw): throw the exproto start grpc server starting failure error 2022-03-21 18:17:24 +08:00
JimMoen 3769044a57 fix(authz_api): ssl pem check failed returns 400 2022-03-21 18:05:43 +08:00
Zhongwen Deng 946d62e40a test: don't run api_plugins_SUITE for now 2022-03-21 17:57:57 +08:00
Zhongwen Deng 88e0c4067f fix: api_plugins common test failed bump dashboard to v0.25.0. 2022-03-21 17:56:22 +08:00
Zhongwen Deng 5c9a87f251 chore: fix elvis warning: len_length is too long. 2022-03-21 17:56:22 +08:00
Zhongwen Deng df6141e4b8 test: fix plugin ct failed 2022-03-21 17:56:22 +08:00
Zhongwen Deng 2c879b7e13 chore: simplify nest case function 2022-03-21 17:56:22 +08:00
Zhongwen Deng bf6339ebf4 chore: upgrade hocon to 0.26.3 to fix dialyzer warning 2022-03-21 17:56:22 +08:00
Zhongwen Deng f81eb8f62f fix: remove TODO from hot-config-schema.json. 2022-03-21 17:56:22 +08:00
Zhongwen Deng 267fd398a6 fix: elvis warning 2022-03-21 17:56:22 +08:00
Zhongwen Deng f051424b3b test: add zones udpate/delete common test 2022-03-21 17:56:22 +08:00
Zhongwen Deng be0c26130a feat: add transate_to meta to root schema. 2022-03-21 17:56:22 +08:00
Zhongwen Deng 18886f657b feat: add emqx_config_logger. 2022-03-21 17:56:22 +08:00
DDDHuang eb4be03012
Merge pull request #7329 from DDDHuang/fix_api
fix: generate http api response code
2022-03-21 17:30:20 +08:00
zhongwencool 2c8cd8a44a
Merge pull request #7331 from lafirest/test/emqx_psk_coverage
test(psk): improve test coverage
2022-03-21 17:24:51 +08:00
JimMoen 1ed8e783f4 fix(authz_api): rm authz sources full update 2022-03-21 16:43:08 +08:00
JimMoen 0b7f1ab69c refactor(authz_api): avoid copy paste 2022-03-21 16:43:08 +08:00
JimMoen 0ee3e49db7 chore: rm unused macro and func, fix unchanged product name 2022-03-21 16:43:08 +08:00
JimMoen 188d876b1c fix(api): fix unmatched position parsing 2022-03-21 16:43:08 +08:00
Xinyu Liu 5456a2efa1
Merge pull request #7350 from terry-xiaoyu/update_rule_keep_metrics
fix(rule): update rules without reset the metrics
2022-03-21 16:41:58 +08:00
DDDHuang 9a6653d152 fix(api): slow subs update config return 2022-03-21 15:55:54 +08:00
Yang Miao fe95e6ffbb
Merge pull request #7349 from EMQ-YangM/http_code
fix: unify http response code for auhtn & authz
2022-03-21 15:32:32 +08:00
Shawn 50ee6ad2e2 fix(rule): update rules without reset the metrics 2022-03-21 15:06:34 +08:00
DDDHuang e517b41a4d fix(api): desc & remove useless api 2022-03-21 15:03:37 +08:00
EMQ-YangM dc8408e378 fix(emqx_authz_api): fix error code 2022-03-21 14:42:09 +08:00
EMQ-YangM a34e750ebe fix: unify http response code for auhtn & authz 2022-03-21 14:16:52 +08:00
DDDHuang 010dbbdb26 fix: bad code style 2022-03-21 14:12:19 +08:00
DDDHuang e1b6c0770d fix: getway bad api spec 2022-03-21 14:12:19 +08:00
DDDHuang 66c6ea4c23 fix: dashboard swagger desc & description check 2022-03-21 14:12:19 +08:00
DDDHuang b9b5e376a6 fix: dialyzer & bad func spec 2022-03-21 14:12:19 +08:00
DDDHuang 4d4348759d fix: generate connector & exhook & retainer api response code 2022-03-21 14:12:19 +08:00
DDDHuang 60f107f91f fix: generate dashboard api response code 2022-03-21 14:12:19 +08:00
DDDHuang 15b8203ac1 fix: generate ggateway api response code 2022-03-21 14:12:19 +08:00
DDDHuang 74e6fa5a94 fix: generate bridge api response code
fix: generate connector api response code SUITE

fix: generate exhook api response code
2022-03-21 14:12:19 +08:00
JianBo He c597cdc0e5
Merge pull request #7321 from HJianBo/mqtt-sn-resume-subs-5
feat(sn): introduce subs_resume option
2022-03-21 11:38:04 +08:00
firest b71eaf1290 fix(psk): fix spell error 2022-03-21 11:28:29 +08:00
firest ea52e0c05d fix(psk): fix too long style error 2022-03-21 11:28:29 +08:00
firest 435b22273d test(psk): improve test coverage 2022-03-21 11:28:29 +08:00
lafirest 841024461c
Merge pull request #7346 from lafirest/fix/spellcheck
fix(retainer): fix spellcheck in schema
2022-03-21 10:48:37 +08:00
JimMoen a5a9613512
Merge pull request #7338 from JimMoen/fix-mongo-servers-schema
fix(mongo): servers for mongo_sharded and mongo_rs
2022-03-21 10:19:20 +08:00
firest 8e5c118562 fix(retainer): fix spellcheck in schema 2022-03-21 10:14:05 +08:00
JianBo He a85b31d904
Merge pull request #7337 from lafirest/fix/retainer_update_api
fix(retainer): don't translate config content, keep it in raw
2022-03-20 06:52:48 +08:00
Xinyu Liu 40f1bfb3ab
Merge pull request #7332 from EMQ-YangM/add_authn_authz_status_api
feat: add authn, authz status api
2022-03-18 18:12:25 +08:00
firest 114f676150 fix(limiter): make elvis happy 2022-03-18 18:04:47 +08:00
JimMoen ed021d125f fix(mongo): servers for mongo_sharded and mongo_rs 2022-03-18 17:58:27 +08:00
firest 5459e38e15 fix(retainer): don't translate config content, keep it in raw 2022-03-18 17:16:03 +08:00
EMQ-YangM 339e459589 fix(emqx_authn): disable invalid_dynamic_call
cc

aa
2022-03-18 17:07:56 +08:00
firest beba7c9692 fix(limiter): improve code style and description 2022-03-18 16:00:42 +08:00
firest d28b34f0d1 fix(limiter): improve test case and fix some bugs 2022-03-18 16:00:42 +08:00
firest 32030c8369 feat(limiter): remove the group(zone) level 2022-03-18 16:00:42 +08:00
lafirest e7dec7835f feat(limiter): change zone to group and simplify config 2022-03-18 16:00:42 +08:00
EMQ-YangM d1857ba454 feat: add authn, authz status api 2022-03-18 14:36:33 +08:00
lafirest d231b2222e
Merge pull request #7328 from lafirest/fix/delayed_lookup
fix(delayed): make it possible to lookup/delete other node's delayed …
2022-03-18 00:53:53 +08:00
Thales Macedo Garitezi 89c8ba7e1a
Merge pull request #7326 from thalesmg/bump-gen-rpc
chore: bump gen_rpc
2022-03-17 13:50:28 -03:00
JianBo He 43c01117bb fix(sn): fix typos 2022-03-17 18:40:13 +08:00
JianBo He fbc0240f26 feat(sn): introduce subs_resume option
As the mqtt-sn v1.2 spec metioned, the gateway will be able to sync the
subscriptions topic-name registry to client when the client resume
it's session

port from: https://github.com/emqx/emqx/pull/7300
2022-03-17 18:38:54 +08:00
firest 3fc4236565 fix(delayed): make it possible to lookup/delete other node's delayed message 2022-03-17 14:36:55 +08:00
lafirest 6453479f44
Merge pull request #7324 from lafirest/fix/delayed_terminate_v5
fix(delayed): cancel the publish timer when terminate
2022-03-17 10:55:56 +08:00
Thales Macedo Garitezi c45578c130
chore: bump gen_rpc 2022-03-16 15:20:13 -03:00
firest 43a935286a fix(delayed): cancel the publish timer when terminate 2022-03-16 17:51:29 +08:00
Zhongwen Deng 9c355994e9 fix: add apps error code. 2022-03-16 17:20:26 +08:00
Yang Miao e6fcef16ba
Merge pull request #7319 from EMQ-YangM/ignore_authz_authn_metrics_status
Ignore authz, authn metrics status
2022-03-16 14:41:37 +08:00
Xinyu Liu ef8ad9b1f0
Merge pull request #7314 from terry-xiaoyu/demo0315
Fix some issues in rule engine found in the demo session
2022-03-16 13:52:05 +08:00
EMQ-YangM 37c4d68f40 fix: ignore authn, authz status and metrics 2022-03-16 11:14:21 +08:00
EMQ-YangM eb5570dd07 fix: disable authn_api, authz_api_sources swagger spec 2022-03-16 10:16:50 +08:00
Shawn a892ff9006 fix(dialyzer): update the specs for the rule() 2022-03-16 10:13:16 +08:00
Zaiming (Stone) Shi 4fce9d4cc3
Merge pull request #7305 from zmstone/chore-split-ct-jobs
ci: run ct in concurrent jobs
2022-03-15 21:15:19 +01:00
Zaiming (Stone) Shi d9ebca3294 test: fix emqx_retainer_api_SUITE infinity wait for table 2022-03-15 20:40:28 +01:00
Zaiming (Stone) Shi 9d96d3d10a test: fix auto_subscribe test case 2022-03-15 20:40:28 +01:00
Zaiming (Stone) Shi 4a35aaa50e
Merge pull request #7304 from zmstone/update-emqtt-to-1.4.8
chore: update emqtt to 1.4.8
2022-03-15 17:50:38 +01:00
Shawn 93c5fa60b4 fix(rules): store rule configs to cluster config files 2022-03-16 00:39:01 +08:00
Shawn 869dc1a081 fix(rules): ensure create_at unchanged after rule is updated 2022-03-16 00:38:42 +08:00
Zaiming (Stone) Shi d7d0525733
Merge pull request #7313 from zmstone/chore-pin-ekka-0.12.2
chore: pin ekka 0.12.2
2022-03-15 14:30:18 +01:00
Ilya Averyanov 402cb9190f
Merge pull request #7312 from savonarola/fix-retainer-tests
chore(retainer): fix mqtt_v5 test suite
2022-03-15 16:26:43 +03:00
Thales Macedo Garitezi 58705a1383
Merge pull request #7289 from thalesmg/fix-ekka-monitor-cleanups
fix(ekka): run cleanups on node down events
2022-03-15 09:39:37 -03:00
Zaiming (Stone) Shi f8d8bcb8bc chore: pin ekka 0.12.2
with mnesia_down vs node_down fix
and fast rocksdb build
2022-03-15 12:16:47 +01:00
Zaiming (Stone) Shi 420ad32aa7 chore: update emqtt to 1.4.8 2022-03-15 12:11:44 +01:00
Ilya Averyanov b3193181b2 chore(retainer): fix mqtt_v5 test suite 2022-03-15 12:55:02 +03:00
JimMoen a04bb57c19
Merge pull request #7310 from JimMoen/enhanced-authn-mnesia-fuzzy-query
feat(authn): enhanced authn users fuzzy searching
2022-03-15 17:18:08 +08:00
Dmitrii 7dfdeb7136
Merge pull request #7302 from ieQu1/spellcheck
ci: Run spellcheck in CI
2022-03-15 09:32:01 +01:00
JimMoen a084376f3d feat(authn): enhanced authn users fuzzy searching 2022-03-15 15:14:14 +08:00
JimMoen e83357895c refactor(exhook): move command use macro 2022-03-15 11:14:49 +08:00
JimMoen 02ed2148d7 refactor: move api `top` -> `front`, `bottom` -> `rear` 2022-03-15 10:28:46 +08:00
JimMoen 2a866e7c91 test(authn_api): move authn resource position 2022-03-15 10:28:46 +08:00
JimMoen e96bbf5c8b refactor(authn_api): add 'after related' for move api 2022-03-15 10:28:46 +08:00
JimMoen dd1168d98a test(exhook_api): move exhook position 2022-03-15 10:28:46 +08:00
JimMoen 7f595f3988 refactor(exhook_api): unified move position style 2022-03-15 10:28:46 +08:00
JimMoen f6ee45b2e6 test(authz_api): authz sources move api style 2022-03-15 10:28:46 +08:00
JimMoen 68c473c7cc refactor(authz_api): authz sources move api style 2022-03-15 10:28:46 +08:00
ieQu1 960c5ad0d5 ci: Run spellcheck 2022-03-14 22:27:46 +01:00
Thales Macedo Garitezi 2748c22b0c
fix(ekka): run cleanups on node down events
When using the RLOG DB Backend with Mria, replicant nodes do not
generate `mnesia down` events.  Therefore, cleanup procedures that
some modules do when a node goes down do not work for replicants.

However, replicant do generate `node down` events, so that may be a
safer way to handle cleanup to take into account that type of node.
2022-03-14 15:55:58 -03:00
Chris e35796abb0 refactor: refactor mongo connector test suite 2022-03-14 16:21:16 +01:00
DDDHuang 910a0b9a77
Merge pull request #7301 from DDDHuang/bad_map_key
fix: dashboard monitor bad key spell
2022-03-14 22:04:05 +08:00
Xinyu Liu 2a2d63aa21
Merge pull request #7292 from EMQ-YangM/remove_metrics_and_status
fix: reduce status_and_metrics
2022-03-14 21:51:56 +08:00
ieQu1 4116d01bfb chore(schema): Fix code style 2022-03-14 14:38:37 +01:00
DDDHuang a6b7f51d96 fix: dashboard monitor bad key spell 2022-03-14 17:57:56 +08:00
ieQu1 a36a494373 docs(cluster): Fix some definitions 2022-03-14 10:36:09 +01:00
ieQu1 b79ef3f0d9 docs: Add documentation for the cluster 2022-03-14 10:36:09 +01:00
DDDHuang e67138a6a7 fix: trace data dir suffix 2022-03-14 16:15:53 +08:00
EMQ-YangM 258d2e9e03 fix(emqx_authz_api_sources): use merge replace foldl 2022-03-14 14:43:17 +08:00
EMQ-YangM 740b3870bf fix(elvis): nesting_level shouldn't exceed 6 2022-03-14 13:36:35 +08:00
EMQ-YangM b33b3f6eee fix: reduce status_and_metrics 2022-03-14 10:21:51 +08:00
Yang Miao 4c93a71446
Merge pull request #7290 from EMQ-YangM/add_metrics_and_status_to_authz
feat(emqx_authz): add metrics and status to authz
2022-03-14 09:34:11 +08:00
zhongwencool f0f03d8a96
Merge pull request #6566 from zhongwencool/plugin-http-api
Plugin http api
2022-03-14 09:17:11 +08:00
EMQ-YangM afc92798a5 fix(emqx_authz_api_sources): fix resource status 2022-03-13 16:01:33 +08:00
Zhongwen Deng 4cde1274c7 test: fix build demo plugins crash. 2022-03-13 16:00:58 +08:00
EMQ-YangM f287547251 feat(emqx_authz): add metrics and status to authz 2022-03-13 12:41:03 +08:00
Zhongwen Deng 141c3adc76 fix: ct failed 2022-03-12 09:23:38 +08:00
Xinyu Liu 24251aea5d
Merge pull request #7285 from JimMoen/fix-authz-test
test(authz): make sure `emqx_resource` and `emqx_connector` stoped
2022-03-12 00:37:26 +08:00
Zhongwen Deng 704d1b20c6 fix: add bpapi.versions 2022-03-12 00:29:18 +08:00
Zaiming (Stone) Shi acd9aaff4d
Merge pull request #7282 from zmstone/build-refine-systemd-service-unit
Start EMQX in foreground mode in systemd
2022-03-11 14:46:33 +01:00
Zhongwen Deng f195808691 fix: rpc call use emqx_bpapi behavior 2022-03-11 21:28:33 +08:00
Zaiming (Stone) Shi 4bc8f0d44b feat: allow enable/disable an existing logger file handler 2022-03-11 13:34:54 +01:00
Xinyu Liu 4025e79d1b
Merge pull request #7283 from terry-xiaoyu/default_value_for_rates
Fix HTTP APIs for getting rule events and testing rule SQLs
2022-03-11 20:17:58 +08:00
Shawn 92a9fe46ea fix(bridges): validate empty topics for mqtt bridge 2022-03-11 20:16:03 +08:00
Xinyu Liu 3cf18a293d
Merge pull request #7271 from EMQ-YangM/add_metrics_and_status_to_authn
feat(emqx_authn_api): add metrics and status to authn
2022-03-11 19:21:44 +08:00
JimMoen b41e396ed2 test(authz): make sure `emqx_resource` and `emqx_connector` stoped 2022-03-11 19:11:07 +08:00
Zhongwen Deng fd7f91b5a6 chore: fix dialyzer warning. 2022-03-11 18:41:20 +08:00
Shawn 0b4b3a7cf0 fix(dialyzer): some bad type specs 2022-03-11 18:33:08 +08:00
Shawn 590fa1b375 fix(rule): check request body for /rule_test crashes 2022-03-11 18:13:12 +08:00
zhongwencool 59b10fc80b
Merge pull request #7279 from zhongwencool/hot-conf-global-zone
feat: Hot conf global zone
2022-03-11 18:03:35 +08:00
EMQ-YangM 81f9482fac fix(bpapi): add authn bpapi version 2022-03-11 17:41:39 +08:00
JianBo He 97e1d249ad
Merge pull request #7264 from lafirest/fix/delayed_api
fix(delayed): fix that the query is not a cluster query
2022-03-11 16:07:53 +08:00
EMQ-YangM b7a9f1e087 fix(emqx_map_lib): fix static checks errors 2022-03-11 15:56:14 +08:00
zhongwencool 0f681f6a08 feat(plugin): add plugin http api test case 2022-03-11 15:55:02 +08:00
zhongwencool 7160bc06b3 feat(plugin): add plugin http api 2022-03-11 15:55:02 +08:00
zhongwencool dcc0ff673f fix(plugin): can't delete extra package 2022-03-11 15:55:02 +08:00
zhongwencool 1ef2b8d06c chore(test): delete plugin_template from plugins_SUITE 2022-03-11 15:55:02 +08:00
zhongwencool 3414e0b601 feat(plugin): http api 2022-03-11 15:55:02 +08:00
Zhongwen Deng ab10163abf chore: redefined qos 2022-03-11 15:27:40 +08:00
Zhongwen Deng 3938aa127b feat: add /configs/global_zones API to aggregate emqx_zone_schema 2022-03-11 15:27:40 +08:00
JianBo He 81ffa87354
Merge pull request #7276 from lafirest/test/mgmt_api_subs_cover
test(mgmt): improve test coverage of emqx_mgmt_api_subscription to 96%
2022-03-11 15:15:22 +08:00
JianBo He 85d1a4f9bf
Merge pull request #7263 from HJianBo/fix-auth-jwt
fix(authn-jwt): accept the pem conntet to create jwk authenticator
2022-03-11 15:06:43 +08:00
EMQ-YangM 8af7131a49 fix(emqx_autn_api): wo do not need fixpoint 2022-03-11 14:18:50 +08:00
EMQ-YangM 7165fbc5ca fix(emqx_authn_api): fix elvis error 2022-03-11 14:18:50 +08:00
EMQ-YangM 48b167bf46 test(emqx_authn): add status and metrics test to emqx_authn_api 2022-03-11 14:18:50 +08:00
EMQ-YangM dce602c251 fix(emqx_authn_api): format metrics and status 2022-03-11 14:18:15 +08:00
EMQ-YangM a03f324010 feat(emqx_authn_api): add metrics and status to authn 2022-03-11 14:18:15 +08:00
Shawn f924b9389d fix(rule): add swagger schema for events from bridge sources 2022-03-11 14:13:14 +08:00
lafirest 1a8288de75 fix(delayed): fix code style error 2022-03-11 11:32:25 +08:00
Shawn 2a17798320 fix(metrics): add default value for the rates 2022-03-11 11:08:01 +08:00
JimMoen f5caf66253 refactor(api): unified api name style 2022-03-11 11:07:55 +08:00
JimMoen bde7e51d8e test(authz): add `DELETE` method test, change request method for all 2022-03-11 11:07:55 +08:00
JimMoen 5e81a1ae95 fix(authz): `POST` method for creating or updating rules for all 2022-03-11 11:07:55 +08:00
JimMoen ba05cdc412 fix(authz): `DELETE` method return codes 2022-03-11 11:07:55 +08:00
lafirest eeb92dae23 fix(delayed): fix that the query is not a cluster query 2022-03-11 10:54:11 +08:00
lafirest d909ae9f32 test(mgmt): improve test coverage of emqx_mgmt_api_subscription to 96% 2022-03-11 10:46:21 +08:00
Xinyu Liu 09404c555f
Merge pull request #7273 from terry-xiaoyu/rule_test_columns
Add more test columns for events received from MQTT bridge
2022-03-11 09:24:27 +08:00
JianBo He 333f170a30 fix(authn-jwt): accept the pem conntet to create jwk authenticator 2022-03-11 09:19:24 +08:00
Shawn 5ca0d4f856 fix(rule): rename the eventname of bridge sources to $bridges/mqtt:* 2022-03-10 23:03:35 +08:00
Shawn 3ca3470844 fix(rule_events): add descs for test columns 2022-03-10 22:49:29 +08:00
lafirest 40f0f61744
Merge pull request #7266 from lafirest/fix/topic_rewrite
fix(rewrite): fix config update maybe not work
2022-03-10 18:41:54 +08:00
zhongwencool 63b2501a1c
Merge pull request #7265 from DDDHuang/monitor_api_fix
fix: monitor api query string param latest: legal & default value inf…
2022-03-10 18:14:00 +08:00
lafirest c8411e780f
Merge pull request #7267 from lafirest/fix/slow_subs_api
fix(slow_subs): fix test case assert error
2022-03-10 17:31:40 +08:00
JimMoen 93c74bd645
Merge pull request #7225 from JimMoen/authn-authz-mnesia-fuzzy-searching
authn and authz mnesia searching by `clientid` or `username`
2022-03-10 17:00:36 +08:00
lafirest d66098470f fix(slow_subs): fix test case assert error 2022-03-10 16:45:43 +08:00
DDDHuang 03ca53d9b3 fix: monitor api query string param latest: legal & default value infinity 2022-03-10 16:40:40 +08:00
lafirest 2b2104851a fix(rewrite): fix config update maybe not work 2022-03-10 16:31:44 +08:00
Shawn c673e55a47 fix(rule): add SQL test examples for user properties
Porting from v4.4
2022-03-10 16:01:30 +08:00
Shawn 247b14c95f fix(mqtt_bridge): refine the message format from a mqtt bridge source 2022-03-10 15:57:33 +08:00
DDDHuang 9fca6c18f6
Merge pull request #7257 from DDDHuang/re_username
fix: users api, create illegal char username
2022-03-10 14:46:51 +08:00
JimMoen 7274d775cb test(authz): api username fuzzy searching 2022-03-10 13:38:45 +08:00
Xinyu Liu 67e39150d0
Merge pull request #7251 from terry-xiaoyu/add_restart_bridge_api
feat(bridge): add APIs for restart/stop bridges on one node
2022-03-10 13:34:44 +08:00
Shawn 1d023b541f refactor(connnector): rename waiting_connect_complete -> wait_for_resource_ready
Rename the option to wait_for_resource_ready and defaults to 5s.
2022-03-10 10:46:57 +08:00
lafirest 8e2ff381a4 fix(slow_subs): fix response data type error 2022-03-10 10:26:16 +08:00
Shawn a38cac0233 refactor(connector): rename list/0 -> list_raw/0 2022-03-10 10:02:06 +08:00
JimMoen 42df68ab51 test(authn): fix return type match, api fuzzy searching 2022-03-10 10:01:40 +08:00
JimMoen 990a66e1ad feat(gateway): gateway authn mnesia rows fuzzy searching by `clientid` or `username` 2022-03-10 10:01:40 +08:00
JimMoen 593e1a3efb feat(authn): authn mnesia rows fuzzy searching by `clientid` or `username` 2022-03-10 10:01:40 +08:00
JimMoen 16ec8fe289 feat(authz): authz mnesia rules searching by `clientid` or `username` 2022-03-10 10:01:40 +08:00
JimMoen c01aa3c580 style(authz_mnesia): api spec style, rm duplicated module name 2022-03-10 10:01:40 +08:00
DDDHuang f22f61ac66 fix: users api, create illegal char username 2022-03-10 09:58:42 +08:00
zhongwencool f7ec74d367
Merge pull request #7248 from zhongwencool/improve-ct-coverage
test: Improve test coverage
2022-03-10 09:47:10 +08:00
JianBo He 0b6b2295a6
Merge pull request #7239 from HJianBo/mqttsn-alseep
Support the client asleep mechanism for MQTT-SN gateway
2022-03-10 09:35:45 +08:00
Zhongwen Deng 3aa7c3a8dd fix: elvis warning 2022-03-09 22:29:21 +08:00
JianBo He 98d2f80506
Merge pull request #7205 from HJianBo/redesign-event-msg
Refactor `event_messages` with `sys_topics`
2022-03-09 21:58:27 +08:00
Chris Hicks 7f31cd08a7
Merge pull request #7252 from mononym/mongodb-deadloop-fix
fix: update mongodb client to latest version with deadloop fix
2022-03-09 14:08:24 +01:00
Thales Macedo Garitezi b231a13794
Merge pull request #7232 from thalesmg/rlog-default-db-backend2
feat: use rlog db backend by default
2022-03-09 08:56:04 -03:00
Zhongwen Deng 7beaa91814 fix: schema mod error 2022-03-09 19:24:33 +08:00
Chris b383e68c94 fix: update mongodb client to latest version with deadloop fix 2022-03-09 11:59:37 +01:00
Shawn 50d0a3271b fix(test): add testcases for enable/disbale bridges 2022-03-09 18:49:30 +08:00
Shawn 36e068d00d feat(bridge): add APIs for restart/stop bridges on one node 2022-03-09 18:42:19 +08:00
Xinyu Liu e0557551aa
Merge pull request #7156 from EMQ-YangM/upm2
fix(emqx_resource): remove async_create option
2022-03-09 17:57:15 +08:00
JianBo He 724d51a024 fix(mqttsn): fix flaky test 2022-03-09 17:11:09 +08:00
JianBo He f90b27c291 fix(exproto): filter out ssl options if it disabled 2022-03-09 16:47:45 +08:00
JianBo He 321ad09882 chore: fix elvis warnings 2022-03-09 16:46:19 +08:00
EMQ-YangM b7674fd19f fix(emqx_authz_file_SUITE): fix config_update_crashed error 2022-03-09 16:35:30 +08:00
Zhongwen Deng 7942de53a0 chore: fix elvis warning 2022-03-09 16:07:01 +08:00
Zhongwen Deng 0ec8c528a0 test: add more test for cluster_rpc_handler/api_configs/api_trace 2022-03-09 16:03:28 +08:00
Zhongwen Deng 414d29c413 chore: add label field for schema.json. 2022-03-09 14:40:14 +08:00
EMQ-YangM 583624fb8d fix(emqx_authn): fix test suite 2022-03-09 13:53:05 +08:00
JianBo He 857bd1e12a test(exhook): remove helpless test case 2022-03-09 13:50:17 +08:00
JianBo He 0c8d739e2f test: change assert condition 2022-03-09 13:50:17 +08:00
JianBo He 6dac422c93 chore: rename sys_topic to sys_topics 2022-03-09 13:50:17 +08:00
JianBo He ecc8d92e6c test(sys): refine prop_emqx_sys 2022-03-09 13:50:16 +08:00
JianBo He ba6cfd595b feat(sys): support client events notification 2022-03-09 13:50:16 +08:00
JianBo He e72e49b291 chore: fix elvis warnings 2022-03-09 13:46:58 +08:00
JianBo He 5436a3c496 chore(gw): use emqx_gateway_cm:call/4 instead ConnMod:call/3 2022-03-09 13:46:56 +08:00
JianBo He 9422ac4bc1 fix(mqttsn): fix unused variable 2022-03-09 12:57:51 +08:00
JianBo He 6ab993c3e8 test(mqttsn): uncomment asleep testcases 2022-03-09 12:57:51 +08:00
JianBo He 98b97ad217 feat(mqttsn): support asleep client 2022-03-09 12:57:51 +08:00
JianBo He 01eb3ca93a chore(mqttsn): fix frame formating crash 2022-03-09 12:57:51 +08:00
JianBo He 8ac0152af0 chore(gw): log SEND_data 2022-03-09 12:57:51 +08:00
lafirest 691588ed23
Merge pull request #7231 from lafirest/test/retainer_api_case
test(retainer): fix the flaky case
2022-03-09 12:33:44 +08:00
lafirest 3601d147e4 test(retainer): fix the flaky case 2022-03-09 10:12:49 +08:00
Thales Macedo Garitezi a85d636a68
feat(rlog): use rlog as the default db backend 2022-03-08 13:34:05 -03:00
Thales Macedo Garitezi 14f7216033
style: please elvis checks 2022-03-08 13:34:03 -03:00
zhongwencool 514e374868
Merge pull request #7215 from thalesmg/fix-congestion-log
fix(congestion): fix congestion message formatting
2022-03-08 22:45:38 +08:00
zhongwencool 2ac5fb9223
Merge pull request #7202 from DDDHuang/routes_honc
fix(api): routes api hocon support
2022-03-08 22:35:37 +08:00
zhongwencool a5b2300ce4
Merge pull request #7236 from zhongwencool/config-api
feat(config): Filter unnecessary HTTP APIs
2022-03-08 22:33:45 +08:00
Zhongwen Deng 512a5c3b8e fix: elvis warning 2022-03-08 14:50:10 +08:00
Zhongwen Deng ef5fcd388b chore: delete unuse function gen_conf_schema. 2022-03-08 14:22:56 +08:00
Zhongwen Deng 1244391cb7 fix: alarm crash when safe_publish not ready. Filter out unnecessary APIs 2022-03-08 14:14:54 +08:00
EMQ-YangM ca7a43986a fix(emqx_connector): restart with default wait_connected 2022-03-08 14:09:39 +08:00
EMQ-YangM 57adbab5ea fix(emqx_authn): fix authn suite status 2022-03-08 14:09:39 +08:00
EMQ-YangM 62d3aecc09 fix(emqx_connector): add default Opts: '#{wait_connected => 1000}' 2022-03-08 14:09:39 +08:00
EMQ-YangM db0e9e3358 fix(emqx_resource_instance): fix dialyzer warning 2022-03-08 14:09:39 +08:00
EMQ-YangM db97ed5163 fix(emqx_authz): add default wait_connected 2022-03-08 14:09:39 +08:00
EMQ-YangM d99db4ebfa fix(emqx_authn): add default wait_connected 2022-03-08 14:09:39 +08:00
EMQ-YangM f29877bb6a fix(emqx_resource): remove create_opts async_create 2022-03-08 14:09:39 +08:00
EMQ-YangM bf57bf717c feat(emqx_resource_instance): add wait_connected Opts 2022-03-08 14:09:14 +08:00
Xinyu Liu 558441eeb7
Merge branch 'master' into improve_rule_bridge_apis 2022-03-08 11:38:42 +08:00
Xinyu Liu 591d5f02d1
Merge pull request #7227 from EMQ-YangM/upm4
fix(emqx_bridge_api): fix aggregate_metrics
2022-03-08 11:35:48 +08:00
Xinyu Liu c5f92ef856
Merge branch 'master' into improve_rule_bridge_apis 2022-03-08 11:12:30 +08:00
Shawn 8a0565a53b chore(elvis): please the elvis 2022-03-08 11:11:29 +08:00
zhongwencool 2d9a086bbb
Merge pull request #7198 from zhongwencool/emqx-conf-ct-coverage
chore: add more test for emqx_config_handler
2022-03-08 10:04:02 +08:00
Zhongwen Deng a7ba678463 fix: elvis warning 2022-03-08 09:05:23 +08:00
Zhongwen Deng 9b00f2756b feat: Make sure that Specify Key and ?WKEY cannot be on the same level. 2022-03-07 21:48:31 +08:00
Shawn b20902ebfe fix: remove the Id field from response of GET, POST /connectors 2022-03-07 19:33:32 +08:00
Shawn 2897af9650 fix: update testcases for emqx_connector 2022-03-07 18:39:23 +08:00
Shawn 9a9c92ae88 fix: update testcases for emqx_bridge 2022-03-07 16:48:36 +08:00
EMQ-YangM 015027d44a fix(emqx_bridge_api): fix aggregate_metrics 2022-03-07 14:51:37 +08:00
Shawn 72409782eb fix: remove the Id field from response of GET, POST /bridges
The response body of POST, GET /bridges should be the same as
 the request body of the POST /bridges:

```
{"type": "mqtt",
 "name": "my_mqtt_bridge"
}
```

We force the user to provide an Id of format `{type}:{name}` when GET,
DELETE, PUT a bridge:

`GET /bridges/{type}:{name}`
2022-03-07 14:33:02 +08:00
DDDHuang 467dc7239e fix: rebase master & new code style 2022-03-07 09:41:32 +08:00
Thales Macedo Garitezi 3e08282ffb
chore: improve formatting
Without `~0p`, had some weird indentation while printing
2022-03-04 15:22:33 -03:00
Thales Macedo Garitezi e76f67e985
style: please elvis checks 2022-03-04 11:14:13 -03:00
Thales Macedo Garitezi 0c76b6cf4d
fix(congestion): fix congestion message formatting
It seems that the `~ts` in the format string does not handle maps,
which results in a crash when trying to format the congestion message.

```erlang
28> io_lib:format("~ts", [#{}]).
** exception error: bad argument
     in function  io_lib:format/2
        called as io_lib:format("~ts",[#{}])
```

Example:

```
2022-03-04T12:43:26.900609+00:00 [warning] '$kind': unclean_terminate, clientid: 192.168.2.116_bench_sub_11412_1782328074, context: badarg, exception: error, line: 582, mfa: emqx_connection:terminate/2, peername: 192.168.2.116:47358, stacktrace: [{io_lib,format,["connection congested: ~ts",[#{buffer => 4096,clientid => <<"192.168.2.116_bench_sub_11412_1782328074">>,conn_state => disconnected,connected_at => 1646397524470,high_msgq_watermark => 8192,high_watermark => 1048576,memory => 57064,message_queue_len => 20,peername => <<"192.168.2.116:47358">>,pid => <<"<0.259.28>">>,proto_name => <<"MQTT">>,proto_ver => 5,recbuf => 4096,recv_cnt => 2,recv_oct => 81,reductions => 267523,send_cnt => 333,send_oct => 149869,send_pend => 128,sndbuf => 332800,sockname => <<"10.10.1.13:1883">>,socktype => tcp,username => undefined}]],[{file,"io_lib.erl"},{line,187}]},{emqx_congestion,do_cancel_alarm_congestion,4,[{file,"/emqx/apps/emqx/src/emqx_congestion.erl"},{line,88}]},{lists,foreach,2,[{file,"lists.erl"},{line,1342}]},{emqx_connection,terminate,2,[{file,"/emqx/apps/emqx/src/emqx_connection.erl"},{line,576}]},{proc_lib,wake_up,3,[{file,"proc_lib.erl"},{line,236}]}]
```
2022-03-04 11:00:49 -03:00
lafirest e298ff9dca
Merge pull request #7206 from lafirest/coverage/retainer
test(retainer): improve test coverage from 63% to 92%
2022-03-04 16:34:20 +08:00
lafirest c6385762c6 test(retainer): improve test coverage from 63% to 92% 2022-03-04 15:24:08 +08:00
Zhongwen Deng 6ff2db6180 fix: elvis warning 2022-03-04 15:10:10 +08:00
Zhongwen Deng 153e1bcb91 fix: pre_update_config is executed one more time than expected 2022-03-04 14:43:51 +08:00
JimMoen f25da61f39 refactor(mgmt): `Params` => `QString`, `QsScheam` => `QSchema` 2022-03-04 11:14:03 +08:00
JimMoen f8073002b6 fix(mgmt): better desc for fuzzy field 2022-03-04 10:06:36 +08:00
JimMoen fab9ad91de fix(schema): nullable => required 2022-03-04 10:06:36 +08:00
Zhongwen Deng e2f386383d fix: replace local ref by remote ref 2022-03-04 09:13:56 +08:00
Zhongwen Deng 71d20d153b fix: replace deep_merge with merge. 2022-03-03 22:52:46 +08:00
Zhongwen Deng 4dfcb90b16 fix: get_roots broken 2022-03-03 20:31:30 +08:00
Thales Macedo Garitezi f3e7ec43dd
Merge pull request #7190 from thalesmg/fix-typos
docs: fix a few typos
2022-03-03 08:57:51 -03:00
Zhongwen Deng a862eb0252 chore: add more test for emqx_config_handler 2022-03-03 17:39:32 +08:00
Ilya Averyanov 4b19fb575a
Merge pull request #7187 from savonarola/mongo-no-double-pooling
chore(mongodb): do not use mongodb internal pool
2022-03-03 11:47:41 +03:00
lafirest c0df5cd80f
Merge pull request #7193 from lafirest/fix/retainer_api
fix(retainer): fix config lookup error
2022-03-03 10:58:35 +08:00
JianBo He 7ba1db759e
Merge pull request #7182 from HJianBo/mqttsn-replay-register 2022-03-03 10:55:45 +08:00
lafirest be61d918bf fix(retainer): fix config lookup error 2022-03-03 10:43:08 +08:00
JianBo He cc7db4a104
Merge pull request #7183 from lafirest/refactor/retainer_api
refactor(retainer): refactor the api use swagger
2022-03-03 09:55:13 +08:00
Zaiming (Stone) Shi 4e64010a3b build: more structured build info 2022-03-02 21:22:03 +01:00
Thales Macedo Garitezi 4aa15c1e78
docs: fix a few typos 2022-03-02 16:21:07 -03:00
Ilya Averyanov a0cd877669 chore(mongodb): do not use mongodb internal pool 2022-03-02 16:26:39 +03:00
JianBo He 61251be20b
Merge pull request #7185 from lafirest/fix/retainer_update
fix(retainer): trap exit message
2022-03-02 18:16:06 +08:00
lafirest 4a9ba7f8b8 fix(retainer): trap exit message 2022-03-02 17:06:48 +08:00
lafirest d7321e8b77 fix(slow_subs): change enable to false when unload 2022-03-02 16:54:25 +08:00
JianBo He 63ef00a208 fix(gw): add takeover_session/3 for cm_proto_v1 2022-03-02 16:43:53 +08:00
lafirest ddb7786d30 refactor(retainer): refactor the api use swagger 2022-03-02 16:37:54 +08:00
JianBo He 7ade24b344 feat(mqttsn): support to register unknown topic-name to the client 2022-03-02 14:58:43 +08:00
JianBo He 5b1ba335cb chore(session): add obtain_next_pkt_id/1
In the current implement, mqtt-sn gateway is using the emqx_session as
its session structure. We need a method to get a pkt_id for sending like
REGISTER related messages
2022-03-02 14:58:43 +08:00
JianBo He ddf3585b22 refactor(gw): support session takeover 2022-03-02 14:58:43 +08:00
JianBo He 123b667eb0
Merge pull request #7128 from lafirest/refactor/retainer_flow_control
refactor(emqx_retainer): use hierarchical limiter for the flow control
2022-03-02 14:46:56 +08:00
lafirest 9bdebabdbc fix(retainer): fix/add some comment 2022-03-02 11:34:19 +08:00
JianBo He 8d837f88de
Merge pull request #7171 from lafirest/fix/auto_subscribe
fix(emqx_auto_subscribe): fix config update not work in cluster
2022-03-02 10:16:46 +08:00
JianBo He 480e17ccb5
Merge pull request #7178 from lafirest/fix/topic_rewrite
fix(emqx_rewrite): fix config update not work in cluster
2022-03-02 10:14:52 +08:00
firest df2da949f1 fix(emqx_rewrite): fix config update not work in cluster 2022-03-01 23:11:21 +08:00
Dmitrii b4439c6710
Merge pull request #7176 from ieQu1/fix-add-hook
test(emqx_hook): Fix flaky t_add_hook_order test
2022-03-01 15:52:22 +01:00
Zaiming (Stone) Shi f39ae6dfa7
Merge pull request #7177 from zmstone/docs-add-more-detailed-desc-for-strict-mode
docs: add more details desc for strct_mode config
2022-03-01 14:58:14 +01:00
ieQu1 87d7698e1e test(emqx_hook): Fix flaky t_add_hook_order test 2022-03-01 14:15:11 +01:00
JimMoen 88b69dd806
Merge pull request #7175 from JimMoen/mqtt-frame-utf8-check
feat(frame): utf-8 string check in `strict_mode`
2022-03-01 21:02:26 +08:00
Zaiming (Stone) Shi be34b927ad docs: add more detailed description for strict_mode config 2022-03-01 13:11:16 +01:00
JimMoen 0849a2d4c7 test(frame): malformed utf-8 packet 2022-03-01 18:55:31 +08:00
JimMoen 9a75004759 feat(frame): utf-8 string check in `strict_mode` 2022-03-01 18:51:56 +08:00
lafirest 32a995ffe9 fix(emqx_auto_subscribe): fix config update not work in cluster 2022-03-01 18:10:31 +08:00
lafirest 24cba8efa1 fix(emqx_event_message): fix config update not work in cluster 2022-03-01 15:08:21 +08:00
Zaiming (Stone) Shi b3745715c4 build: support a default edition 2022-02-28 17:03:42 +01:00
Zaiming (Stone) Shi d029a73b99 refactor: make release edition static info at compile time 2022-02-28 16:37:47 +01:00
Zaiming (Stone) Shi 8ac89bb1a5
Merge pull request #7161 from zmstone/chore-pin-hocon-0.26.1
chore: pin hocon 0.26.1
2022-02-28 14:59:23 +01:00
DDDHuang 9bd55b0340
Merge pull request #7154 from DDDHuang/tc_status
fix(test): add status api test suite
2022-02-28 20:24:15 +08:00
Zaiming (Stone) Shi 7df2a4655a chore: pin hocon 0.26.1
0.26.0 had a bug where 'mapping' field is encoded as a integerx- list
2022-02-28 12:54:49 +01:00
DDDHuang dbfa7a7f0c fix(test): improve subscriptions api suite 2022-02-28 17:54:05 +08:00
DDDHuang 384d508b13 fix(test): add status api test suite 2022-02-28 17:54:05 +08:00
Zaiming (Stone) Shi 4a336b6b4e test: add eunit test for schema dump 2022-02-28 10:47:10 +01:00
Zaiming (Stone) Shi 29a898cc2e feat: parameterise schema module for schema dump 2022-02-28 09:59:56 +01:00
Zaiming (Stone) Shi e22104476a fix(data_dir): get data_dir config in the right way
now data_dir config is respected by boot script as well as
EMQX application after booted
2022-02-28 09:59:56 +01:00
DDDHuang d8cf4421aa
Merge pull request #7153 from DDDHuang/etm_urlencode
fix: remove bindings params url decode (url decode by minirest)
2022-02-28 13:38:09 +08:00
JimMoen d82a5544da fix: topic_metrics example 2022-02-28 11:38:18 +08:00
Xinyu Liu 47a4fa5732
Merge pull request #7140 from EMQ-YangM/tmp_change_status
refactor(emqx_resource): change the status of emqx_resource to 'conne…
2022-02-28 11:13:47 +08:00
DDDHuang 0e3310f1cf fix: remove bindings params url decode (url decode by minirest) 2022-02-28 11:13:23 +08:00
JianBo He 48cc641ec0
Merge pull request #7114 from lafirest/refactor/coap_api
refactor(emqx_coap): refactor CoAP API
2022-02-28 10:14:26 +08:00
firest ec17c4d63c fix(emqx_limiter): fix schema error 2022-02-27 23:37:20 +08:00
Zaiming (Stone) Shi edb16f902e chore: pin hocon 0.16.0 for 'mappings' in generated config doc 2022-02-27 14:44:28 +01:00
Zaiming (Stone) Shi b603d544b2 refactor(emqx_gateway_schema): use remote ref instead of redefine
the ssl_client_opts struct
2022-02-27 14:44:28 +01:00
firest 6b6acaec43 refactor(emqx_coap): refactor CoAP API 2022-02-26 17:30:34 +08:00
Thales Macedo Garitezi 69e0f9c6cf
Merge pull request #7109 from thalesmg/elixir-plugin-test
Add Elixir Plugin Template Test
2022-02-25 11:31:41 -03:00
DDDHuang e8f92b422c
Merge pull request #7061 from DDDHuang/new_monitor
New monitor
2022-02-25 20:57:34 +08:00
DDDHuang 103df6f06b fix: dashboard monitor bpapi 2022-02-25 18:38:10 +08:00
zhongwencool 8d26ba6e9f
Merge pull request #7108 from thalesmg/fix-sys-mon-portinfo
fix(sys_mon): guard before calling `erlang:port_info`
2022-02-25 17:38:24 +08:00
DDDHuang 00b83121a4 fix(test): add api test SUITE & bug fix 2022-02-25 17:36:07 +08:00
DDDHuang c21bc9d329 feat: dashboard monitor granularity adapter 2022-02-25 17:36:07 +08:00
DDDHuang a88e8b0c9e fix(doc): remove annotation 2022-02-25 17:36:07 +08:00
DDDHuang 8c1c87a8d6 fix(test): add monitor SUITE, TODO: API Test SUITE 2022-02-25 17:36:07 +08:00
DDDHuang fedfa6c653 feat: monitor api, TODO: test suite 2022-02-25 17:36:07 +08:00
DDDHuang 21b9943df9 feat: new monitor TODO: API 2022-02-25 17:36:07 +08:00
DDDHuang f4a669b3bc fix(doc): reflactor monitor 2022-02-25 17:36:07 +08:00
zhongwencool 13a0eff678
Merge pull request #7125 from zhongwencool/schema-json
feat: generate hot config's schema.json and remove nullable option.
2022-02-25 17:18:20 +08:00
JianBo He f45a00f3c1
Merge pull request #7126 from HJianBo/force-kill-takeover-failure-proc-5.0
refactor(cm): force kill the proc that failed to response takeover call
2022-02-25 17:11:37 +08:00
EMQ-YangM e54f4b75da fix(emqx_connector): fix resource status 2022-02-25 16:47:32 +08:00
JianBo He 829fa2004a
Merge pull request #7136 from lafirest/fix/delayed_publish
fix(emqx_delayed): fix config update not working
2022-02-25 16:10:32 +08:00
Zhongwen Deng 1667a03c18 chore: rename hot-config-schema.json; keep schema.json for spellcheck. 2022-02-25 16:04:30 +08:00
EMQ-YangM fa21fa2432 fix(emqx_bridge): fix bridge status 2022-02-25 15:26:40 +08:00
EMQ-YangM 376c9ee261 refactor(emqx_resource): change the status of emqx_resource to 'connected/connecting/disconnecting' 2022-02-25 15:02:41 +08:00
Zhongwen Deng 3aa9afc5bf fix: rpc get node info maybe crash when emqx_sys process is not start yet. 2022-02-25 14:20:19 +08:00
Zhongwen Deng 4eec83b0e5 fix: memsup's memory alway false. 2022-02-25 14:19:57 +08:00
firest 2053d21bd5 fix(emqx_delayed): fix config update not working 2022-02-25 11:24:30 +08:00
firest 19d4dabd04 fix(emqx_retainer): fix test case error 2022-02-25 10:08:44 +08:00
Thales Macedo Garitezi 0e319d5e4e
fix: rm useless `catch` 2022-02-24 16:28:00 -03:00
Thales Macedo Garitezi 427866f8ad
test(sys_mon): add test for closed port 2022-02-24 15:13:18 -03:00
Thales Macedo Garitezi b46af91e74
test: disable export warning during tests 2022-02-24 14:20:36 -03:00
Thales Macedo Garitezi 60e791e0e3
test: add test case for elixir plugin 2022-02-24 14:20:36 -03:00
Thales Macedo Garitezi d89925ce7b
fix(sys_mon): guard before calling `erlang:port_info`
Sometimes, the `emqx_sys_mon:procinfo/1` might be called with
something that is not a port, like `[]`.  Not sure on the conditions
for this to happen.

```
2022-02-18T20:05:02.671592+00:00 [error] Generic server emqx_sys_mon terminating. Reason: {badarg,[{erlang,port_info,[[]],[{error_info,#{module => erl_erts_errors}}]},{emqx_sys_mon,portinfo,1,[{file,"/emqx/apps/emqx/src/emqx_sys_mon.erl"},{line,205}]},{emqx_sys_mon,'-handle_info/2-fun-5-',2,[{file,"/emqx/apps/emqx/src/emqx_sys_mon.erl"},{line,150}]},{emqx_sys_mon,suppress,3,[{file,"/emqx/apps/emqx/src/emqx_sys_mon.erl"},{line,184}]},{gen_server,try_dispatch,4,[{file,"gen_server.erl"},{line,695}]},{gen_server,handle_msg,6,[{file,"gen_server.erl"},{line,771}]},{proc_lib,wake_up,3,[{file,"proc_lib.erl"},{line,236}]}]}. Last message: {monitor,<0.7796.0>,busy_dist_port,[]}. State: #{events => [{busy_dist_port,#Port<0.127>}],timer => #Ref<0.2758388682.1853620226.133920>}.
```
2022-02-24 14:07:09 -03:00
Zhongwen Deng 114db2d14e chore: fix ct failed 2022-02-25 00:01:39 +08:00
Zhongwen Deng db584f79d6 feat: upgrade hocon to 0.25.0 to replace nullable with required. 2022-02-24 22:39:03 +08:00
Chris Hicks 2b8bcfac5e
Merge pull request #7127 from mononym/EMQX3142-my-sql
refactor(emqx_connector): refactor mysql tests to use resource api
2022-02-24 14:08:21 +01:00
JianBo He ffafbfaaa6 test(cm): refine testcases 2022-02-24 21:00:54 +08:00
JianBo He 9c1fe4336b refactor(cm): force kill the proc that failed to response takeover call
port from: #7026
2022-02-24 21:00:45 +08:00
firest 5bf1d77993 refactor(emqx_retainer): use hierarchical limiter for the flow control 2022-02-24 18:06:40 +08:00
Chris Hicks f7d78d0600
Merge pull request #7003 from mononym/EMQX-3145-redis
feat: add basic redis tests and bring redis connector module in line …
2022-02-24 10:38:41 +01:00
JianBo He fa921775e7
Merge pull request #6999 from lafirest/feat/esockd_limiter
feat(emqx_limiter): use hierarchical limiter for esockd
2022-02-24 17:33:51 +08:00
Chris 7e20369253 refactor(emqx_connector): refactor mysql tests to use resource api 2022-02-24 09:56:53 +01:00
Chris Hicks a1dbe6f31c
Merge pull request #7123 from mononym/EMQX-3143-postgre-sql
refactor: update postgres connector tests to use resource apis
2022-02-24 09:13:38 +01:00
Zhongwen Deng 334d315838 feat: gen hot conf schema.json. 2022-02-24 15:46:51 +08:00
Zhongwen Deng 574bbafc9b fix(schema): Ensure enum is atom or int. 2022-02-24 15:36:04 +08:00
JimMoen cf61349aef test(api_metrics): test `node_metrics` without aggergate 2022-02-24 11:33:10 +08:00
JimMoen 806cf3719b refactor(api): api_nodes spec use dashboard_swagger 2022-02-24 11:33:10 +08:00
Chris d306baf92f feat: add basic redis tests 2022-02-23 15:25:11 +01:00
Chris 5c6e3fce6a refactor: update postgres connector tests to use resource apis 2022-02-23 14:37:51 +01:00
Thales Macedo Garitezi 278361e6b6
Merge pull request #7110 from thalesmg/fix-flaky-order-prop
test(fix): fix flaky prop
2022-02-23 09:09:23 -03:00
Zaiming (Stone) Shi e6380a1911
Merge pull request #7104 from zmstone/fix-windows-build-5.0
[5.0] Fix windows build
2022-02-23 10:22:45 +01:00
JimMoen 7eb3c0d4e5
Merge pull request #7099 from HJianBo/swagger_api_mgmt_metrics
refactor(mgmt): refactor api_metrics with dashboard_swagger
2022-02-23 16:34:14 +08:00
zhongwencool b7f808db9e
Merge pull request #7027 from DDDHuang/error_code
feat: support http error code & error code api
2022-02-23 16:12:20 +08:00
JianBo He 4b04dfa85f fix(mgmt): fix api_metrics case_clause
Co-authored-by: JimMoen <LnJimMoen@outlook.com>
2022-02-23 15:45:21 +08:00
firest 511be52326 fix(emqx_limiter): fix dialyzer error 2022-02-23 10:29:25 +08:00
firest c027eee151 fix(emqx_slow_subs): relax the check range of the test case 2022-02-23 10:15:53 +08:00
firest e1875880bb fix(emqx_limiter): rename emqx_htb_generic to emqx_esockd_htb_limiter 2022-02-23 09:56:26 +08:00
Zaiming (Stone) Shi 08d1b38bbe chore: refine console printout about quic not started 2022-02-22 22:33:33 +01:00
Thales Macedo Garitezi 8141c38ce1
test(fix): fix flaky prop
Failing when duplicate elements were being generated.

```
 An exception was raised: error:{assertEqual,
                                [{module,emqx_hooks_SUITE},
                                 {line,65},
                                 {expression,"Order"},
                                 {expected,
                                  [{5,'',''},
                                   {5,'',''},
                                   {4,'\223',''},
                                   {2,'}Ijrµ\036',''}]},
                                 {value,
                                  [{5,'',''},
                                   {4,'\223',''},
                                   {2,'}Ijrµ\036',''}]}]}.
```
2022-02-22 17:57:00 -03:00
Thales Macedo Garitezi b784c2e1ec
refactor: allow testing different plugin repos more easily 2022-02-22 15:03:53 -03:00
Thales Macedo Garitezi 3d19e77f00
Merge pull request #7090 from thalesmg/fix-use-tags-in-deps
fix(deps): use tags for dependencies
2022-02-22 09:09:37 -03:00
JimMoen d735fecfba
Merge pull request #7097 from JimMoen/fix-stomp-conninfo
fix(gateway): enrich stomp conninfo before run hooks
2022-02-22 18:26:03 +08:00
JianBo He 073743cd57
Merge pull request #7098 from HJianBo/autosubs
Gateway should ignore the `{subscribe, TopicTabels}` message produced by auto-subscribe module
2022-02-22 17:21:06 +08:00
Dmitrii f5d50f8461
Merge pull request #7091 from ieQu1/doc-schema
docs(node): Add documentation for the node
2022-02-22 10:16:23 +01:00
DDDHuang ea860f1ca6 fix: emqx_cluster_rpc start link 2022-02-22 17:14:35 +08:00
DDDHuang 240bac0235 fix(api): bridge api bad spec 2022-02-22 17:14:35 +08:00
DDDHuang a5d8f2ce3b fix(api): banned api error code format 2022-02-22 17:14:35 +08:00
DDDHuang 98a11f3c15 fix(api): emqx_connector_api error code format 2022-02-22 17:14:35 +08:00
DDDHuang 90ee450a84 feat: support http error code & error code api 2022-02-22 17:14:35 +08:00
JianBo He 42da72309a refactor(mgmt): refactor api_metrics with dashboard_swagger 2022-02-22 16:56:14 +08:00
JianBo He 20e3b721a8 chore(gw): ignore auto-subscribe msg 2022-02-22 15:43:04 +08:00
JimMoen 05f1593386 fix(gateway): enrich stomp conninfo before run hooks 2022-02-22 15:42:21 +08:00
JianBo He cc3a4f0c5f chore: don't send subscribe msg if topic list is empty 2022-02-22 14:42:10 +08:00
JimMoen 437feefdc0 fix(channel): server_keepalive only for MQTT v5.0 2022-02-22 10:50:49 +08:00
ieQu1 2b2c6a4d1b docs(node): Add documentation for the node 2022-02-21 19:53:11 +01:00
Thales Macedo Garitezi 16ad442bc3
fix(deps): use tags for dependencies
Some dependencies, like `bcrypt` and `quic`, have their references
declared as `branch`, yet there are no branches with those names, but
tags.  Despite rebar3 managing somehow to handle that, if a project
managed by Mix tries to declare EMQX as its dependency, it's not able
to fetch those dependencies.

```
$ mix deps.get
* Updating emqx (https://github.com/emqx/emqx - v5.0-beta.3)
* Updating lc (https://github.com/qzhuyan/lc.git - 0.1.2)
* Updating gproc (https://github.com/uwiger/gproc - 0.8.0)
* Updating typerefl (https://github.com/k32/typerefl - 0.8.6)
* Updating jiffy (https://github.com/emqx/jiffy - 1.0.5)
* Updating cowboy (https://github.com/emqx/cowboy - 2.9.0)
* Updating esockd (https://github.com/emqx/esockd - 5.9.0)
* Updating ekka (https://github.com/emqx/ekka - 0.11.1)
* Updating gen_rpc (https://github.com/emqx/gen_rpc - 2.5.1)
* Updating hocon (https://github.com/emqx/hocon.git - 0.22.1)
* Updating pbkdf2 (https://github.com/emqx/erlang-pbkdf2.git - 2.0.4)
* Updating recon (https://github.com/ferd/recon - 2.5.1)
* Updating snabbkaffe (https://github.com/kafka4beam/snabbkaffe.git - 0.16.0)
* Updating bcrypt (https://github.com/emqx/erlang-bcrypt.git - origin/0.6.0)
error: pathspec 'origin/0.6.0' did not match any file(s) known to git
** (Mix) Command "git --git-dir=.git checkout --quiet origin/0.6.0" failed
```

Therefore, we change them to `tag`s.
2022-02-21 15:36:24 -03:00
JimMoen e816e3e4a3
Merge pull request #7075 from JimMoen/refactor-authz-sources-api
refactor: authz_api_sources swagger spec
2022-02-22 01:24:42 +08:00
Zhongwen Deng 9f9bf059b9 fix(schema): remove unuse to_bin function; simplify body schema. 2022-02-21 23:02:49 +08:00
k32 d4458618b2 fix(hook): Executed hooks in deterministic order 2022-02-21 14:27:24 +01:00
JimMoen 4d5ee355bb fix(authz): authz http pool_type use default value `random` 2022-02-21 18:09:04 +08:00
k32 115c3f2d29 chore: Fix URLs 2022-02-21 10:13:09 +01:00
Ilya Averyanov 2aeb1bc0e8
Merge pull request #7059 from savonarola/elixir-stylecheck
chore(codestyle): add formatting check for Elixir code
2022-02-21 11:43:14 +03:00
JimMoen eaa659f2a1 refactor: authz_api_settings refactor with hoconsc 2022-02-21 16:40:47 +08:00
JimMoen ff68e2a20f fix(http): connector and authn/authz http `keep-alive` default 30s , max 1000 2022-02-21 16:35:15 +08:00
JimMoen 000020617c refactor: authz_api_sources spec 2022-02-21 16:33:08 +08:00
lafirest be2c36cfa0 feat(emqx_limiter): use hierarchical limiter for esockd 2022-02-21 11:37:38 +08:00
Zaiming (Stone) Shi 1be3eb1446 chore: rename EMQX Broker to just EMQX 2022-02-19 12:51:34 +01:00
k32 9fb35a1d64
docs: Fix typo
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-02-18 18:35:16 +01:00
Ilya Averyanov 634d861b90 chore(codestyle): add formatting check for Elixir code 2022-02-18 19:43:48 +03:00
k32 1c62c6e60b docs: Add documentation for the sysmon roots 2022-02-18 16:26:18 +01:00
k32 8566d2e246
Merge pull request #7051 from k32/schema-typos
docs: Fix typos
2022-02-18 15:38:51 +01:00
Zaiming (Stone) Shi e330f789af fix(ekka): pin version 0.12.1
print lock owner status before killing it
2022-02-18 09:19:57 +01:00
Zaiming (Stone) Shi 25c535effa
Merge pull request #7039 from zmstone/refactor-mgmt-api-node-info
Refactor: mgmt api node info
2022-02-18 09:02:29 +01:00
zhongwencool 0b74373464
Merge pull request #7043 from lafirest/test/ratelimiter
test(emqx_limiter): improve the code coverage of RateLimit to 87%
2022-02-18 09:59:23 +08:00
k32 5638bcb92b docs: Fix typos 2022-02-17 23:22:31 +01:00
Zaiming (Stone) Shi 8f203696ed refactor(emqx_mgmt_api_nodes): delete config_path
config path is not always relative to file:get_cwd.
also rephrase some of the descriptions
2022-02-17 21:15:03 +01:00
Zaiming (Stone) Shi 2a6d11c7f1
Merge pull request #7038 from zmstone/chore-rename-emqx-no-space-source-code
chore: EMQ X -> EMQX in source code
2022-02-17 21:13:43 +01:00
Zaiming (Stone) Shi 6a354d910e chore: rename EMQ_X to EMQX in hrl file macros 2022-02-17 15:55:46 +01:00
zhongwencool c88504f918
Merge pull request #7023 from zhongwencool/license-alarm-support
License alarm support
2022-02-17 22:09:51 +08:00
lafirest 3c92906405 test(emqx_limiter): improve the code coverage of RateLimit to 87% 2022-02-17 14:50:27 +08:00
lafirest 6f1431d283
Merge pull request #7008 from lafirest/fix/flakey_test
fix(emqx_slow_subs): fix flakey test case
2022-02-17 14:14:17 +08:00
Zaiming (Stone) Shi 64db085163 chore: EMQ X -> EMQX in source code 2022-02-16 22:08:12 +01:00
Zaiming (Stone) Shi 0528262705 chore(app.src): EMQ X -> EMQX in .app.src files 2022-02-16 17:51:45 +01:00
Zaiming (Stone) Shi b3d9605722 chore(conf): EMQ X -> EMQX in conf files 2022-02-16 17:50:41 +01:00
k32 e2e92e9a46
Merge pull request #7032 from k32/fix-prom-mria
fix(prometheus): Convert all non-numeric values to undefined
2022-02-16 15:48:06 +01:00
k32 0922f3bde3 fix(prometheus): Convert all non-numeric values to undefined 2022-02-16 14:45:30 +01:00
Zaiming (Stone) Shi 79d7832a07
Merge pull request #7020 from zmstone/docs-more-renames-in-descriptive-info
docs: More EMQ X -> EMQX rename in descriptive strings
2022-02-16 13:43:19 +01:00
zhongwencool 310a97305a
Merge pull request #6997 from zhongwencool/epoch-rfc3339-convert
feat(schema): schema support epoch_second, epoch_millisecond type.
2022-02-16 16:51:38 +08:00
Yang Miao 78cad0a528
Merge pull request #6989 from EMQ-YangM/up_master
refactor(emqx_resource): Improve grouping strategy for emqx_resource_instance
2022-02-16 16:26:28 +08:00
lafirest 7b49daba1f fix(emqx_slow_subs): fix test case error 2022-02-16 15:10:23 +08:00
zhongwencool 34fe5082c4 fix(schema): schema global validations not working 2022-02-16 14:20:15 +08:00
EMQ-YangM f70fc1a3b0 fix(emqx_bridge, emqx_retainer): hard code group name 2022-02-16 14:02:13 +08:00
Zaiming (Stone) Shi 2e94880bb6 docs: More EMQ X -> EMQX rename in descriptive strings 2022-02-15 22:39:11 +01:00
k32 689ea6546e
Merge pull request #7018 from k32/mria-prom-metrics
feat(mria): Add prometheus metrics
2022-02-15 21:26:25 +01:00
k32 c00f4ef83c
fix: Add replayq_len
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-02-15 20:02:46 +01:00
k32 6d49754988 feat(mria): Add prometheus metrics 2022-02-15 19:10:05 +01:00
Zaiming (Stone) Shi 667d66eb1e docs(README): EMQ X -> EMQX 2022-02-15 16:19:26 +01:00
lafirest 1dbfe0dce6
Merge pull request #7012 from lafirest/fix/trap_exit
fix(emqx_slow_subs): add trap exit flag
2022-02-15 17:38:21 +08:00
lafirest 1724536afa
Merge pull request #7011 from lafirest/fix/exhook_ssl
fix(emqx_exhook): replace ssl-config schema with emqx_schema:client_s…
2022-02-15 16:55:12 +08:00
lafirest 667dccc3f6 fix(emqx_slow_subs): add trap exit flag 2022-02-15 16:44:15 +08:00
lafirest 28bf20a366 fix(emqx_exhook): replace ssl-config schema with emqx_schema:client_ssl_opts_schema 2022-02-15 16:25:23 +08:00
JimMoen 0c108035a8 test(connector): connector require `ecpool` start 2022-02-15 12:45:50 +08:00
JimMoen 23c6a404b9 test(connector): avoid define macro duplicate 2022-02-15 10:42:08 +08:00
JimMoen 0e5105db6e test(authn): mongo health check more than once 2022-02-15 10:41:26 +08:00
JimMoen 2a1fba97da test(auth): resource use connector provided default port 2022-02-15 10:41:26 +08:00
JimMoen 28735dc6d7 refactor(connector): parse servers for `rs` and `sharded` mongo_type 2022-02-15 10:41:26 +08:00
lafirest 65fa7a85ad fix(emqx_slow_subs): fix flakey test case 2022-02-15 10:33:53 +08:00
JimMoen ab7c2b72e3 refactor(connector): db connector provide default port 2022-02-15 00:51:48 +08:00
Chris Hicks 15d3e86089
Merge pull request #7002 from mononym/EMQX-3144-mongo-db
feat: add basic mongodb test suite
2022-02-14 14:57:22 +01:00
Chris Hicks b1fbc08e3e
Merge pull request #6976 from mononym/EMQX3142-my-sql
feat: Add mysql tests for connector
2022-02-14 14:22:15 +01:00
Chris 7962583ac8 feat: add basic mongodb test suite 2022-02-14 13:11:15 +01:00
JianBo He 3f8c0072ce
Merge pull request #6986 from HJianBo/more-fields-for-client-online-offline
feat(event): add `connected_at` into client_disconnected event
2022-02-14 18:06:50 +08:00
EMQ-YangM 48942f9c93 refactor(emqx_resource): move unused macro to test 2022-02-14 17:40:39 +08:00
Chris c635e7306d feat: Add mysql tests for connector 2022-02-14 10:31:04 +01:00
zhongwencool 1413809b81
Merge pull request #6948 from zhongwencool/fix-watermark-master
fix(watermark): watermark should use > instead of >=
2022-02-14 16:11:47 +08:00
zhongwencool 80169ccb68 chore: add more eunit for emqx_datetime 2022-02-14 15:30:03 +08:00
JianBo He 229a62bcc9
Merge pull request #6988 from HJianBo/acl-metrics-add
feat(metrics): add acl metrics statistics
2022-02-14 15:06:04 +08:00
EMQ-YangM 75b2963efc test(authn,authz): fix create function 2022-02-14 14:10:10 +08:00
zhongwencool 498434826a feat(schema): schema support epoch_second, epoch_millisecond type. 2022-02-14 11:35:32 +08:00
Zaiming (Stone) Shi b9343891e4
Merge pull request #6946 from zmstone/refactor-license-simplify-parser-error
refactor: treat throw exception as `{error, Reason}` return
2022-02-11 19:09:40 +01:00
Zaiming (Stone) Shi e2a67760b1 fix(emqx_authz_file): throw exception for catch 2022-02-11 17:16:00 +01:00
Ilya Averyanov 5f32d4cbd8 chore(mongo): reduce test flackyness 2022-02-11 15:52:35 +03:00
EMQ-YangM 79badcb403 fix(emqx_retainer): fix function 'create_resource' 2022-02-11 18:36:55 +08:00
EMQ-YangM fae91d72f2 fix(emqx_authz): fix function 'create_resource' 2022-02-11 18:36:55 +08:00
EMQ-YangM 580901b678 fix(emqx_authn): fix create api 2022-02-11 18:36:55 +08:00
EMQ-YangM d8819559f7 fix(emqx_resource): fix emqx_bridge create 2022-02-11 18:36:55 +08:00
EMQ-YangM df57daaabb refactor(emqx_resource): improve grouping strategy for emqx_resource_instance 2022-02-11 18:36:55 +08:00
JianBo He f471214956 feat(metrics): add acl metrics statistics 2022-02-11 15:20:18 +08:00
JianBo He e895de2c5e
Merge branch 'master' into port/slow_subs 2022-02-11 14:37:10 +08:00
zhongwencool 9d5a7ead0c
Merge pull request #6984 from zhongwencool/improve-qos-type
chore(schema): use emqx_schema:qos() instead of union integer.
2022-02-11 12:17:38 +08:00
JianBo He 29af3d4023
Merge pull request #6982 from lafirest/fix/ssl_verify
fix(emqx_exhook): add verify field in the ssl conf
2022-02-11 11:26:27 +08:00
DDDHuang fbefc92178
Merge pull request #6969 from DDDHuang/ws_client_metrics
feat(metrics): ws client support more send&recv metrics
2022-02-11 11:14:56 +08:00
JianBo He 94609e31e4 feat(event): add `connected_at` into client_disconnected event
port from v4.3: https://github.com/emqx/emqx/pull/6822
2022-02-11 11:01:59 +08:00
zhongwencool 372f628c9e
Merge pull request #6980 from thalesmg/bugfix-find-alias-clause-50
fix(channel): wrong case clause when alias is inexistent (5.0)
2022-02-11 10:38:31 +08:00
zhongwencool f5415589e9 chore(schema): use emqx_schema:qos() instead of union integer. 2022-02-11 10:09:59 +08:00
DDDHuang 511060adb4 fix(test): ws conn metrics 2022-02-11 09:38:41 +08:00
DDDHuang 0826084ce9 feat(metrics): ws client support more send&recv metrics 2022-02-11 09:38:41 +08:00
DDDHuang 97e22cc6a8
Merge pull request #6971 from DDDHuang/ab_hocon
fix(api): auto subscribe api hocon support
2022-02-11 09:33:12 +08:00
firest 4063bcea9f fix(emqx_exhook): add verify field in the ssl conf 2022-02-11 06:24:05 +08:00
Thales Macedo Garitezi 609d8a5efa
fix(channel): wrong case clause when alias is inexistent (5.0)
Fixes #6978 .
2022-02-10 16:23:54 -03:00
Chris Hicks ddbb78557a
Merge pull request #6958 from mononym/EMQX-3143-postgre-sql
feat: create tests for connector pgsql module and refactoring
2022-02-10 14:41:10 +01:00
Zaiming (Stone) Shi 91366a71a4 fix: try Expr of only catches exceptions in Expr but not cases clauses 2022-02-10 13:12:22 +01:00
Zaiming (Stone) Shi 7363e6b1fd fix(emqx_conf): fix MFA arity type spec 2022-02-10 12:40:46 +01:00
Zaiming (Stone) Shi 49d3163471 fix(emqx_cluster_rpc): do not log throw stacktrace
also not logging the call arguments as it may containe sensitive info
2022-02-10 12:40:46 +01:00
Zaiming (Stone) Shi a86b684535 fix(emqx_config_handler): do not log throw exception 2022-02-10 12:40:46 +01:00
Zaiming (Stone) Shi 774c0a3d7f chore: remove a space from CLI command cluster_call usage printout 2022-02-10 12:40:46 +01:00
Chris Hicks c456434e38
Merge pull request #6954 from mononym/remove_unused_functions_from_resource_and_connector
refactor: remove unused/old functions
2022-02-10 11:10:20 +01:00
JianBo He 9f648631fe
Merge pull request #6964 from HJianBo/fix_stomp_unexpected_linefeed_for_5
fix(stomp): fix unexpected_linefeed error if the packet truncated on …
2022-02-10 17:52:41 +08:00
Chris 14630568d6 feat: create tests for connector pgsql module and refactoring 2022-02-10 10:40:46 +01:00
firest 361ca5be42 fix(emqx_slow_subs): change rpc call to bpapi 2022-02-10 17:40:19 +08:00
firest b9884de1d0 fix: fix proper test error 2022-02-10 16:09:17 +08:00
DDDHuang 5d17bd8441 fix(api): auto subscribe api hocon support 2022-02-10 15:40:12 +08:00
firest 2fcc24dea6 fix(emqx_slow_subs): fix test case error 2022-02-10 15:16:37 +08:00
lafirest b09683bfcd fix(emqx_slow_subs): fix some errors and test cases 2022-02-10 14:55:19 +08:00
lafirest 0c48bd92db feat: port slow subs from v4.4 2022-02-10 14:51:37 +08:00
JianBo He e2b330e8be fix(stomp): fix unexpected_linefeed error if the packet truncated on headers 2022-02-10 12:26:13 +08:00
DDDHuang 29790a0c1e fix(test): ifdb test SUITE & version compatibility 2022-02-10 10:33:39 +08:00
DDDHuang fbb8f46fcd fix(api): qos shcema & code formate 2022-02-10 10:33:39 +08:00
DDDHuang 471e867bf3 fix(api): rename client info recv_msg.dropped.await_pubrel_timeout 2022-02-10 10:33:25 +08:00
Shawn fd87bce8f7
Merge pull request #6950 from terry-xiaoyu/remove_extra_spaces
fix: format the code to remove extra spaces
2022-02-10 09:35:18 +08:00
Thales Macedo Garitezi e861f3963e
Merge pull request #6947 from thalesmg/fix-mgmt-cluster-print
fix(ctl): fix formatting when printing messages without arguments
2022-02-09 11:50:59 -03:00
Shawn 81edbd232d fix: reformat some code style 2022-02-09 18:57:36 +08:00
Shawn 8207090419 fix: format the code to remove extra spaces 2022-02-09 18:46:49 +08:00
Shawn e6997dc1ce
Merge pull request #6942 from terry-xiaoyu/hook_delivery_drop
Hook delivery drop
2022-02-09 18:28:56 +08:00
Chris c2772fdd09 refactor: remove unused/old functions 2022-02-09 10:14:13 +01:00
zhongwencool 94b0676ac6
Merge pull request #6922 from k32/static-seeds-type
refactor(schema): Refactor cluster_static seeds type
2022-02-09 16:34:30 +08:00
zhongwencool 47b1dde7fd
Merge pull request #6949 from zhongwencool/add-qos-type
feat(schema): support qos type.
2022-02-09 16:13:11 +08:00
Chris Hicks bf4672b863
Merge pull request #6917 from mononym/EMQX-3155-emqx-connector-and-emqx-bridge-test-suites-rely-on-leftover-test-state-from-the-emqx-dashboard-tests
fix: decouple suite tests
2022-02-09 09:03:01 +01:00
Shawn 9118cfb4ad fix(connection): revert metric names for 'recv_msg.dropped.await_pubrel_timeout' 2022-02-09 15:41:28 +08:00
zhongwencool 36cf00108c feat(schema): support qos type. 2022-02-09 15:16:43 +08:00
Yang Miao e9c65447c4
Merge pull request #6863 from EMQ-YangM/fix_hc
fix(emqx_resource_instance): create health_check process when create …
2022-02-09 13:36:34 +08:00
Shawn e220810b90 fix(sn): update calling to session APIs 2022-02-09 12:08:06 +08:00
zhongwencool b2d77cac39 fix(watermark): watermark should use greater than(>), not greater than or equal to(>=). 2022-02-09 11:17:45 +08:00
Shawn ce05c14ef2
Merge pull request #6936 from terry-xiaoyu/empty_rule_id
fix(rule): deny POST empty rule ids
2022-02-09 10:16:27 +08:00
lafirest de75edd176
Merge pull request #6925 from lafirest/fix/flaky-test
fix(emqx_ratelimiter): relax the rate bound of test cases
2022-02-09 10:01:38 +08:00
Thales Macedo Garitezi 152bbe6bb3
refactor: rm unused fn 2022-02-08 18:18:18 -03:00
Thales Macedo Garitezi 01794c2d2c
fix(ctl): fix formatting when printing messages without arguments
Without passing an empty argument list to `emqx_ctl:print`, formatting
instructions like `~n` are being printed literally.

```
Ignore.~nJoin the cluster successfully.~nCluster status: #{running_nodes =>
                      ['emqx@emqx-0.int.thalesmg','emqx@emqx-1.int.thalesmg',
                       'emqx@emqx-2.int.thalesmg','emqx@emqx-3.int.thalesmg',
                       'emqx@emqx-4.int.thalesmg'],
                  stopped_nodes => []}
```
2022-02-08 17:48:19 -03:00
Chris d0b0b05aa4 fix: decouple suite tests 2022-02-08 14:53:01 +01:00
Shawn b69dca4f08 feat(rule): add testcase for '/delivery_dropped' 2022-02-08 20:37:40 +08:00
k32 5a1b18ae86 fix(system_monitor): Fix conditional start 2022-02-08 12:46:27 +01:00
Shawn 707284db31 fix(session): update calling to session APIs 2022-02-08 18:49:38 +08:00
Shawn 93092657b9 fix(session): update testcases 2022-02-08 18:33:06 +08:00
zhongwencool 3b4eade1ad
Merge pull request #6900 from zhongwencool/restricted-shell
feat(shell): add restricted shell and user_default
2022-02-08 17:25:28 +08:00
Shawn 2879001694 fix(metrics): rename metrics 'messages.dropped.expired' to 'messages.dropped.await_pubrel_timeout' 2022-02-08 17:14:59 +08:00
Shawn 06168f7080 refactor(session): pass ClientInfo as first params to APIs of emqx_session 2022-02-08 16:52:47 +08:00
zhongwencool f3fa302d84 chore: print only the port number when bound on all interfaces. 2022-02-08 15:25:22 +08:00
zhongwencool 5f2618912f chore(format): format port by ts 2022-02-08 11:03:54 +08:00
zhongwencool 00fe866392 chore(test): add restricted_shell CT test. 2022-02-08 10:49:11 +08:00
Shawn b2f027bcf7 feat(rule): add 'delivery.dropped' hook for rules 2022-02-08 10:32:25 +08:00
zhongwencool b50ceac9bb chore(listener): change the listener binding format 0.0.0.0:port to :port. 2022-02-08 10:28:10 +08:00
Shawn 261e9929b6 fix(rule): deny POST empty rule ids 2022-02-08 09:57:44 +08:00
Ilya Averyanov 17599432d1 feat(license): add license application 2022-02-07 19:05:47 +03:00
k32 9c5d35e0db chore(ekka): Bump version to 0.12.0 2022-02-07 14:39:43 +01:00
k32 78c762479f feat(router): Mark CM_SHARD and ROUTE_SHARD as dirty 2022-02-07 12:38:59 +01:00
k32 dbe1282d32 chore(mria): Bump version to 0.2.0 2022-02-07 12:37:13 +01:00
EMQ-YangM 3b3f3fed76 refactor(emqx_resource_instance): add function create_default_checker 2022-02-07 17:49:51 +08:00
EMQ-YangM 8976e25b7a fix(emqx_resource_instance): create health_check process when create resources synchronously 2022-02-07 17:49:51 +08:00
zhongwencool f24c05b1bd chore(shell): make restricted_shell prompt more friendly. 2022-02-07 15:33:59 +08:00
zhongwencool b189d594c3 chore: fix dialyzer warning. 2022-02-07 15:33:59 +08:00
zhongwencool 3efa583830 feat(shell): add emqx version to prompt. 2022-02-07 15:33:59 +08:00
zhongwencool 6a701e098f feat(shell): add restricted shell and user_default 2022-02-07 15:33:59 +08:00
lafirest 467bb830b1 fix(emqx_ratelimiter): relax the rate bound of test cases 2022-02-07 13:57:48 +08:00
k32 f699de9773 feat(system_monitor): Bump version to 3.0.0 2022-02-07 02:22:11 +01:00
k32 987945def3 refactor(schema): Refactor cluster_static seeds type 2022-02-04 23:37:59 +01:00
k32 a54b4ddfd0 fix(emqx_schema): Set gen_rpc_client_driver automatically 2022-02-02 13:58:27 +01:00
k32 3050f86f09
Merge pull request #6906 from k32/gen-rpc-docs
Gen rpc docs
2022-02-01 13:50:03 +01:00
k32 470db453cb docs(rpc): Add descriptions for gen_rpc and logger 2022-02-01 01:16:07 +01:00
Zaiming (Stone) Shi 507952c473 feat: dump schema json file to dashbarod static dir 2022-01-31 16:38:41 +01:00
Zaiming (Stone) Shi fe24892b6d fix(emqx_limiter): no white space in schema map name 2022-01-31 16:04:37 +01:00
Zaiming (Stone) Shi f7703c906e refactor: move plain_check impl to emqx_hocon 2022-01-29 10:16:55 +01:00
zhongwencool 92cbf86951
Merge pull request #6890 from zhongwencool/dashboard-bind-support-ip
feat(dashboard): support bind specific ip(port or ip:port).
2022-01-29 16:09:05 +08:00
zhongwencool 928555546d
Merge pull request #6869 from EMQ-YangM/fix_start_pool
fix(emqx_connector): when start_pool fails, return error and reason
2022-01-29 10:45:45 +08:00
zhongwencool 8041524d20 chore(dashboard): warning wehn stop dashboard listener not found. 2022-01-29 10:36:53 +08:00
k32 5e01961dba
Merge pull request #6895 from k32/fix-graph
fix(emqx_mgmt): Fix network graph
2022-01-28 15:43:55 +01:00
k32 1127057291 fix(emqx_mgmt): Fix network graph 2022-01-28 13:39:27 +01:00
Zaiming (Stone) Shi bda1b6d35e
Merge pull request #6892 from zmstone/docs-fix-override-conf-note
docs: fix override conf note
2022-01-28 12:35:23 +01:00
Zaiming (Stone) Shi 8da27899ea docs: fix override conf note 2022-01-28 11:05:06 +01:00
zhongwencool ec5d1b1463 feat(dashboard): support bind specific ip(port or ip:port). 2022-01-28 16:52:03 +08:00
k32 052bd9081d docs(schema): Fix typos in the schema files 2022-01-27 22:39:19 +01:00
k32 4fe87b5e32 docs(emqx_conf): Fix spelling 2022-01-27 22:32:53 +01:00
Zaiming (Stone) Shi 0cde9e6ecf
Merge pull request #6878 from zmstone/slog-ftw
refactor: delete deprecated logging macros
2022-01-27 16:15:47 +01:00
Zaiming (Stone) Shi d6f7ffec3c
Merge pull request #6881 from zmstone/refactor-upgrade-hocon-0.23.0
refactor: upgrade to hocon 0.23.0
2022-01-27 15:48:23 +01:00
zhongwencool c049e296d4
Merge pull request #6852 from zhongwencool/fix-keepalive-init
fix(keepalive): keepalive desc improvement.
2022-01-27 22:41:10 +08:00
Zaiming (Stone) Shi 815c47e169 test: call logger apis directly 2022-01-27 15:19:50 +01:00
Thales Macedo Garitezi bd0d331b64
Merge pull request #6636 from emqx/elixir-packages-mkII
ci(mix): build emqx packages with elixir
2022-01-27 11:10:30 -03:00
k32 8378f52d06
Merge pull request #6882 from kianmeng/fix-typos
(docs): fix typos
2022-01-27 13:25:44 +01:00
Kian-Meng Ang fc92e4c8bf docs: fix typos 2022-01-27 12:29:38 +01:00
zhongwencool a7676d0163 fix(doc): Update the documentation/keepalive according to the review. 2022-01-27 18:57:35 +08:00
Zaiming (Stone) Shi 6bf5f2c426 test: fix old hocon API calls 2022-01-27 08:21:31 +01:00
zhongwencool 3ce3c5c805 fix(doc): Update the documentation according to the review 2022-01-27 10:54:11 +08:00
Zaiming (Stone) Shi cf1f19258e refactor(emqx_resource): catch only hocon throw exceptions 2022-01-27 00:23:08 +01:00
Zaiming (Stone) Shi 252d7e85d9 refactor: call new hocon apis 2022-01-27 00:23:08 +01:00
Zaiming (Stone) Shi 8c114db168 chore: pin hocon 0.23.0 2022-01-27 00:23:08 +01:00
Zaiming (Stone) Shi 1718360156 refactor: delete deprecated logging macros 2022-01-26 23:25:11 +01:00
Zaiming (Stone) Shi 586ecaf031 refactor(exhook): log with ?SLOG macro 2022-01-26 22:29:06 +01:00
Zaiming (Stone) Shi 9946f2ecf4 refactor: remove dollar sign from config fields 2022-01-26 22:19:01 +01:00
Thales Macedo Garitezi d6a9a73431
Merge pull request #6874 from emqx/bump-ekka-0-11-3
chore(ekka): update ekka -> 0.11.3
2022-01-26 17:06:56 -03:00
Thales Macedo Garitezi 12f1757328
chore(mix): fix include path for mix 2022-01-26 16:59:50 -03:00
Ilya Averyanov 5ed27f92b7
Merge pull request #6855 from savonarola/ph-interpolation
refactor(authn,authz): unify variable interpolation
2022-01-26 21:01:11 +03:00
Thales Macedo Garitezi f34e87daeb
chore(ekka): update ekka -> 0.11.3
This ekka tag contains the core node discovery callback feature.
2022-01-26 14:19:39 -03:00
Zaiming (Stone) Shi b9e507110c build: add EMQX_ENTERPRISE compile flag 2022-01-26 14:25:59 +01:00
Zaiming (Stone) Shi 391e480824 build: parameterise package version
so that community and enterprise edition can be built from the
same branch
2022-01-26 14:25:59 +01:00
k32 6f8aa016c3 test(bapapi): Print errors to the console 2022-01-26 11:59:32 +01:00
k32 bdc6d18589 feat(bpapi): Version negotiation 2022-01-26 11:59:21 +01:00
zhongwencool abc0a3526e fix(keepalive): keepalive init with right recv_oct 2022-01-26 18:27:15 +08:00
zhongwencool e458d4790c chore(docs): update mqtt schema desc 2022-01-26 16:38:24 +08:00
EMQ-YangM e9f3fa7b6b fix(emqx_connector): when start_pool fails, return error and reason 2022-01-26 16:07:46 +08:00
lafirest 2522a36b0c
Merge pull request #6862 from lafirest/fix/coap
fix(emqx_coap): handle invalid query string in parse
2022-01-26 14:30:50 +08:00
lafirest d422afdf0d
Merge pull request #6864 from lafirest/fix/ignore_auto_sub
fix(emqx_coap): ignore auto subscribe
2022-01-26 13:38:29 +08:00
zhongwencool 53b707b9f8
Merge pull request #6845 from zmstone/refactor-config-3-layers
Refactor config 3 layers
2022-01-26 11:28:10 +08:00
firest 97c18bb0f2 fix(emqx_coap): ignore auto subscribe 2022-01-26 11:25:24 +08:00
firest a544f162c9 fix(emqx_coap): handle invalid query string in parse 2022-01-26 11:08:12 +08:00
Yang Miao 2ea4c1c7ef
Merge pull request #6816 from EMQ-YangM/moreReason
fix(emqx_plugin_libs_pool): throw error with Reason
2022-01-26 10:42:49 +08:00
JimMoen 05d6c40717
Merge pull request #6848 from JimMoen/refactor-api
refactor api swagger spec via hoconsc
2022-01-26 09:49:23 +08:00
Ilya Averyanov 6441978b08 refactor(authn,authz): unify variable interpolation 2022-01-25 20:54:12 +03:00
Shawn 6affac0fe9
Merge pull request #6780 from EMQ-YangM/moreTest
test(emqx_resource): improve emqx_resource test coverage from 73% to 80%
2022-01-25 19:10:28 +08:00
Zaiming (Stone) Shi 2105d1f22b test: call ct helpers to load config 2022-01-25 11:50:18 +01:00
EMQ-YangM 8cfbdc2730 test(emqx_resource): improve emqx_resource test coverage to 80% 2022-01-25 17:59:29 +08:00
Zaiming (Stone) Shi 2a01c7a077 test: ensure clean config for retainer test 2022-01-25 10:42:19 +01:00
JimMoen 4e9e95c317 fix(swagger): spec remove needless description, fix property name 2022-01-25 15:52:13 +08:00
Zaiming (Stone) Shi bf7ac80a83 feat: add api to delete override conf files
used in tests
2022-01-25 08:29:04 +01:00
EMQ-YangM d312f315ac test(emqx_resource_health_check): add more test to
health_check_timeout_checker
2022-01-25 15:07:54 +08:00
EMQ-YangM cb9f14f658 feat(emqx_resource_health_check): add timeout params to health_check_timeout_checker 2022-01-25 14:54:40 +08:00
EMQ-YangM 127384a9ae test(emqx_resource_SUITE): add more test 2022-01-25 14:39:35 +08:00
JimMoen d3381710cd refactor(api): mgmt_status (node running status) swagger spec 2022-01-25 12:22:26 +08:00
JimMoen 8eb7bf261c refactor(api): mgmt_stats (node internal stats) swagger spec 2022-01-25 12:22:26 +08:00
DDDHuang e07ecd5211 fix(api): client subscriptions formatter fun bad match 2022-01-25 11:18:01 +08:00
DDDHuang 6b020b4a01 fix(api): query client subscriptions from cluster empty check 2022-01-25 10:56:56 +08:00
Zaiming (Stone) Shi 21183f3b16 docs: fix authz config doc 2022-01-24 13:30:42 +01:00
Zaiming (Stone) Shi f1937e261c refactor(emqx_config): apply cluster|local overrides on top of base 2022-01-24 13:30:42 +01:00
EMQ-YangM 11f76db67d fix(emqx_resource_validator): remove unused code 2022-01-24 16:11:32 +08:00
EMQ-YangM 40b73fb199 fix(emqx_resource_api): remove unused module 2022-01-24 16:11:32 +08:00
Yang Miao a3e3f2216c
Merge pull request #6793 from EMQ-YangM/health_check_timeout
feat(emqx_resource_health_check): add timeout to single health_check
2022-01-24 16:07:43 +08:00
lafirest 232d67f0c0
Merge pull request #6825 from lafirest/fix/exhook_cover
fix(emqx_exhook): improve test coverage of the emqx_exhook
2022-01-24 15:34:40 +08:00
Yang Miao b528862c67
Merge branch 'master' into health_check_timeout 2022-01-24 14:48:55 +08:00
EMQ-YangM c870a2c78c test(emqx_resource_health_check): add async_create to create_local 2022-01-24 14:24:31 +08:00
lafirest 2327302c28 fix(emqx_exhook): improve test coverage of the emqx_exhook 2022-01-24 12:20:00 +08:00
EMQ-YangM 8506bed489 fix(emqx_resource_health_check): link heath_check, health_check_timeout_checker 2022-01-24 10:18:18 +08:00
JimMoen 8046f3de6f
Merge pull request #6826 from JimMoen/refactor-event-message-api
refactor(api): event_message swagger spec
2022-01-24 09:43:55 +08:00
Ilya Averyanov 7c5e638732
Merge pull request #6832 from savonarola/fix-resource-leakage
fix(emqx_resource): fix resource leakage
2022-01-22 01:03:40 +03:00
Ilya Averyanov acc4ad0542 fix(emqx_resource): fix resource leakage 2022-01-21 22:50:30 +03:00
k32 ffa857ccd9
Merge pull request #6829 from k32/bpapi-lockdown
ci(bpapi): Fail static check on BPAPI violations
2022-01-21 16:08:17 +01:00
k32 d90566be5c ci(bpapi): Fail static check on BPAPI violations 2022-01-21 13:55:09 +01:00
k32 f67278b13d
Merge pull request #6815 from k32/bpapi-gateway
Bpapi gateway
2022-01-21 13:18:21 +01:00
firest 1d832c3026 fix(emqx_exhook): improve test coverage of the emqx_exhook_metrics 2022-01-21 18:05:01 +08:00
JimMoen f30c16e47c refactor(schema): description use binary 2022-01-21 17:52:57 +08:00
JimMoen ab94b49762 refactor(api): event_message swagger spec 2022-01-21 17:45:53 +08:00
k32 c4cb9973a6 fix(emqx_gateway): Apply remarks 2022-01-21 10:42:55 +01:00
JimMoen 1a0862913e refactor(api): swagger api tag `mqtt` 2022-01-21 17:26:54 +08:00
firest a28d1efd39 fix(emqx_exhook): improve test coverage of the emqx_exhook_mgr 2022-01-21 16:12:21 +08:00
JimMoen b950042cbf refactor(api): prometheus swagger spec 2022-01-21 14:09:42 +08:00
DDDHuang baa56a3416
Merge pull request #6813 from DDDHuang/up_minirest
fix(minirest): app version to 1.2.10 support string desc in api spec
2022-01-21 10:40:53 +08:00
DDDHuang e2ba0fc4ae fix(minirest): app version to 1.2.10 support string desc in api spec 2022-01-21 09:41:13 +08:00
DDDHuang 5001852c6f
Merge pull request #6812 from DDDHuang/bad_spec
fix(api): emqx mgmt api clients bad schema
2022-01-21 09:39:45 +08:00
k32 925654978e refactor(emqx_gateway): Reuse emqx_gateway_cm APIs 2022-01-20 19:16:30 +01:00
k32 706d9a899a fix(emqx_gateway_cm): Fix channel ID in set_chan_stats 2022-01-20 18:12:50 +01:00
k32 ab8ab21383 refactor(emqx_gateway): Decorate RPCs 2022-01-20 18:12:50 +01:00
k32 9fad296385
Merge pull request #6809 from k32/bpapi-resource
refactor(emqx_resource): Decorate RPCs
2022-01-20 12:54:46 +01:00
EMQ-YangM 78ca7f2521 fix(emqx_plugin_libs_pool): throw error with Reason 2022-01-20 17:54:18 +08:00
DDDHuang 42580ab298 fix(api): emqx_mgmt_api_clients bad schema 2022-01-20 16:32:02 +08:00
JimMoen f969bc2631
Merge pull request #6802 from JimMoen/refactor-statsd-api
refactor(api): statsd api swagger spec
2022-01-20 15:10:17 +08:00
JimMoen 824e7c4662 refactor(api): statsd api swagger spec 2022-01-20 13:51:20 +08:00
JimMoen e97e7f6fdd
Merge pull request #6762 from JimMoen/refactor-topic-metrics-api
refactor(api): topic_metrics api swagger spec
2022-01-20 13:48:58 +08:00
zhongwencool 5bbe2ec1c6
Merge pull request #6766 from zhongwencool/fix-trace-api-return
fix(trace): create_trace return new trace; delete_trace return 204
2022-01-20 10:41:45 +08:00
JimMoen 31edd49f76 fix(topic_metrics): `POST` `PUT` need response 2022-01-20 10:15:06 +08:00
JimMoen f5cfefc0a5 refactor(api): topic_metrics api swagger spec 2022-01-20 10:15:06 +08:00
k32 c2e5dfae97 fix(bpapi): Ignore emqx_plugin_libs_rule:cluster_call/3 function 2022-01-19 22:00:34 +01:00
k32 542c9a2b68 refactor(emqx_resource): Decorate RPCs 2022-01-19 22:00:34 +01:00
k32 177c9c7f77 fix(bpapi): Ignore pmap for now 2022-01-19 19:09:55 +01:00
k32 7061e6eefe refactor(emqx_exhook): Decorate RPCs 2022-01-19 18:18:20 +01:00
k32 ded45b161a test(emqx_cm_SUITE): Fix flaky test 2022-01-19 16:48:53 +01:00
k32 a469c466a6 test(emqx_mgmt): Exempt do_query function from BPAPI static check 2022-01-19 16:48:53 +01:00
k32 97078002f2 refactor(emqx_cm): Decorate RPCs 2022-01-19 16:48:53 +01:00
k32 5a9f289f1c
Merge pull request #6801 from k32/bpapi-mgmt3
refactor(emqx_mgmt): Decorate get_full_config RPC
2022-01-19 14:42:20 +01:00
k32 80e8790482
Merge pull request #6799 from k32/bpapi-fix-format
fix(emqx_mgmt): Fix formatting of client stats
2022-01-19 14:32:10 +01:00
k32 6940a41743 refactor(emqx_mgmt): Decorate get_full_config RPC 2022-01-19 13:25:50 +01:00
k32 da8b424ff2 fix(emqx_mgmt): Fix formatting of client stats
Fixes: #6798
2022-01-19 12:04:14 +01:00
EMQ-YangM fd7e0c800a feat(emqx_resource_health_check): add timeout to single health_check 2022-01-19 16:45:56 +08:00
DDDHuang e7dd401de9
Merge pull request #6776 from DDDHuang/client_metrics_5x
feat(metrics): client metrics with more detail
2022-01-19 13:36:57 +08:00
DDDHuang 3a80baa087 fix(api): clients api docs 2022-01-19 10:21:09 +08:00
k32 36f10e929d test(lwm2m): Fix flaky test 2022-01-18 17:36:10 +01:00
k32 4e9fb00a0e refactor(mgmt_trace): Decorate RPCs 2022-01-18 16:46:32 +01:00
k32 6e3b05d665 refactor(emqx_plugin): Decorate RPCs 2022-01-18 15:25:34 +01:00
k32 39766d0ab4 refactor(emqx_bridge): Decorate remote procedure calls 2022-01-18 15:25:34 +01:00
k32 e969eff702 fix(emqx_conf): Fix type 2022-01-18 15:25:34 +01:00
k32 fbd7b132ca docs(bpapi): Clarify deprecation procedure 2022-01-18 15:25:34 +01:00
k32 2ccf02cea9 refactor(emqx_mgmt): Decorate RPCs 2022-01-18 14:07:02 +01:00
DDDHuang 98e7ce7b7c fix(test): for paho qos3 2022-01-18 18:06:47 +08:00
JianBo He e1933261c8 chore: remove the pool_size maximum limit 2022-01-18 14:22:23 +08:00
lafirest 6d87db80c1
Merge pull request #6772 from lafirest/fix/exhook_lint
fix(exhook): fix some lint error
2022-01-18 11:41:43 +08:00
DDDHuang f87f80f6e4 feat(metrics): client metrics with more detail 2022-01-18 11:28:41 +08:00
lafirest 967772c7fc fix(emqx_exhook): remove obsolete code 2022-01-18 10:56:45 +08:00
lafirest d4fb98f347 fix(exhook): fix some lint error 2022-01-18 10:47:55 +08:00
lafirest 8f9ecf3e90
Merge pull request #6700 from lafirest/feat/exhook_metrics
feat(emqx_exhooks): add metrics
2022-01-18 09:53:11 +08:00
zhongwencool 75ad2ba65c fix(trace): create_trace return new trace; delete_trace return 204 2022-01-18 09:34:36 +08:00
k32 52441c92fa
Merge pull request #6758 from k32/bpapi-mgmt
refactor(emqx_mgmt): Decorate RPCs
2022-01-17 11:12:02 +01:00
lafirest 86af3a9b8f fix(emqx_exhook): fix some error of indent and dialyzer 2022-01-17 17:16:58 +08:00
lafirest 9a6a8a778b feat(emqx_exhook): add metrics 2022-01-17 16:04:15 +08:00
Shawn 8cee9a9e47 fix(rule): compare to null variables should return false 2022-01-17 14:17:49 +08:00
k32 428eeeffc0 refactor(emqx_cm): Move lookup_client/1 to emqx_cm 2022-01-14 16:45:14 +01:00
k32 288f9254ba refactor(emqx_mgmt): Decorate RPCs 2022-01-14 15:41:10 +01:00
zhongwencool 03a135c592
Merge pull request #6708 from zhongwencool/improve-error-log
Improve authn/authz error log when query failed.
2022-01-14 16:31:59 +08:00
zhongwencool 8b31466538 chore(trace): replace trace_filter by is_trace 2022-01-14 15:33:43 +08:00
zhongwencool 5a31001906
Merge pull request #6749 from zhongwencool/fix-authz-headers
fix(authz): Remove unnecessary headers
2022-01-14 15:15:12 +08:00
zhongwencool 681ab6b754 fix(review): refactor function name base on review sugguestion 2022-01-14 15:00:05 +08:00
zhongwencool 9727eb514d feat(trace): improve debug msg format 2022-01-14 15:00:05 +08:00
zhongwencool dc6c49d7f5 chore(trace): always ?SLOG when ?TRACE 2022-01-14 15:00:05 +08:00
zhongwencool 1cfab9fed5 chore(log): add more detail log for authz/authn query error 2022-01-14 15:00:02 +08:00
JianBo He 8d5e0bbeb7
Merge pull request #6650 from HJianBo/gw-review-r5 2022-01-14 14:46:30 +08:00
zhongwencool c9603bd21e fix(authz): Remove unnecessary headers 2022-01-14 14:11:49 +08:00
Shawn 6572785907
Merge pull request #6712 from tigercl/fix/pgsql
fix: fix errors caused by concurrent parsing of sql
2022-01-14 13:37:47 +08:00
JianBo He c8088f18d9 chore(gw): fix dialyzer warnings 2022-01-14 10:56:19 +08:00
JianBo He 43284768d0 chore(gw): more code coverage for emqx_gateway_conn module 2022-01-14 10:48:56 +08:00
JianBo He cce0b1ca34 fix(stomp): fix the sticky tcp stream parsing 2022-01-14 10:48:56 +08:00
JianBo He 44ea853059 test(gw): more coverage for emqx_gateway_cm 2022-01-14 10:48:56 +08:00
JianBo He 4ce11fec6e fix(stomp): fix parsing rear frame split byte crash 2022-01-14 10:48:56 +08:00
JianBo He e9e559ccd0 test: more code coverage for emqx_gateway_api_clients 2022-01-14 10:48:56 +08:00
JianBo He 3caf0822c4 test(gw): more testcases for emqx_gateway_metrics 2022-01-14 10:48:56 +08:00
JianBo He a829b0b9d0 test(gw): more testcases for emqx_gateway module 2022-01-14 10:48:56 +08:00
JianBo He 056e284bc2 test(gw): more testcases for emqx_gateway_cm_registry 2022-01-14 10:48:56 +08:00
JianBo He 0e011ec4b8 test(gw): more testcases for emqx_gateway_cli module 2022-01-14 10:48:56 +08:00
JianBo He 79a653e2b4 refactor(gw): more readable CLI print 2022-01-14 10:48:56 +08:00
JimMoen d8f49f8a5f
Merge pull request #6732 from JimMoen/telemetry-api-refactor
refactor(api): telemetry api swagger spec
2022-01-14 09:36:54 +08:00
zhouzb c59d9798a4 test: fix test case 2022-01-14 09:26:15 +08:00
k32 aed010da05
Merge pull request #6744 from k32/bpapi-fix-warns
fix(bpapi): Move static checks to test directory
2022-01-13 21:56:57 +01:00
k32 aa54c6135b fix(bpapi): Move static checks to test directory 2022-01-13 20:58:33 +01:00
k32 6207e93e93 refactor(dashboard): Decorate remote procedure calls 2022-01-13 13:14:59 +01:00
k32 5a8f0db0e6 refactor(emqx_prometheus): Decorate remote procedure calls 2022-01-13 13:14:59 +01:00
k32 d84a3fe291 refactor(emqx_conf): Decorate get_override_config_file 2022-01-13 11:38:27 +01:00
k32 727dec14c7
Merge pull request #6727 from k32/bpapi-topic-metrics
refactor(emqx_topic_metrics): Decorate remote procedure calls
2022-01-13 10:15:02 +01:00
zhouzb 5e2bc7853f test: fix test cases for pgsql authz 2022-01-13 16:53:47 +08:00
JimMoen 8c9d98b583 chore: LICENSE Copyright reserved 2022-01-13 16:40:08 +08:00
JimMoen 2939803215 refactor(api): telemetry api swagger spec 2022-01-13 15:53:47 +08:00
JimMoen 82e3565344 chore: major mode file variable for Emacs 2022-01-13 15:53:47 +08:00
zhouzb 683d1c3412 test: fix test cases 2022-01-13 14:27:36 +08:00
zhouzb e2676bcbd8 fix: fix dep of epgsql 2022-01-13 11:39:48 +08:00
zhouzb 452f6e766a fix: return error when parse failed 2022-01-13 11:15:08 +08:00
zhouzb a4f2a9c51d fix: fix dependency of epgsql 2022-01-13 10:40:22 +08:00
zhouzb 559a23c50f chore: update tag of epgsql 2022-01-13 10:15:12 +08:00
k32 8570df075c refactor(emqx_telemetry): Decorate remote procedure calls 2022-01-13 00:35:49 +01:00
k32 e513583e70 refactor(emqx_topic_metrics): Decorate remote procedure calls 2022-01-13 00:11:45 +01:00
k32 64d594d1df
Merge pull request #6705 from k32/bpapi-conf
refactor(emqx_conf): Decorate remote procedure calls
2022-01-12 22:32:35 +01:00
k32 1e795759ce docs(bpapi): Add README 2022-01-12 21:36:24 +01:00
k32 48366a80c8 refactor(emqx_conf): Decorate cluster RPCs 2022-01-12 21:28:24 +01:00
Zaiming (Stone) Shi cc2ae5ed71
Merge pull request #6624 from HJianBo/fix-conf-name-prefix
Remove `emqx_` prefix for some config scopes
2022-01-12 20:36:52 +01:00
k32 784ca5bf24 fix(emqx_map_lib): Fix underspec 2022-01-12 16:20:13 +01:00
k32 d25258943b feat(bpapi): Verify emqx cluster RPC 2022-01-12 16:19:46 +01:00
Zaiming (Stone) Shi 641fe64d00 docs: ensure authn schema ns for password-hash structs 2022-01-12 15:48:30 +01:00
k32 04bac16741 fix(bpapi): Use argument types from the spec 2022-01-12 15:40:21 +01:00
k32 7b65684c45 refactor(emqx_conf): Decorate remote procedure calls 2022-01-12 15:40:21 +01:00
JianBo He 6e0a248555 chore: add namespace for _schema.erl module 2022-01-12 15:01:00 +01:00
Shawn 552ea7d2fc
Merge pull request #6696 from terry-xiaoyu/rule_metrics2
Improve rule metrics
2022-01-12 14:53:09 +08:00
JianBo He b1959086d9 chore: fix elvis warnings 2022-01-12 13:51:37 +08:00
JianBo He 12cc9065f8 chore(limiter): change root name emqx_limiter > limiter 2022-01-12 13:51:37 +08:00
JianBo He 10b110447c chore(exhook): change root name emqx_exhook > exhook 2022-01-12 13:51:37 +08:00
JianBo He af2868e598 chore(dashboard): change root name emqx_dashboard > dashboard 2022-01-12 13:51:34 +08:00
zhouzb 2eb7346229 chore: update tag of epgsql 2022-01-12 13:49:26 +08:00
k32 cad4eff283 refactor(persistent_session): Decorate API calls 2022-01-11 14:28:29 +01:00
k32 6a1ada8623
Merge pull request #6691 from k32/bpapi-run-check
test(bpapi): Run static checks in CI
2022-01-11 13:25:06 +01:00
k32 26f4b2495b test(bpapi): Run verification in CI 2022-01-11 11:26:35 +01:00
JianBo He 6bb919b65c chore(retainer): change root name emqx_retainer > retainer 2022-01-11 15:30:42 +08:00
JianBo He 9a03869bd7 chore(slow-subs): change root name emqx_slow_subs > slow_subs 2022-01-11 15:30:42 +08:00
JianBo He 19dd5a7c97
Merge pull request #6661 from HJianBo/fix-client-fuzzy-matching-for-5
chore: client searching support \[]()* chars
2022-01-11 15:03:44 +08:00
Shawn 2a2a00e0ad fix(rule): remove rules from all nodes in the cluster 2022-01-11 14:44:08 +08:00
zhouzb ac631110cb chore: remove useless field 2022-01-11 10:05:11 +08:00
zhouzb 2791052135 fix: fix errors caused by concurrent parsing of sql 2022-01-11 09:39:56 +08:00
k32 13f0b12b45
Merge pull request #6689 from k32/bpapi-telemetry
fix(emqx_telemetry): Decorate RPC calls
2022-01-10 22:35:18 +01:00
k32 a9673d7d2d fix(emqx_telemetry): Decorate RPC calls 2022-01-10 18:43:44 +01:00
k32 c154c8ae0c
Merge pull request #6686 from k32/bpapi-statsd
fix(emqx_statsd): Decorate RPC calls
2022-01-10 18:38:05 +01:00
k32 3d26592e72 fix(emqx_statsd): Decorate RPC calls 2022-01-10 11:58:00 +01:00
zhongwencool 31d68bfba9
Merge pull request #6684 from zhongwencool/rename-mgmt-ct
chore(test): rename mgmt_xxx_api_SUITE to mgmt_api_xxx_SUITE
2022-01-10 17:17:10 +08:00
zhongwencool 81abf31bc4 chore(test): rename mgmt_xxx_api_SUITE to mgmt_api_xxx_SUITE 2022-01-10 15:52:00 +08:00
zhouzb 76695c9652 test: update epgsql branch to test 2022-01-10 15:00:08 +08:00
JianBo He fcc0d4a2e4 chore: client searching support \[]()* chars 2022-01-10 09:07:53 +08:00
k32 f4bf749134
Merge pull request #6679 from k32/bpapi-emqx
refactor(emqx): Decorate remote procedure calls
2022-01-07 19:52:45 +01:00
k32 9602ce0250
Merge pull request #6678 from k32/broker-bpapi
refactor(emqx_broker): Decorate remote procedure calls
2022-01-07 16:23:12 +01:00
k32 8c72eeb8d1 refactor(emqx): Decorate remote procedure calls 2022-01-07 12:59:10 +01:00
k32 1754afdab0 refactor(emqx_broker): Decorate remote procedure calls 2022-01-07 12:07:29 +01:00
k32 de89f7b253 fix(emqx_rpc): Add types and remove impossible clauses 2022-01-07 12:06:41 +01:00
k32 2307040bec fix(bpapi): Add more static checks exceptions 2022-01-07 10:57:53 +01:00
zhongwencool 6ea51692c3
Merge pull request #6672 from zhongwencool/return-ok-when-trace-not-found
fix: delete error log when file enoent.
2022-01-07 15:36:03 +08:00
zhongwencool 0ec111d4e0 fix(test): flaky emqx_connector_api_SUITE test case. 2022-01-07 14:45:47 +08:00
Shawn 7dcb9567e7 fix(bridge): get bridges from all nodes crash 2022-01-07 14:34:59 +08:00
zhongwencool 977b1bb7ec chore(test): add snabbkaffe for create_trace test 2022-01-07 11:08:40 +08:00
zhongwencool 07ba4ad05e fix: delete error log when file enoent.
delete emqx_trace_api, replace LOG by SLOG
2022-01-07 10:24:26 +08:00
zhouzb 821b50a961 test(mongo): add test case for w_mode option 2022-01-07 09:52:15 +08:00
zhouzb c33eb84cb6 fix(mongo): add r_mode and w_mode options 2022-01-07 09:52:15 +08:00
Shawn 72d55c8c0d fix(rules): improve the names of the metrics 2022-01-07 09:35:00 +08:00
Shawn 67a60e1153 refactor(rule): add more metrics for rule and bridges 2022-01-07 09:34:54 +08:00
Shawn 78aa0abd3d fix(metrics): update the calls to emqx_plugin_libs_metrcis module 2022-01-07 09:34:48 +08:00
Shawn ab5ad22b1d fix(metrics): update the calls to emqx_plugin_libs_metrcis module 2022-01-07 09:34:41 +08:00
Shawn c1212c4b6d refactor(metrics): improve the metrics for bridges/rules 2022-01-07 09:34:31 +08:00
Thales Macedo Garitezi 80a06c7201
Merge pull request #6654 from emqx/fix-unknown-calls
fix: rm unknown call (`ct:pal`)
2022-01-06 14:12:53 -03:00
Thales Macedo Garitezi 9059f2005a
fix(elixir): put Patch in version and add missing deps
Elixir requires that we use version of the form `Major.Minor.Patch`.
Also, Mix requires dependecies to be declared in `rebar.config` so it
can include the header files correctly.
2022-01-06 10:54:45 -03:00
Zaiming (Stone) Shi e9fb999236
Merge pull request #6667 from zmstone/chore-fix-copyright-update-script
chore: fix copyright update script to include more files
2022-01-06 13:45:24 +01:00
zhongwencool 3bdfa183f3
Merge pull request #6666 from JimMoen/merge-5.0-beta.3-to-master
Merge 5.0 beta.3 to master
2022-01-06 18:20:30 +08:00
Zaiming (Stone) Shi 9f7b513a3f chore: fix copyright update script to include more files 2022-01-06 08:44:35 +01:00
JimMoen 552165db26 test(authz): fix test suite based on release-5.0-beta.3 2022-01-06 15:05:52 +08:00
JimMoen 9a115b99a4 Merge remote-tracking branch 'emqx/release-5.0-beta.3' into merge-5.0-beta.3-to-master 2022-01-06 14:08:45 +08:00
Zaiming (Stone) Shi 67ba3a06ea chore(gateway): update copyright 2022-01-05 20:55:00 +01:00
Zaiming (Stone) Shi 63167cea70 chore: update copyright 2022-01-05 20:55:00 +01:00
zhouzb f4ed3ccdd7 chore(release): update emqx release version 2022-01-05 23:30:06 +08:00
k32 b6efa2aa9c
Merge pull request #6629 from k32/bpapi
feat(bpapi): Add backplane API static checks
2022-01-05 15:26:11 +01:00
zhongwencool f4f5281b16 fix: authz headers default value 2022-01-05 22:06:50 +08:00
Thales Macedo Garitezi c882b08b08
fix: rm unknown call (`ct:pal`) 2022-01-05 10:37:45 -03:00
k32 22bdcfa4b5 fix(bpapi): Apply remarks 2022-01-05 14:37:26 +01:00
zhongwencool d3d240e8d5 fix: revert hocon to 0.22.1 2022-01-05 19:50:11 +08:00
k32 9c675194f5 fix(bpapi): Fix dialyzer warnings 2022-01-05 12:10:48 +01:00
zhongwencool 7e48a4e6f5 fix: authz default should be a map 2022-01-05 19:04:51 +08:00
DDDHuang d39fafbed2
Merge pull request #6651 from DDDHuang/fix_update3
fix(prometheus): restart error
2022-01-05 17:37:50 +08:00
DDDHuang 4588ace79f fix(statsd): restart error 2022-01-05 17:34:20 +08:00
DDDHuang 5e48f55eef fix(prometheus): restart error 2022-01-05 17:32:09 +08:00
DDDHuang db0e4948a1
Merge pull request #6648 from DDDHuang/fix_update2
fix(config): restart app after config update in cluster
2022-01-05 17:14:40 +08:00
zhongwencool adca9e6f22
Merge pull request #6645 from zhongwencool/fix-authz-reboot-headers-atom
fix: make sure authz headers is binary.
2022-01-05 16:49:25 +08:00
DDDHuang 6c574c08b8 fix(config): update config by emqx_conf 2022-01-05 16:11:55 +08:00
DDDHuang 31aed3ea8e fix(prometheus): stop app with error check & dialyzer 2022-01-05 15:59:17 +08:00
zhongwencool c6c7f70a30 chore(hocon): upgrade hocon to 0.22.3 2022-01-05 15:57:19 +08:00
JianBo He 47441fb747 fix(gw): fix bad default oom policy 2022-01-05 15:49:44 +08:00
tigercl a7325fe4d0
Merge pull request #6613 from JimMoen/update-dashobard
update dashboard version, fix connector api
2022-01-05 15:30:30 +08:00
zhongwencool 303707d69d fix: make sure authz headers is binary. 2022-01-05 15:11:16 +08:00
DDDHuang 72713cb85f fix(config): restart app after config update in cluster 2022-01-05 15:06:18 +08:00
tigercl 4b4403354d
Merge pull request #6558 from JimMoen/fix-auth-http
authn and authz http query string percent encode in url field
2022-01-05 14:06:10 +08:00
Shawn 21bf07a01c fix(test): race conditions in connector_api_SUITE 2022-01-05 11:41:17 +08:00
lafirest 81d862061a
Merge pull request #6557 from lafirest/fix/limiter
feat(emqx_limiter): improve burst implementation
2022-01-05 09:43:22 +08:00
DDDHuang d35b418ed6
Merge pull request #6616 from DDDHuang/emqx_prometheus_cluster
fix(prometheus): update config in cluster
2022-01-05 09:43:11 +08:00
lafirest a212592d0e
Merge pull request #6594 from lafirest/fix/default_value
fix(emqx_slow_subs): fix default expire value
2022-01-05 09:42:53 +08:00
lafirest 6a80f8320d
Merge pull request #6622 from lafirest/fix/retainer_stats
fix(emqx_retainer): fix the stats function of retainer
2022-01-05 09:42:38 +08:00
DDDHuang eabede04f3 fix(test): emqx_connector_api_SUITE add sleep 2022-01-05 09:28:49 +08:00
DDDHuang 20c5343f9b fix(prometheus): dialyzer 2022-01-05 09:28:49 +08:00
DDDHuang e908973a86 fix(statsd): update config bug 2022-01-05 09:28:49 +08:00
DDDHuang 7bc59969eb fix(prometheus): update config in cluster 2022-01-05 09:28:49 +08:00
JianBo He f5288e895f
Merge pull request #6617 from HJianBo/integrate_emqx_conf_into_modules 2022-01-05 09:23:52 +08:00
k32 4f3f938d71 feat(bpapi): Introduce bpapi behavior 2022-01-05 01:43:18 +01:00
k32 0f6ec9d646 fix(bpapi): Fix build 2022-01-05 01:28:34 +01:00
k32 eaa71438b2 feat(bpapi): Typecheck function parameters 2022-01-05 01:28:34 +01:00
k32 64378be9a0 fix(bpapi): Optimize BPAPI dump size 2022-01-05 01:28:34 +01:00
k32 2c3af8d9fe feat(bpapi): Move to emqx
Fix standalone build
2022-01-05 01:28:34 +01:00
k32 96fdd0c31f fix(bpapi): Fix build order 2022-01-05 01:28:34 +01:00
k32 5c2a559991 feat(bpapi): Initial commit 2022-01-05 01:28:34 +01:00
k32 6ee18b6104 refactor(broker): Don't use a macro 2022-01-05 01:28:31 +01:00
Zaiming (Stone) Shi 211b8e1b06 Merge remote-tracking branch 'origin/release-5.0-beta.3' into merge-5.0-beta.3-to-master 2022-01-04 22:48:25 +01:00
Zaiming (Stone) Shi 503bf54c77 test(authz): fix meck calls
f
2022-01-04 13:54:25 +01:00
JimMoen fa25991c5c test(authz): authnz acl query string use placehodler 2022-01-04 18:13:27 +08:00
JimMoen 6affb5aca1 fix(authn): authn http resource url query string 2022-01-04 18:13:27 +08:00
JimMoen ab37c48860 fix(authz): authz http resource url query string 2022-01-04 18:13:27 +08:00
lafirest a593921137 fix(emqx_retainer): fix the stats function of retainer 2022-01-04 17:26:48 +08:00
lafirest aacdc5c2f7 fix(emqx_retainer): remove disc_only option 2022-01-04 14:40:11 +08:00
JianBo He 126924bc54
Merge pull request #6567 from HJianBo/gw-review-r4 2022-01-04 11:24:03 +08:00
JianBo He 2c67ec44f4 fix(topic-metrics): fix bad map for calculating metrics 2022-01-04 11:11:41 +08:00
zhongwencool aa4eec3127
Merge pull request #6591 from zhongwencool/api-key-update-unexpired
fix(api_key): set api_key unexpired when update expired_at=undefined
2022-01-04 10:54:05 +08:00
zhongwencool 075669461c fix: compile error 2022-01-04 09:53:50 +08:00
Zaiming (Stone) Shi b5e7344752 build(emqx_plugin_libs): add rebar.config to help mix build 2022-01-04 01:00:09 +01:00
Zaiming (Stone) Shi e3c8f67aaf test: resource creation now checks health
adjust test case to work with new code behavior
2022-01-04 00:54:09 +01:00
Zaiming (Stone) Shi 7b478817bd test: test authz against 'single' mogodb 2022-01-04 00:54:09 +01:00
Zaiming (Stone) Shi 6c99b64e4c refactor(emqx_plugin_libs_pool): structured logging 2022-01-04 00:54:09 +01:00
Zaiming (Stone) Shi 719800914a Merge branch 'ci-run-dialyzer-on-slef-hosted' into merge-5.0-beta.3-to-master 2022-01-03 16:23:11 +01:00
Zaiming (Stone) Shi f866488bc2 test: fix mongodb tls suite
dryruns return error when local health check fails
2022-01-03 16:22:44 +01:00
k32 b4048c2789
Merge pull request #6609 from k32/dev/sysmon-conf
fix(system_monitor): Unify configuration with sysmon
2022-01-03 14:03:32 +01:00
Zaiming (Stone) Shi 2fbe2dd0c3 fix(boot): ensure emqx_conf is the first app to boot
The first one to boot after emqx_machine
2022-01-03 12:53:49 +01:00
k32 377ed03a20 fix(system_monitor): Unify configuration with sysmon 2022-01-03 12:09:37 +01:00
Zaiming (Stone) Shi 65b1ce80d9 chore: fix deps discrepancy 2022-01-03 11:47:43 +01:00
Zaiming (Stone) Shi 2898fa76e1 Merge remote-tracking branch 'origin/release-5.0-beta.3' into merge-5.0-beta.3-to-master 2022-01-03 11:39:06 +01:00
JianBo He e00cf71911
Merge branch 'release-5.0-beta.3' into gw-review-r4 2022-01-03 16:05:46 +08:00
Shawn e95445728c fix(test): wait until the bridge ready 2022-01-02 23:59:56 +08:00
Shawn 11736dc1d7 fix(bridge): check health immediately after updated 2022-01-02 22:45:32 +08:00
Shawn a64b29ff76 fix(resource): re-create the helth checker if already exists 2022-01-02 20:36:30 +08:00
Shawn e1ab331a30 refactor(resource): support async create mode 2022-01-02 20:20:39 +08:00
Shawn 2277b75b2f refactor(resource): improve the process starting/stopping resource instances 2022-01-02 17:14:02 +08:00
Shawn 95340b7baa
Merge pull request #6564 from EMQ-YangM/beta3
feat(emqx_resource): add health_ckeck process
2022-01-02 12:46:22 +08:00
zhongwencool 33523d9294
Merge branch 'release-5.0-beta.3' into api-key-update-unexpired 2022-01-02 09:35:04 +08:00
Shawn 808646c2a1 fix(bridge): prohibit deleting connectors that are in use 2022-01-01 22:10:13 +08:00
Ilya Averyanov 852033a955
Merge pull request #6525 from savonarola/authn-ssl-tests
chore(authn): test authn ssl settings
2022-01-01 13:41:37 +03:00
Shawn 59e2614574 fix(dialyzer): unmatched results in emqx_statsd_api 2022-01-01 04:23:51 +08:00
Shawn 925d46fe86 fix(connector): add testcase for binding egress mqtt bridge to rules 2022-01-01 04:12:20 +08:00
Shawn 9a7452e1c5 fix(connector): add testcase for binding ingress mqtt bridge to rules 2022-01-01 03:07:31 +08:00
Thales Macedo Garitezi 6858f496a7
chore(hocon): update hocon version 2021-12-31 14:13:39 -03:00
Shawn 7643564ef1
Merge pull request #6597 from terry-xiaoyu/bridge_bug_fixes_2
Bridge bug fixes 2
2022-01-01 00:10:26 +08:00
Ilya Averyanov 384493369b
Merge pull request #6587 from savonarola/improve-authz-coverage-more
chore(authz): increase coverage
2021-12-31 18:58:21 +03:00
Shawn efec4564f0 fix(resource): update test cases on resource not_found 2021-12-31 22:25:45 +08:00
Shawn b74a9bfda1 fix(swagger): duplicate keys in swagger doc 2021-12-31 22:20:22 +08:00
Shawn 658f819aab fix(bridges): keep multiple bridges from affecting each other on crash 2021-12-31 21:28:32 +08:00
Shawn f65eca4c47 fix(authn): update testcase for resource not running 2021-12-31 21:08:07 +08:00
Shawn 657ecef67b fix(resource): don't crash on resource stopped 2021-12-31 20:57:34 +08:00
Zaiming (Stone) Shi 071b03b29c refactor: statsd supervisor API no need to return error
Also to make dialyzer happy
2021-12-31 12:27:25 +01:00
zhongwencool 2a0d8752bd fix(statsd): already_started crash and diaylizer warning 2021-12-31 17:32:51 +08:00
zhongwencool d0e8285e93 fix(trace): download trace request not compelete but the zip file is delete sometimes 2021-12-31 17:32:07 +08:00
zhongwencool 87bff075ad fix(api_key): set api_key unexpired when update expired_at=undefined 2021-12-31 17:32:07 +08:00
JianBo He 231aeb6068 fix(statsd): fix dialyzer warnings 2021-12-31 16:41:35 +08:00
DDDHuang 54ea7a5871
Merge pull request #6582 from DDDHuang/config_bugfix
fix(config):  update configs in cluster
2021-12-31 16:03:41 +08:00
DDDHuang d27aecc985
Merge pull request #6590 from DDDHuang/delayed_b64
fix(delayed): base64 encode twice
2021-12-31 16:02:32 +08:00
lafirest 6404efd0ec fix(emqx_slow_subs): fix default expire value 2021-12-31 15:59:47 +08:00
Shawn e299d8d138 fix(rule): rules not triggered after the ingress mqtt bridge received some msg 2021-12-31 15:47:03 +08:00
Zaiming (Stone) Shi b09d0d8e4c
Merge pull request #6586 from zmstone/docs-explain-layered-config-at-the-top
docs: explain layered config at the top
2021-12-31 08:10:15 +01:00
JianBo He 2411c22b42 fix(gw): fix bad listners field on http response 2021-12-31 14:59:17 +08:00
JianBo He 990514a048 fix(gw): stop xml_object_db process synchronously 2021-12-31 14:32:03 +08:00
JianBo He 2a20f110b9 fix(gw): use emqx_http_lib to parse uri 2021-12-31 14:32:03 +08:00
DDDHuang 6cde540fd1 fix(test): close app at end_per_suite 2021-12-31 14:17:50 +08:00
DDDHuang 388fdc6057
Merge pull request #6589 from DDDHuang/statsd_cluster_config
fix(statsd): update config in cluster
2021-12-31 14:09:05 +08:00
DDDHuang d18a2ab57c fix(delayed): base64 encode twice 2021-12-31 14:07:34 +08:00
EMQ-YangM c7693246fe feat(emqx_resource): add health_ckeck process, it will periodically perform health checks, and print error logs and generate alarms when the checks fail. 2021-12-30 21:53:51 -08:00
JianBo He 6e6643f974 fix: fix dialyzer warnings 2021-12-31 12:51:35 +08:00
JianBo He ebbb473d7a refactor(topic-metrics): cluster supported 2021-12-31 12:50:23 +08:00
DDDHuang 3a38e8d68d fix(statsd): update config in cluster 2021-12-31 12:48:24 +08:00
DDDHuang 173ae46538 fix(auto_subscribe): bad test suite 2021-12-31 12:46:29 +08:00
DDDHuang a630044688 fix: update result by row_config 2021-12-31 12:46:29 +08:00
DDDHuang f0330d9334 fix(event_message): update config in cluster 2021-12-31 12:46:29 +08:00
DDDHuang 6c52fb4806 fix: code format 2021-12-31 12:46:29 +08:00
DDDHuang 23cf74d829 fix(delayed): update config in cluster 2021-12-31 12:46:29 +08:00
DDDHuang f19ccdfcde fix(auto_subscribe): update config in cluster 2021-12-31 12:46:29 +08:00
Shawn 9ba454a63d fix(bridge): filter the topic of received msgs got from remote MQTT broker 2021-12-31 12:00:43 +08:00
Shawn 14ee053a0e
Merge pull request #6563 from terry-xiaoyu/bridge_bug_fixes_1
Bridge bug fixes 1
2021-12-31 11:57:28 +08:00
lafirest 922fc0ad9f
Merge pull request #6578 from lafirest/fix/retainer_config
fix(emqx_retainer): fix config update error
2021-12-31 11:13:44 +08:00
lafirest 86001765cb fix(emqx_retainer): fix config update error 2021-12-31 09:56:25 +08:00
Ilya Averyanov 2ffcaad41e chore(authz): increase coverage 2021-12-31 01:24:18 +03:00
Thales Macedo Garitezi c29bc126ef
Merge pull request #6507 from emqx/build-with-mix-mkII
Build with Elixir Mix Release
2021-12-30 15:00:38 -03:00
Zaiming (Stone) Shi d88a648092 docs: update config doc
Explain layered style at the very top of the doc
2021-12-30 18:38:01 +01:00
Zaiming (Stone) Shi d191f7cf7e chore: update to hocon 0.22.2 2021-12-30 18:36:26 +01:00
Shawn 94a5965560 fix(rule): dead lock when update configs for rules 2021-12-31 00:03:03 +08:00
Shawn 626a4c4713 fix(machine): some apps not restarted after joining into the cluster 2021-12-31 00:03:03 +08:00
Shawn a42ab3d9da fix(rule): use emqx_conf:update/3 to make changes to all nodes 2021-12-31 00:03:03 +08:00
Shawn ea2d4674df fix(resource): metrics were cleared after updating the resource 2021-12-31 00:03:03 +08:00
Shawn e2d899ad6e fix(bridge): HTTP reqeust crash if using GET an DELETE method 2021-12-31 00:03:03 +08:00
Shawn 9d733c2ec5 fix(resource): typos on restart a resource 2021-12-30 23:48:41 +08:00
Shawn d11cf6ad64 fix(bridges): store connector name and bridge name to config files 2021-12-30 23:48:41 +08:00
Shawn 110ae62b24 fix(bridge): don't concat names into ids 2021-12-30 23:48:41 +08:00
Shawn 14089a572e fix(bridge): changes timeouts from 30s to 15s 2021-12-30 23:48:41 +08:00
Shawn aefcd6275b fix(bridges): ingress MQTT bridges didn't increase counters on msg received 2021-12-30 23:48:41 +08:00
Shawn c23436166b fix(bridge): HTTP connector should failed on non-200 status codes 2021-12-30 23:48:41 +08:00
Shawn ea1aaa9806 fix(bridge): remove clientid config from MQTT bridges
Don't allow the user provide the clientid for connecting the remote broker.
We generate the clientid using the bridge id and node name.
2021-12-30 23:48:41 +08:00
zhongwencool d16362af96
Merge pull request #6547 from zhongwencool/trace-formatter
feat(trace): replace logger_formatter by emqx_trace_formatter
2021-12-30 23:40:59 +08:00
zhongwencool 489fb7f806 fix(trace): copy binary:encode_hex/2 from binary.erl 2021-12-30 21:38:23 +08:00
JimMoen ff3707fbdc
Merge pull request #6565 from JimMoen/fix-redis-servers-field
fix(connector): redis cluster `servers` field
2021-12-30 19:33:12 +08:00
Ilya Averyanov c98e0efdad chore(mongodb): update client 2021-12-30 13:57:48 +03:00
DDDHuang c2e36b041b fix: dashboard return type 2021-12-30 18:53:09 +08:00
Ilya Averyanov 7208669946 chore(authn): reduce number of pre-generated certificates, refactor
tests
2021-12-30 13:49:14 +03:00
lafirest 0e62a6772c fix(emqx_slow_subs): fix config update error 2021-12-30 16:58:33 +08:00
JimMoen da68dfc8f4 test(authz): `servers` field use string 2021-12-30 15:38:04 +08:00
JimMoen 8cb9482542 fix(authz): `servers` field use string 2021-12-30 15:37:53 +08:00
JimMoen 39c29b2396 fix(connector): redis cluster `servers` field 2021-12-30 15:37:53 +08:00
lafirest f466a9f2de fix(emqx_slow_subs): fix timer management error 2021-12-30 15:30:25 +08:00
lafirest c6cc92c608
Merge pull request #6575 from lafirest/fix/slow_subs_api
fix(emqx_slow_subs): limit the max size of top-k table
2021-12-30 14:53:37 +08:00
DDDHuang bd241f4220
Merge pull request #6568 from DDDHuang/api_authbeta3
fix(api): auth failed with basic type check
2021-12-30 14:53:16 +08:00
lafirest ed086728cf fix: Revert "fix(emqx_retainer): add support for RAP falg"
This reverts commit b80a01554b.
2021-12-30 11:32:08 +08:00
lafirest d60c586bfb fix(emqx_slow_subs): limit the max size of top-k table 2021-12-30 10:38:32 +08:00
DDDHuang db9d269034 fix(dashboard): batter auth failed response message 2021-12-30 10:29:20 +08:00
JianBo He e8acec7f56
Merge pull request #6549 from HJianBo/gw-review-r3
- Add endpoint_name, like_endpoint_name, gte_lifetime, lte_lifetime query parameters for Swagger docs
- Optimize the atomicity of the gateway creation procedure and reduce the side effects if creation failed
2021-12-30 09:54:54 +08:00
Thales Macedo Garitezi 3fc8d4049f
Merge pull request #6571 from emqx/fix-sticky-shared-sub-conf
fix(config): add missing enum constructors for `shared_subscription_strategy`

Currently, there's [code](048afa6d2d/apps/emqx/src/emqx_shared_sub.erl (L270-L279)) and tests that expect the possibility of
values `sticky`, `hash_topic` and `hash_clientid` in the
`node.shared_subscritpion_strategy` configuration, but the schema enum
does not contain those constructors.

There's also a `hash` constructor expected, but apparently it's just for backwards compatibility (same as `hash_clientid`), so maybe we can skip it in 5.0
2021-12-29 15:08:49 -03:00
zhongwencool 43141dffee
Merge branch 'release-5.0-beta.3' into trace-formatter 2021-12-29 22:37:59 +08:00
zhongwencool b8bb5ff738 fix(trace): delete duplicate topic from msg 2021-12-29 22:33:34 +08:00
Thales Macedo Garitezi 048afa6d2d
fix(config): add missing enum constructors for `shared_subscription_strategy`
Currently, there's code and tests that expect the possibility of a
value `sticky`, `hash_topic` and `hash_clientid` in the
`node.shared_subscritpion_strategy` configuration, but the schema enum
does not contain those constructors.
2021-12-29 10:34:20 -03:00
Ilya Averyanov 2b3d3ebb0a chore(authn): test JWT authn with HTTPS key server 2021-12-29 16:24:57 +03:00
Ilya Averyanov f230c20521 chore(authn): test HTTPS authn 2021-12-29 16:24:57 +03:00
Ilya Averyanov a7ca6cb39f chore(authn): test MongoDB authn via ssl connection 2021-12-29 16:24:52 +03:00
Zaiming (Stone) Shi f5049b696a docs: fix a misspell in emqx_mgmt_cli 2021-12-29 13:29:51 +01:00
DDDHuang 34dfc327f3 fix(api): auth failed with basic type check 2021-12-29 19:34:13 +08:00
zhongwencool 04313dc044 fix(trace): download trace api not working 2021-12-29 19:03:54 +08:00
zhongwencool 121d906992 chore(log): add SLOG/3 to add meta info 2021-12-29 14:48:48 +08:00
JianBo He 6280c8c9f0 chore: fix dialyzer warnings 2021-12-29 14:02:45 +08:00
tigercl d769401869
Merge pull request #6555 from tigercl/chore/new-epgsql
chore: support prepared query in postgresql connector
2021-12-29 13:37:29 +08:00
zhongwencool 8b5b3a448a fix(test): trace_handler ct fail 2021-12-29 11:06:31 +08:00
Thales Macedo Garitezi 8f4453fedb
fix(gateway): undo move headers to root `include`
Keeping headers in the src directory makes sense for the interfaces we
don't want to expose outside, but the `include_lib` directive fails to
compile under Mix. Changing `include_lib("emqx_gateway/src/...")` to
`-include("src/...")` pleases both Mix and Rebar.
2021-12-28 17:34:47 -03:00
zhongwencool 4b6bba11eb feat(trace): struct log for trace 2021-12-29 00:26:54 +08:00
zhongwencool b78cfa0a1c fix(api_key): support expired_at never expired when undefined 2021-12-29 00:22:59 +08:00
zhongwencool 0712fc1e75 chore(schema): remove emqx_schema:unicode_binary/0 2021-12-28 23:50:12 +08:00
Thales Macedo Garitezi 0020cf592f
Merge remote-tracking branch 'origin/master' into build-with-mix-mkII 2021-12-28 11:28:40 -03:00
Ilya Averyanov f8ffb9c021
Merge pull request #6506 from savonarola/test-authz-mnezia
Test HTTP, Mria, File authorization
2021-12-28 15:53:37 +03:00
zhongwencool 47be5b9ef2
Merge pull request #6539 from zhongwencool/fix-override-conf-not-load
fix(conf): can't include local/overide-conf file
2021-12-28 18:03:56 +08:00
Zaiming (Stone) Shi 0f14f73a50
Merge pull request #6552 from zmstone/fix-5.0-portable-shebang
fix: portable shebang
2021-12-28 10:51:15 +01:00
Shawn 3a39db4f97
Merge pull request #6550 from terry-xiaoyu/fix_utf8_topic_rewrite
Fix utf8 topic rewrite
2021-12-28 17:08:23 +08:00
Shawn 1d4be368cb
Merge pull request #6556 from terry-xiaoyu/fixes_for_bridges
Bug fixes for data bridges
2021-12-28 17:07:54 +08:00
zhongwencool e44f7de596 chore(conf): update hocon to 0.22.1 2021-12-28 16:17:19 +08:00
Ilya Averyanov 9363b6110e chore(authz): make test http server more robust 2021-12-28 11:06:52 +03:00
tigercl 6a686c3314
Merge pull request #6503 from tigercl/feat/authz-config
feat(authz): support sync configuration in the cluster
2021-12-28 14:39:56 +08:00
Shawn 07997ab865 fix(bridge): Bridges should send a JSON message if payload template not set 2021-12-28 14:18:14 +08:00
Shawn 4406589980 fix(bridge): time unit error for MQTT keepalive 2021-12-28 14:12:28 +08:00
lafirest e48df910d8
Merge pull request #6493 from lafirest/refactor/exhook
refactor(emqx_exhook): refactore exhook and add api module
2021-12-28 14:00:19 +08:00
zhouzb 487b84f166 test: fix test case 2021-12-28 11:37:51 +08:00
Shawn eb992ad2ad fix(bridge): add test cases for sending msgs via http bridge 2021-12-28 11:35:47 +08:00
zhouzb 1a22d5ca46 fix: fix undef function call 2021-12-28 11:21:41 +08:00
Shawn bf2392f682 chore(typerefl): update typerefl to 0.8.6 2021-12-28 10:52:30 +08:00
lafirest c68499e39a fix(api): fix the payload in the result of the api of emqx_retainer & emqx_dealy 2021-12-28 10:25:53 +08:00
lafirest e2240bdf03 feat(emqx_limiter): improve burst implementation 2021-12-28 10:13:55 +08:00
Shawn 1cd226c18b fix(bridge): make direction defaults to egress if not provided 2021-12-28 10:12:39 +08:00
zhouzb d26042703e chore: provide prepared_query and equery 2021-12-28 09:52:31 +08:00
lafirest afe51446b0
Merge pull request #6538 from lafirest/fix/rap
fix(emqx_retainer): add support for RAP falg
2021-12-28 09:31:57 +08:00
zhouzb fc89fb0f8a chore: using prepared query in postgresql connector 2021-12-28 09:16:00 +08:00
Zaiming (Stone) Shi 68eb13d478 fix: portable shebang 2021-12-27 15:45:12 +01:00
JianBo He 8203b1f328 refactor(gw): simplify massive repeated codes 2021-12-27 16:50:39 +08:00
Shawn e9c2b5d1cf fix(rewrite): don't check and translate body for topic rewrite APIs 2021-12-27 16:17:59 +08:00
Ilya Averyanov e2e2c98679 chore(authn): test Mysql authn via ssl connection 2021-12-27 11:16:31 +03:00
Ilya Averyanov 6de89d1207 chore(authn): test PostgreSQL authn via ssl connection 2021-12-27 11:16:31 +03:00
Ilya Averyanov 520629d6e2 chore(authn): test Redis authn via ssl connection 2021-12-27 11:16:31 +03:00
JianBo He 76b35910b7 chore(gw): fix elvis warnings 2021-12-27 16:03:31 +08:00
JianBo He fca5a3bc21 chore(gw): add cli testcases 2021-12-27 16:03:31 +08:00
zhongwencool 668180388c feat(trace): replace logger_formatter by emqx_trace_formatter 2021-12-27 14:40:40 +08:00
tigercl d781dc73a5
Merge pull request #6536 from tigercl/fix/authn-ssl
fix(authn): attempt to convert certificate content only when TLS is enabled
2021-12-27 09:50:11 +08:00
JianBo He 523b5761b7
Merge pull request #6527 from HJianBo/fix-receive-maximum-50
fix: disconnect the client due to exceed receive-maximum packets
2021-12-27 09:13:24 +08:00
Thales Macedo Garitezi cc652c3343
ci(mix): add elixir deps check
Checks whether there are discrepancies between rebar3 and mix deps.
2021-12-24 14:44:49 -03:00
Ilya Averyanov 2bada0bab8 chore(authz): test Mria authz 2021-12-24 16:18:46 +03:00
Ilya Averyanov d75e0104cc chore(authz): test file authz with real files 2021-12-24 16:18:41 +03:00
Ilya Averyanov e0f860d7d9 chore(authz): fix HTTP authz, cover with tests 2021-12-24 16:18:36 +03:00
zhongwencool 0b099432c5 fix(conf): can't include local/overide-conf file 2021-12-24 19:20:36 +08:00
lafirest b80a01554b fix(emqx_retainer): add support for RAP falg 2021-12-24 18:03:55 +08:00
zhongwencool 6326e436d3
Merge pull request #6532 from zhongwencool/fix-banned-bad-peerhost-crash
fix(banned): crash by bad peerhost; add banned http API tests
2021-12-24 17:04:26 +08:00
tigercl 41694b7b34
Merge pull request #6526 from emqx/release-5.0-beta.3
Sync 5.0-beta.3 fixes into master
2021-12-24 13:49:13 +08:00
zhouzb 72a27e9d8f fix: fix undefined function call 2021-12-24 13:44:28 +08:00
zhouzb 9769ddeb14 fix(authn): attempt to convert certificate content only when TLS is enabled 2021-12-24 13:40:13 +08:00
zhongwencool 33a6568654 fix(banned): crash by bad peerhost; add banned http API tests 2021-12-24 10:56:41 +08:00
lafirest d2d50443ce fix(emqx_retainer): use base64 to encode payload in api's result 2021-12-24 10:48:12 +08:00
lafirest 8c42b623c6
Merge pull request #6529 from lafirest/fix/retain_payload
fix(emqx_retainer): use base64 to encode payload in api's result
2021-12-24 10:26:00 +08:00
lafirest b6755d5953 fix(emqx_retainer): use base64 to encode payload in api's result 2021-12-24 10:22:10 +08:00
Thales Macedo Garitezi 11c169501e
chore(mix): fix app dependencies and reboot apps (emqx_conf)
While declaring `emqx_conf` as an application dependency of
`emqx_resource` worked for releases, it messed up the startup
relationship during tests.  Since only removing `emqx_conf` from the
`applications` key in `emqx_resource` breaks the list of apps that
need to be rebooted on config changes (since `emqx_conf` is not on any
apps dependencies list, it was not being added to the final
topologically sorted list), we now always add it as a vertex to ensure
its presence there.  This (apparently) makes the rebar3 release, the
mix release and test runs behave normally.
2021-12-23 13:48:28 -03:00
k32 bd31b52e35 chore(ekka): Bump version to 0.11.2 2021-12-23 15:29:35 +01:00
Spycsh 41e373dbc4
Merge pull request #6478 from Spycsh/slog
chore: refactor ?SLOG
2021-12-23 22:21:33 +08:00
lafirest 7c9c7b6a60 refactor(emqx_exhook): refactore exhook and add api module 2021-12-23 17:51:13 +08:00
JianBo He 52502e29c3 fix: disconnect the client due to exceed receive-maximum packets
As described in the 5.0 specification, we should disconnect clients that
exceed the receive-maximum limit.

> If it receives more than Receive Maximum QoS 1 and QoS 2 PUBLISH packets
where it has not sent a PUBACK or PUBCOMP in response, **the Server uses a
DISCONNECT packet with Reason Code 0x9**

fix: #6447
2021-12-23 14:06:11 +08:00
zhouzb 80c1128b7a fix(authz): fix deadlock issues 2021-12-23 11:45:58 +08:00
JianBo He 967989075c
Merge pull request #6512 from terry-xiaoyu/fix_rule_api_swagger
Fix rule api swagger
2021-12-23 10:37:53 +08:00
Thales Macedo Garitezi 238895a301
chore(mix): correctly define release version
With this, we no longer need the last hack in `mix_release.sh`.

A version schema with 3 parts (Major.Minor.Patch) is required by
Elixir:

https://hexdocs.pm/elixir/1.13.1/Version.html#module-versions
2021-12-22 15:43:43 -03:00
Thales Macedo Garitezi e137555052
fix(tests): fix include paths that were moved 2021-12-22 15:15:19 -03:00
Thales Macedo Garitezi 68cbded7c6
fix(dialyzer): fix dialyzer warnings
Adding hocon to emqx solves the issue, since other offending apps
depend on emqx.  The warnings were that it was not able to find info
on the `hocon_schema` behaviour.

Example:
```
Callback info about the hocon_schema behaviour is not available
```
2021-12-22 15:15:19 -03:00
JianBo He b846193556
Merge pull request #6518 from HJianBo/gw-review-r2 2021-12-22 22:10:18 +08:00
Thales Macedo Garitezi 34d6dbca61
chore(mix): simplify build by using rebar3 for umbrella apps
By treating the apps in the umbrella as dependencies to be managed and
built by rebar3, we can simplify the maintenance of the release, at
the cost of increased build times: using Mix as before, it could track
changed files better than using rebar.  But the complexity and
possibility of discrepancies make it using rebar much more compelling.
2021-12-22 09:40:01 -03:00
JianBo He 1bcdbf3a06 chore(gw): make some fields required 2021-12-22 16:49:34 +08:00
JianBo He 6d4aac1600 chore(gw): improve http error messages 2021-12-22 16:49:33 +08:00
JianBo He 3fd9061418 fix(gw): save coap channel info 2021-12-22 16:49:33 +08:00
zhongwencool 2e10a5700c
Merge pull request #6515 from zhongwencool/fix-bann-utf8
fix(banned): create banned with utf8 failed by 500 response
2021-12-22 16:08:34 +08:00
zhongwencool b11a15fa00 fix(banned): create banned with utf8 failed by 500 2021-12-22 14:29:15 +08:00
Shawn cd4227b851 fix(rules): don't show the module name 'emqx_rule_outputs' in outputs 2021-12-22 10:26:22 +08:00
Shawn 9b4b3d2e8c fix(rules): make the 'name' field of POST /rules mandatory 2021-12-22 10:26:22 +08:00
Shawn 5f050b149b fix(rules): the schema for unsubscribe is messing from rule_test API 2021-12-22 10:26:22 +08:00
Thales Macedo Garitezi 917575de5a
chore(mix): minimal elixir mix release build
This commit enables a minimal working build of EMQX release using
Mix.  However, to properly start the release, several configuration
steps are still missing.  A `mix_release.sh` script does a few hacks
to get the release built with Mix to start properly, by first assuming
that `make emqx` has been run prior to the release, ran once to
generate the `app.*.config` files, and then it copies that and some
other files to the expected places.

Also, `emqx_telemetry` hangs the start procedure because it thinks
it's in an official release and tries to make a request.  We disable
it temporarily via config just to get a working build for now.
2021-12-21 13:51:22 -03:00
zhouzb 25b7719db5 feat(authz): support sync configuration in the cluster 2021-12-21 17:00:49 +08:00
JimMoen 99a5f14301 fix(telemetry): use required fields, rolling distro use PRETTY_NAME 2021-12-21 10:44:54 +08:00
JimMoen 6f28e103d0 fix(dashobard): statistical diagram timestamp use UTC time 2021-12-20 19:21:19 +08:00
JianBo He db08cee20f
Merge pull request #6456 from HJianBo/gw-review-r1 2021-12-20 13:48:24 +08:00
Shawn efb0365cdd
Merge pull request #6481 from terry-xiaoyu/fix_rule_apis
fix(connector): some desc for connector APIs
2021-12-20 13:46:29 +08:00
Shawn 27de3139a4 fix(http_connect): don't check status on_start 2021-12-20 11:36:52 +08:00
zhongwencool f7a55d3f8d
Merge pull request #6238 from zhongwencool/fix-keepalive-ct-failed
fix: keepalive ct failed
2021-12-20 11:00:20 +08:00
JianBo He 5b1ed76a44 chore(gw-frame): export types for dialyzer check 2021-12-20 10:59:16 +08:00
Shawn a879ec0f3a feat(resource): add option 'force_create' to emqx_resource:create/4 2021-12-20 10:26:27 +08:00
zhongwencool 96ee51fe57
Merge pull request #6460 from zmstone/feat-add-plugin-mgmt
refactor(plugins): refactor plugins configuration interface
2021-12-20 09:24:38 +08:00
Shawn 05e24b457a fix(bridge): update emqx_bridge.conf 2021-12-18 20:53:14 +08:00
Shawn a9c9d9d805 fix(rule): rename enabled to enable 2021-12-18 20:28:14 +08:00
Shawn cfaad15364 fix(connector): update the connector config failed 2021-12-18 20:19:34 +08:00
Shawn a44e18e869 fix(bridge): filter out some extra fields from the request body 2021-12-18 19:19:58 +08:00
Shawn 11e8e0db69 fix(bridge): stop http failed due to econnrefused 2021-12-18 15:33:25 +08:00
Shawn f08f37ec9c fix(bridge): create bridge failed but the config was saved 2021-12-18 11:19:22 +08:00
Shawn 20091f8d2a fix(connector): some desc for connector APIs 2021-12-18 09:52:15 +08:00
Shawn b2e7a6a249
Merge pull request #6473 from terry-xiaoyu/fix_connector_apis
fix(connector): add type and name in repsonse of GET /connectors
2021-12-18 09:35:45 +08:00
Spycsh ca2660d609 chore: refactor ?SLOG 2021-12-18 00:17:45 +01:00
Shawn 494c08f849 refactor(rule): add name field to request body of POST /rules 2021-12-18 06:34:44 +08:00
Ilya Averyanov 7cceecc11e
Merge pull request #6446 from savonarola/test-authz-more
Test authz more
2021-12-17 19:06:52 +03:00
k32 93acf8a3a7
Merge pull request #6451 from k32/dev/fix-dispatch-when-emqx-is-stopped
fix(broker): Check broker status before dispatch
2021-12-17 15:19:34 +01:00
Shawn 673a545aa2 fix(dialyzer): bad type specs 2021-12-17 22:15:56 +08:00
Shawn 7bcd38c101 fix(bridge): update qos fields for swagger examples 2021-12-17 21:41:25 +08:00
Shawn 0699682f38 refactor(bridges): rename some config entries for MQTT bridge 2021-12-17 21:22:04 +08:00
Ilya Averyanov e24cdb067c chore(authz): fix Mysql variable substitution 2021-12-17 14:20:53 +03:00
Ilya Averyanov 462ec39cb1 chore(authz): test Postgresql backend with real Postgresql 2021-12-17 14:20:50 +03:00
Ilya Averyanov 0a1a68245d chore(authz): test Mysql backend with real Mysql 2021-12-17 14:18:54 +03:00
Ilya Averyanov a21f67a67e chore(authz): test Mongo backend with real Mongo 2021-12-17 14:18:54 +03:00
Ilya Averyanov 28c319b6c4 chore(authz): test Mongo backend with real Mongo 2021-12-17 14:18:54 +03:00
Ilya Averyanov 6ad71a483e chore(authz): test Redis backend with real Redis 2021-12-17 14:18:54 +03:00
Shawn 9b34f6f9a3 fix(connector): add type and name in repsonse of GET /connectors 2021-12-17 16:45:42 +08:00
zhongwencool 870af6df41 fix: Limit interval between 0~65535 2021-12-17 15:51:54 +08:00
zhongwencool fdff3c5a53 fix: keepalive ct failed 2021-12-17 15:51:51 +08:00
Zaiming (Stone) Shi 58f32c2572 fix(plugins): catch stop_app exception 2021-12-17 08:35:10 +01:00
JianBo He 92fd9c1eca chore(gw): fix adding subscription 2021-12-17 15:31:07 +08:00
zhongwencool 38d42517f7 fix: misc_SUITE:t_drain_down sometimes fails 2021-12-17 14:58:50 +08:00
JianBo He 52c78974d6 chore(gw): fix elvis warnings 2021-12-17 14:16:00 +08:00
JianBo He 561c95c31a feat(lwm2m): support subscribe/unsubscribe operations 2021-12-17 14:16:00 +08:00
JianBo He bfbf377a45 feat(coap): support subscribe/unsubscribe operations 2021-12-17 14:16:00 +08:00
JianBo He 6b8bdfd113 chore(gw): support to get subscriptions from coap 2021-12-17 14:16:00 +08:00
JianBo He 3443aeff18 fix(gw): handle discard/kick event 2021-12-17 14:16:00 +08:00
JianBo He a2823f2ad6 chore(gw): improve some type specs 2021-12-17 14:16:00 +08:00
zhongwencool 8be2aaf72c
Merge pull request #6452 from zhongwencool/log-trace-api
feat(trace): trace http api schema
2021-12-17 12:44:15 +08:00
JimMoen 3a3226fc78 fix(dashboard): enable dashboard by default 2021-12-17 11:20:23 +08:00
zhongwencool 38438415b8 fix: replace LOG by SLOG 2021-12-17 10:52:14 +08:00
zhongwencool 89d904b7ef feat(trace): trace http api schema 2021-12-17 09:29:37 +08:00
Zaiming (Stone) Shi f15efb4930 chore: add a function comment 2021-12-16 22:08:16 +01:00
Zaiming (Stone) Shi b1ec8c1aba fix(plugins): fix relative positioning 2021-12-16 21:57:08 +01:00
Zaiming (Stone) Shi 48ad0adbaa refactor: delete plugin management APIs from emqx_mgmt
Will move the APIs to emqx_plugins_api.erl
2021-12-16 21:53:42 +01:00
Zaiming (Stone) Shi 3a7924d0fd refactor(plugins): new CLI for plugins 2021-12-16 21:21:16 +01:00
Zaiming (Stone) Shi 47661042b9 fix(cli): make emqx_ctl aware of max width 2021-12-16 20:12:15 +01:00
JimMoen 477b62200d fix(authz): placeholder regular expression escape 2021-12-16 23:33:26 +08:00
Zaiming (Stone) Shi b9a3b558ee refactor(plugins): refactor plugins configuration interface 2021-12-16 13:59:20 +01:00
k32 618113d507 fix(broker): Check broker status before dispatch
Fixes: #6388
2021-12-15 19:49:46 +01:00
zhongwencool a43ac1b778 fix: improve rfc3339 format error 2021-12-15 16:58:07 +08:00
zhongwencool e4a21fd90d fix: merge from master 2021-12-15 16:24:25 +08:00
zhongwencool f95ef04cf7
Merge branch 'master' into api-key-secret 2021-12-15 16:01:09 +08:00
lafirest 141921bfc4
Merge pull request #6449 from zhongwencool/slow_sub
fix: slow_sub api return field's notice_interval is missing
2021-12-15 14:45:33 +08:00
zhongwencool 29ccc98a42 fix: slow_sub api return field's notice_interval is missing 2021-12-15 10:36:13 +08:00
Thales Macedo Garitezi 95de2d3467
fix(monitor): fix return value on badrpc
If the rpc in `emqx_dashboard_monitor_api:get_collect/1` fails, an
empty map is return.  But the current function expects a 4-tuple,
which results in a 500 error returned on such occasions.

```
curl -su admin:public localhost:8888/api/v5/monitor/current | jq .
{
  "code": "INTERNAL_ERROR",
  "message": "error, function_clause, [{emqx_dashboard_monitor_api,format_current_metrics,[[#{},{0,0,0,0},{0,0,0,0}],{0,0,0,0}],[{file,\"emqx_dashboard_monitor_api.erl\"},{line,179}]},{emqx_dashboard_monitor_api,current_counters,2,[{file,\"emqx_dashboard_monitor_api.erl\"},{line,167}]},{minirest_handler,apply_callback,3,[{file,\"minirest_handler.erl\"},{line,112}]},{minirest_handler,init,2,[{file,\"minirest_handler.erl\"},{line,38}]},{cowboy_handler,execute,2,[{file,\"cowboy_handler.erl\"},{line,41}]},{cowboy_stream_h,execute,3,[{file,\"cowboy_stream_h.erl\"},{line,318}]},{cowboy_stream_h,request_process,3,[{file,\"cowboy_stream_h.erl\"},{line,302}]},{proc_lib,init_p_do_apply,3,[{file,\"proc_lib.erl\"},{line,226}]}]"
}
```
2021-12-14 17:56:32 -03:00
Thales Macedo Garitezi 0300403fc0
fix(admin): inconsistent return type on empty inputs
If an empty username or password are given during the initialization
of `emqx_dashboard_admin`, it'll return just the atom `ok`, which
breaks the expected `{ok, _}` in `emqx_dashboard_app:start/2`.

```
{'EXIT',
 {{failed_to_start_app,emqx_dashboard,
   {emqx_dashboard,
    {bad_return,
     {{emqx_dashboard_app,start,[normal,[]]},
      {'EXIT',
       {{badmatch,ok},
        [{emqx_dashboard_app,start,2,
          [{file,
            "/home/thales/dev/emqx/emqx/apps/emqx_dashboard/src/emqx_dashboard_app.erl"},
           {line,32}]},
         {application_master,start_it_old,4,
          [{file,"application_master.erl"},{line,293}]}]}}}}}}}}
```
2021-12-14 17:51:50 -03:00
Ilya Averyanov b8a68d7a9f
Merge pull request #6384 from savonarola/refactor-password-hashing
refactor(authn): unify password hashing
2021-12-14 16:21:02 +03:00
Ilya Averyanov 5538cd3708
Merge pull request #6441 from savonarola/refactor-acl
refactor(authz): hide mnesia authz implementation details
2021-12-14 11:32:25 +03:00
zhongwencool 56804ef733
Merge pull request #6427 from zmstone/feat-add-emqx-plugins-app
feat(plugins): add emqx_plugins skeleton
2021-12-14 16:26:58 +08:00
Zaiming (Stone) Shi 867ebbc8a0 docs: fix review comments for plugins config doc 2021-12-13 20:52:20 +01:00
Ilya Averyanov 708d9cfc6c refactor(authn): restore pbkdf2 password hashing functionality 2021-12-13 21:40:09 +03:00
Ilya Averyanov abdb98ffa2 refactor(authz): hide mnesia authz implementation details
* Eliminate type and record sharing through `emqx_authz.hrl`.
* Hide all mria/mnesia interactions inside mnesia authz backend.
2021-12-13 21:23:58 +03:00
zhongwencool 3e892a337a
Merge pull request #6436 from tigercl/chore/compatibility-otp24
chore(otp): be compatibility with crypto in otp 24
2021-12-13 22:31:15 +08:00
zhongwencool b4e2aa0dcf
Merge branch 'master' into feat-add-emqx-plugins-app 2021-12-13 22:28:03 +08:00
lafirest cbe683c6a3
Merge pull request #6353 from lafirest/slow_subs
feat(emqx_slow_sus): ported emqx_slow_subs from v4.4
2021-12-13 17:35:17 +08:00
JimMoen 40c4880a71
Merge pull request #6435 from JimMoen/fix-ssl-file-content
fix(ssl): file content return type
2021-12-13 16:49:21 +08:00
zhouzb 69800a9e88 chore(otp): be compatibility with crypto in otp 24 2021-12-13 16:16:57 +08:00
JimMoen 5785b0c20b fix(ssl): file content return type 2021-12-13 16:08:41 +08:00
Zaiming (Stone) Shi d3d8b3a01f fix: allow listener not_found before restart 2021-12-12 22:18:56 +01:00
Zaiming (Stone) Shi 38ac10d3e2 feat(plugins): add emqx_plugins skeleton
* added emqx_plugins app.
* emqx_plugins.erl is moved from emqx app to emqx_plugins app
  same for the test SUITE
2021-12-12 19:40:34 +01:00
Zaiming (Stone) Shi fcb7c2c70f docs: change <module> to {module} so markdown render will not crash
<module> is treated as an HTML tag
2021-12-12 19:34:29 +01:00
Zaiming (Stone) Shi 41aa958ac9 refactor(authn): root type as array of union
Deleted the wrapping union.
i.e. previously it's
union([union([...]), array(union([...]))]).
not it's
array(union([...]))

It is after-all a lazy type, and the dynamic check allows
single-elemented arrays not to have `[]` around it.

the old union of array of union schema was just adding confusion
2021-12-11 22:20:53 +01:00
Zaiming (Stone) Shi 7d36079f0a docs(connector): better namespace for http schema 2021-12-11 22:17:52 +01:00
Ilya Averyanov 59f1bfeaac
Merge pull request #6373 from savonarola/authz-backend-behaviours
chore(authz): encapsulate authz backend logic
2021-12-11 00:11:16 +03:00
Ilya Averyanov fddb28a4b0 fix(wss): update cowboy & ranch for OTP24 compatibility 2021-12-10 20:38:44 +03:00
JianBo He 5224da57dc
Merge pull request #6411 from HJianBo/gw-improve-apis-3
More precise gateway http-api examples
2021-12-10 16:52:49 +08:00
lafirest 82746134bb feat(emqx_slow_sus): ported emqx_slow_subs from v4.4 2021-12-10 16:42:55 +08:00
firest 8493b61cb5 refactor(eqmx_limiter): use the new hierarchical token bucket to replace the old ratelimit code 2021-12-10 14:37:23 +08:00
JianBo He fa11c6df9c test(gw): fix bad test cases 2021-12-10 10:41:38 +08:00
zhongwencool 64341fdc23 fix(swagger): remote api_secret field form api_key api 2021-12-09 17:57:57 +08:00
k32 98be2e15b1
Merge pull request #6405 from k32/sysmon
feat(system_monitor): Add system_monitor application
2021-12-09 10:22:40 +01:00
zhongwencool 0614c157ec fix(elvis): elvis warning 2021-12-09 16:42:10 +08:00
zhongwencool cf11f3f8ee feat(api-key): support api_key/secret 2021-12-09 16:42:10 +08:00
JianBo He 159ba63530 chore: upgrade grpc-erl to 0.6.4 2021-12-09 15:06:18 +08:00
JianBo He 5d4604701c chore: fix elvis warnings 2021-12-09 15:06:18 +08:00
JianBo He 34cc8cc7f5 chore: put the pool_size default value to avoid hot upgrade failure 2021-12-09 15:06:18 +08:00
JianBo He e7ccd88719 test(props): cover messages headers 2021-12-09 15:06:18 +08:00
JianBo He f132d09483 chore(exhook): parse pool_size 2021-12-09 15:06:18 +08:00
JianBo He 143c685452 feat(exhook): expose process pool_size for grpc client 2021-12-09 15:06:18 +08:00
JianBo He 2b7c311807 chore: upgrade grpc to 0.6.4 2021-12-09 15:06:18 +08:00
JianBo He 262fb13a71 chore(exhook): fix diaylzer warnings 2021-12-09 15:06:17 +08:00
JianBo He 20ba9d285f feat(exhook): expose headers for on_messages_publish hook 2021-12-09 15:06:17 +08:00
lafirest f25c8cdf0f
Merge pull request #6410 from lafirest/fix/lw_cmd_record
fix(emqx_lwm2m): limit the max size of cmd record
2021-12-09 14:57:01 +08:00
JianBo He e662628581 chore(gw): fix bad default value in query-string 2021-12-09 14:50:28 +08:00
lafirest c9cbaeff95 fix(emqx_lwm2m): limit the max size of cmd record 2021-12-09 14:39:11 +08:00
JianBo He 028f1fa71c chore(gw): fix listener examples 2021-12-09 11:33:09 +08:00
Shawn f7941cd2bb
Merge pull request #6387 from terry-xiaoyu/improve_connector_apis
Improve bridge and connector APIs
2021-12-09 10:54:55 +08:00
DDDHuang 7aa08a82d5
Merge pull request #6283 from DDDHuang/as_doc_example
fix: add auto subscription swagger example
2021-12-09 10:35:08 +08:00
Ilya Averyanov 1c9d867c5e chore(authz): add test for authz backend creation dry run 2021-12-08 21:38:10 +03:00
Ilya Averyanov b7d227d2ef chore(authz): move file backend to a separate module 2021-12-08 21:38:10 +03:00
Ilya Averyanov 056558e445 chore(authz): encapsulate authz backend logic 2021-12-08 21:38:10 +03:00
Thales Macedo Garitezi 2b5fe9179e
fix(live_conn): fix live connection count on race condition (5.0)
Port from #6406 to 5.0.

When multiple clients try to connect concurrently using the same
client ID, they all call `emqx_channel:ensure_connected`, increasing
the live connection count, but only one will successfully acquire the
lock for that client ID.  This means that all other clients that
increased the live connection count will not get to call neither
`emqx_channel:ensure_disconnected` nor be monitored for `DOWN`
messages, effectively causing a count leak.

By moving the increment to `emqx_cm:register_channel`, which is only
called inside the lock, we can remove this leakage.

Also, during the handling of `DOWN` messages, we now iterate over all
channel PIDs returned by `eqmx_misc:drain_down`, since it could be
that one or more PIDs are not contained in the `pmon` state.
2021-12-08 15:15:27 -03:00
k32 9fbc247e29 feat(system_monitor): Add system_monitor application 2021-12-08 16:34:10 +01:00
Shawn d76f82d3d2 fix(bridges): add new option 'enable' for bridge configs 2021-12-08 18:16:38 +08:00
JianBo He afb2cf19c2
Merge pull request #6297 from HJianBo/gw-improve-apis-2
Standardize HTTP-APIs return value and Status/Error Code
2021-12-08 18:02:13 +08:00
Tobias Lindahl 92f116afa4
Merge pull request #6393 from emqx/fix-takeover-race-on-enqueued-messages 2021-12-08 11:00:46 +01:00
JianBo He 7c261b5356 chore(gw): improve examples for _gateway_api 2021-12-08 17:18:39 +08:00
JianBo He e48f10d2d6 chore(gw): ignore needless args 2021-12-08 11:33:11 +08:00
JianBo He a937a3d4dc chore(gw): fix bad argument type 2021-12-08 11:13:00 +08:00
JianBo He 0eff5358ca chore(gw): add examples for gw&client api 2021-12-08 10:52:27 +08:00
Ilya Averyanov 2b0a3e8ba3 refactor(authn): unify password hashing 2021-12-07 23:38:26 +03:00
Zaiming (Stone) Shi 9276a5bc3c
Merge pull request #6394 from zmstone/fix-typo-in-hook-point-name
fix: typo takeovered -> takenover
2021-12-07 21:06:30 +01:00
Tobias Lindahl 14bef1ba31 refactor: make clauses safe for future reordering 2021-12-07 16:14:32 +01:00
Zaiming (Stone) Shi 5440b431a1 fix: typo takeovered -> takenover 2021-12-07 16:06:23 +01:00
Tobias Lindahl e6ecc6ca60 fix(emqx_channel): fix race condition in session takeover
Sessions must not enqueue messages when another process is taking over
the client id, since it already passed on the message queue in the
session state.

Without this fix, messages arriving after `{takeover, 'begin'} to a
channel with no connection (i.e., a persistent session) would be lost.
2021-12-07 14:17:59 +01:00
Shawn 12fbcd8181 feat(connector): add num_of_bridges to the response of GET /connectors 2021-12-07 15:09:08 +08:00
Shawn 098d8eacb7 fix(metrics): update testcases for plugin_libs_metrics 2021-12-07 10:12:04 +08:00
Shawn cc96880f18 fix(dialyzer): some dialyzer issue 2021-12-07 09:56:57 +08:00
Shawn 6903997b94 feat(connector): add new option 'mode' to mqtt connectors 2021-12-07 09:56:57 +08:00
Shawn 9b4fe87ed0 fix(bridges): update testcases for bridge APIs 2021-12-07 09:56:57 +08:00
Shawn e1794fbce6 fix(connector): create different schema for POST,PUT,GET methods 2021-12-07 09:56:57 +08:00
Shawn 56d46c80eb refactor(rule): generate swagger from hocon schema for /bridges 2021-12-07 09:56:57 +08:00
Shawn affe69afd6 fix(rules): update the test cases for rule APIs 2021-12-07 09:48:47 +08:00
Shawn 416b9f8d7c refactor(rule): generate swagger from hocon schema for /rules 2021-12-07 09:48:47 +08:00
Shawn 24bded99d5 refactor(metrics): rename speed to rate in emqx_plugin_libs_metrics 2021-12-07 09:47:53 +08:00
Shawn e07fce791f feat(connector): add examples to the swagger doc 2021-12-07 09:47:53 +08:00
Tobias Lindahl 4eef9a5bac
Merge pull request #6378 from emqx/fix-flaky-tests-persistent-session-SUITE
test(flaky_tests): fix persistent_session_SUITE
2021-12-06 14:01:34 +01:00
Thales Macedo Garitezi b6dede3679
Merge pull request #6372 from emqx/fix-typo-listeners
fix(listeners): fix typo in listener type

`emqx_listeners:{current,max}_conns` were matching on type `tcl`.
However, this type doesn't exist (it's not defined in
`?TYPES_STRING`). Therefore, this clause would never match.  It seems
that the intention was that it shouldbe `tcp`.
2021-12-06 09:06:54 -03:00
Tobias Lindahl 6ed3dbd39b test(persistent_session_SUITE): protect against non-atom sinks 2021-12-06 12:40:58 +01:00
Thales Macedo Garitezi 2d46ae7517
fix(typo): fix more typos and restore rate_limit config after test 2021-12-06 08:14:50 -03:00
Tobias Lindahl e62b094f3b test(snabbkaffe): Update to latest snabbkaffe
In particular, this should remove the flaky snabbkaffe failures in
persistent session SUITE where the snabbkaffe_nemesis is trying to
make an ets:lookup in a table that no longer exists.
2021-12-06 11:22:25 +01:00
JimMoen a6a1b288d2
Merge pull request #6365 from JimMoen/fix-vm-mem-info
fix(vm_mem): info calc and display
2021-12-06 17:47:52 +08:00
Tobias Lindahl 366c757959 test(flaky_tests): fix persistent_session_SUITE
Increase timeout on message receive and ensure more info when the test fails.
2021-12-06 10:42:19 +01:00
DDDHuang b0b2adca37
Merge pull request #6377 from DDDHuang/alram_api_info
fix(alarm): alarm message with .2f format
2021-12-06 17:42:02 +08:00
JianBo He d735e2e755 chore: delete 500 error 2021-12-06 16:34:00 +08:00
JianBo He f1dbeb4bda chore: fix bad result match 2021-12-06 16:34:00 +08:00
JianBo He dab3e14686 fix(gw): fix static checking 2021-12-06 16:34:00 +08:00
JianBo He 7f04837ad2 fix(gw): fix elvis warnings 2021-12-06 16:34:00 +08:00
JianBo He 3f35604d16 refactor(gw): fix gateway http api schema 2021-12-06 16:34:00 +08:00
JianBo He f3f3f12635 refactor: improve the _api_clieints implement 2021-12-06 16:33:59 +08:00
JianBo He 01c50992e9 refactor: improve gw api 2021-12-06 16:33:38 +08:00
JianBo He 169848c027 feat(gw): return the created/updated resource info 2021-12-06 16:32:46 +08:00
JianBo He bc012d6554 chore(gw): change lwm2m&coap api path 2021-12-06 16:30:59 +08:00
Zaiming (Stone) Shi 68a7c096b0
Merge pull request #6362 from zmstone/emqx-config-put-raw-with-env-vars
fix: config put raw with env vars
2021-12-06 09:22:32 +01:00
zhongwencool fbe66cb9f2
Merge pull request #6351 from zhongwencool/prometheus-accept-header
chore(HTTP): prometheus or json format by accept header
2021-12-06 16:12:54 +08:00
JianBo He 1ae1460e44
Merge pull request #6364 from HJianBo/stop_publish_clear_msg_for_5
Allow to stop publish clear message
2021-12-06 16:06:38 +08:00
Zaiming (Stone) Shi a1ad6098b3 build: generate document to dashboard priv dir 2021-12-06 08:52:10 +01:00
Zaiming (Stone) Shi 96de7e6b30 docs: refine authn and auth config docs 2021-12-06 08:00:42 +01:00
Zaiming (Stone) Shi ed073f9966 test: fix emqx_rewrite_SUITE with new path info in schema check failure 2021-12-06 08:00:42 +01:00
Zaiming (Stone) Shi e774e976a7 fix: ensure atom connector is loaded when emqx_conf_schema is loaded 2021-12-06 08:00:42 +01:00
Zaiming (Stone) Shi 89614245f6 test: use macro for authentication root name 2021-12-06 08:00:42 +01:00
Zaiming (Stone) Shi a1f79850b4 refactor: allow accessing override config paths 2021-12-06 08:00:42 +01:00
Zaiming (Stone) Shi a723e41390 test: fix a flaky test which gets interfered by other test cases 2021-12-06 08:00:42 +01:00
Zaiming (Stone) Shi 5525cb3262 refactor: only apply environment variables on base config 2021-12-06 08:00:42 +01:00
Zaiming (Stone) Shi a681079ba7 refactor: remove special env override from schema
EMQX_NODE_NAME and EMQX_NODE_COOKIE are translated into
EMQX_NODE__NAME and EMQX_NODE__COOKIE
2021-12-06 08:00:42 +01:00
Zaiming (Stone) Shi d9a980c7e1 docs: fix config doc, avoid using <text> in doc body 2021-12-06 08:00:42 +01:00
Zaiming (Stone) Shi e6e28f9002 docs: fix emqx_schema doc style 2021-12-06 08:00:42 +01:00
Zaiming (Stone) Shi bfc36efa0e fix: pin hocon 0.21.1 2021-12-06 08:00:37 +01:00
DDDHuang 1b0da3cc58 fix(alarm): alarm message with .2f format 2021-12-06 14:36:51 +08:00
tigercl 9e8b4ab237
Merge pull request #6298 from tigercl/feat/cluster-authn
feat(authn): support sync configuration in the cluster
2021-12-06 10:04:48 +08:00
Zaiming (Stone) Shi 867cc3c4ad test: ensure emqx_connector is loaded 2021-12-04 09:33:14 +01:00
Zaiming (Stone) Shi 5d3cb6ae1c refactor(authn): align authn config root name
authn configs are checked independently per-auth provider,
this was to make authn providers more plugable.

in order to make environment variable overrides work for authn,
we need to have a unified view of the config layout,
no matter from root level, or partially checking per-provider
config independently, i.e. we try to use the same config envelop.
2021-12-04 09:33:14 +01:00
Thales Macedo Garitezi bc8a0d7060
fix(listeners): fix typo in listener type
`emqx_listeners:{current,max}_conns` were matching on type `tcl`.
However, this type doesn't exist (it's not defined in
`?TYPES_STRING`). Therefore, this clause would never match.  It seems
that the intention was that it shouldbe `tcp`.
2021-12-03 15:55:51 -03:00
k32 dfa45c909a fix(crash_dump): Fix hocon schema related to the erlang crash dump 2021-12-03 18:45:45 +01:00
k32 fd9f6bd140 fix(crash_dump): Replace crash dump directory with a file 2021-12-03 18:18:24 +01:00
k32 954179b959
Merge pull request #6370 from k32/perf
chore(mria): Bump version to 0.1.4
2021-12-03 17:39:21 +01:00
k32 2ceb660344 chore(mria): Bump version to 0.1.4 2021-12-03 17:13:12 +01:00
zhouzb 1dfc37cd18 test(authn): fix test cases 2021-12-03 15:55:34 +08:00
JianBo He f645a4eada test(retainer): add test case for stopping publish clear msg 2021-12-03 14:42:27 +08:00
JianBo He 4b3b29873a feat(retainer): allow to stop publish clear msg 2021-12-03 14:41:42 +08:00
JimMoen d4246ad2f6 fix(vm): add literal_alloc memory calculation 2021-12-03 14:41:33 +08:00
JimMoen a7cd1ad30b fix(mgmt): node memory usage info 2021-12-03 14:41:33 +08:00
zhouzb e1bcbd012c feat(authn): support sync configuration in the cluster 2021-12-03 14:14:40 +08:00
zhongwencool 85a6f0f1e8
Merge pull request #6350 from zhongwencool/emqx-conf
feat: support eqmx_ctl cluster_call command.
2021-12-03 11:27:21 +08:00
zhongwencool 858891dbf5 fix: rewrite ct badmatch 2021-12-03 09:54:44 +08:00
zhongwencool f6c61189c4 chore(HTTP): prometheus or json format by accept header 2021-12-02 10:30:50 +08:00
JimMoen a58493f7a4 test(authz): fix test suite for schema check and app start 2021-12-02 10:12:10 +08:00
JimMoen effa3b8b90 style: make elvis happy 2021-12-02 10:12:10 +08:00
JimMoen d7ec368884 fix(authz): fix mongo resources create 2021-12-02 10:12:10 +08:00
JimMoen 68af284570 fix(authz): http source create and update 2021-12-02 10:12:10 +08:00
zhongwencool e7a7d64004 feat(conf): skip/fast_forward tnx_id via cluster_call cli 2021-12-02 09:30:27 +08:00
zhouzb b983a18cdf fix(auth): replace query with cmd 2021-12-01 20:24:43 +08:00
zhongwencool c1a7d7bede fix(conf): emqx_conf return nest error 2021-12-01 16:08:49 +08:00
zhongwencool 25c4f4aa4e
Merge pull request #6339 from zhongwencool/swagger-ct-test
chore(swagger): add test for sub fields
2021-12-01 14:12:14 +08:00
tigercl e888e1ef8d
Merge pull request #6338 from tigercl/fix/superuser
fix(authn): fix superuser when missing is_superuser_field
2021-12-01 14:00:56 +08:00
zhongwencool 1f6e2e7397 chore: add test for sub fields 2021-12-01 12:01:44 +08:00
zhouzb 6b8997cbda fix(authn): fix superuser when missing is_superuser_field 2021-12-01 09:23:36 +08:00
Zaiming (Stone) Shi d2fa0a71f4 refactor: give psk auth a better namespace 2021-12-01 00:33:20 +01:00
k32 a92970a904 feat(mria): Add RPC-related configuration to the schema 2021-11-30 21:59:59 +01:00
Ilya Averyanov 6b65151f69
Merge pull request #6325 from savonarola/test-authn-resources-scram
chore(authn): add SCRAM mechanism tests
2021-11-30 12:16:20 +03:00
lafirest e196f8150d
Merge pull request #6329 from lafirest/fix/event
fix(emqx_gateway): fix the function_clause error when client disconne…
2021-11-30 16:52:11 +08:00
lafirest cfe2954a88 fix(emqx_gateway): fix the function_clause error when client disconnect after connection created 2021-11-30 12:25:06 +08:00
tigercl 36cece7a49
Merge pull request #6314 from JimMoen/fix-re-escape
fix(authz): placehodler regular escape
2021-11-30 10:21:28 +08:00
Ilya Averyanov e6d7e59c18
Merge pull request #6278 from savonarola/test-authn-resources-mongo
chore(authn): add MongoDB backend tests
2021-11-29 22:27:52 +03:00
Ilya Averyanov 4941b4d1a0
Merge pull request #6316 from savonarola/test-authn-resources-jwt
chore(authn): add JWKS backend tests
2021-11-29 22:03:41 +03:00
Ilya Averyanov 0baec8e27d chore(authn): unify Mongo type parameter naming 2021-11-29 21:39:28 +03:00
Ilya Averyanov 390575eafb chore(authn): add MongoDB backend tests 2021-11-29 21:17:56 +03:00
Ilya Averyanov 4580c03ebc chore(authn): add SCRAM mechanism tests 2021-11-29 20:49:45 +03:00
JianBo He 581cb6ac5d
Merge pull request #6268 from HJianBo/reduce-case-logs
test(gw): reduce useless log print
2021-11-29 11:03:40 +08:00
Ilya Averyanov 726e25d6ae chore(authn): add JWKS backend tests 2021-11-26 18:40:21 +03:00
Thales Macedo Garitezi 284619ef86
Merge pull request #6310 from emqx/test-fix-possible-flakiness
test(flakiness): prevent possible flakiness in test

If the spawned process doesn't have enough time to be properly set up,
the returned stacktrace may be empty, making the test fail. By
synchronizing the startup, we know that the process will have a proper
stacktrace by the time of the assertion.
2021-11-26 08:09:05 -03:00
Ilya Averyanov 759b03a6ad
Merge pull request #6306 from savonarola/ct-output
chore(ct): remove verbose output during tests
2021-11-26 12:54:21 +03:00
JimMoen 1d3558ebe0 style: make elvis happy 2021-11-26 17:46:38 +08:00
zhongwencool f697028b70
Fix ping not return pong (#6285)
* fix: ./bin/emqx ping return pong

* chore: waiting longer for logger flush log to disk

* fix: change swagger page's limit from 100 to 1000

* chore: type wrong

* fix: sync log to disk by logger_disk_log_h:filesync
2021-11-26 17:02:45 +08:00
JimMoen b41c41570a fix(authz): placehodler regular escape 2021-11-26 15:39:42 +08:00
tigercl 124ba7a071
Merge pull request #6311 from emqx/release-5.0-beta.2
Sync bug fixes
2021-11-26 14:24:19 +08:00
tigercl 12d8ebcc15
Merge pull request #6303 from tigercl/fix/authn-jwt
fix(authn): fix jwt authn
2021-11-26 13:36:01 +08:00
zhouzb 349fd1608b style(authn): improve code formatting 2021-11-26 10:29:57 +08:00
Thales Macedo Garitezi d6288a0b70
test(flakiness): prevent possible flakiness in test
If the spawned process doesn't have enough time to be properly set up,
the returned stacktrace may be empty, making the test fail.  By
synchronizing the startup, we know that the process will have a proper
stacktrace by the time of the assertion.
2021-11-25 17:15:07 -03:00
Ilya Averyanov ea0fa24ce5 chore(ct): remove verbose output during tests 2021-11-25 18:30:50 +03:00
Ilya Averyanov e6c2600718 chore(authn): add HTTP backend tests 2021-11-25 15:09:13 +03:00
zhouzb ecd3c9f85c test(authn): add test cases for jwt authn 2021-11-25 19:03:11 +08:00
zhouzb 15654b5b28 fix(authn): add handling of invalid secret 2021-11-25 17:17:44 +08:00
zhouzb d88bfdfe14 fix(authn): verify claims type is wrong 2021-11-25 16:42:08 +08:00
JimMoen f74e34b6a5 fix(conf): change `max_topic_levels` default configuration 2021-11-25 10:11:24 +08:00
Thales Macedo Garitezi db3f7ff749
feat(sys_mon): remove `current_function`
Since we now output `current_stacktrace`, `current_function` is now
redundant.
2021-11-24 12:16:16 -03:00
Thales Macedo Garitezi a41d0d49bd
test(impossible_case): remove impossible case test
Since `emqx_vm:get_process_info/1` only accepts PIDs as arguments,
it's impossible for `emqx_sys_mon:procinfo/1` to return after
receiving the atom `undefined`.
2021-11-24 11:34:36 -03:00
Thales Macedo Garitezi 75a17431d5
feat(sys_mon): Add proc_lib:initial_call/1 and current_stacktrace
This adds the information from `proc_lib:initial_call/1` and the
current stacktrace from the process info to `emqx_sys_mon:procinfo/1`
to aid in debugging some warnings with no context such as the
following:

```
2021-11-23T12:33:59.387818+00:00 [warning] info: [{old_heap_block_size,45988046},{heap_block_size,22177879},{mbuf_size,0},{stack_size,40},{old_heap_size,22354134},{heap_size,7106339}], line: 130, mfa: emqx_sys_mon:handle_info/2, msg: large_heap, procinfo: [{pid,<0.2667.0>},{memory,579763664},{total_heap_size,68510672},{heap_size,22177879},{stack_size,40},{min_heap_size,233},{initial_call,{proc_lib,init_p,5}},{current_function,{gen,do_call,4}},{registered_name,[]},{status,running},{message_queue_len,360945},{group_leader,<0.1660.0>},{priority,normal},{trap_exit,false},{reductions,16493271},{last_calls,false},{catchlevel,4},{trace,0},{suspending,[]},{sequential_trace_token,[]},{error_handler,error_handler}]
```
2021-11-24 11:24:27 -03:00
Ilya Averyanov 3400a3b978
Merge pull request #6288 from savonarola/handle-authn-backends-own-validations
fix(authn): handle authn backends own validations
2021-11-24 15:18:11 +03:00
Ilya Averyanov ac3707e4a9 fix(authn): handle authn backends own validations 2021-11-24 14:05:46 +03:00
zhouzb fb6ab93f47 fix(dialyzer): fix redundant cases 2021-11-24 18:21:08 +08:00
zhouzb 261ca3d625 fix(connector): fix crash in health checking of mongo connection 2021-11-24 16:48:35 +08:00
DDDHuang 793da3d039 fix: add auto subscription swagger example 2021-11-24 16:47:33 +08:00
Tobias Lindahl ca89a8da61
Merge pull request #6274 from emqx/persistent-sessions-ram-backend
feat(persistent_sessions): add choice between ram or disc backends in…
2021-11-24 09:25:14 +01:00
JimMoen d7c7292321 fix(authz): placeholder regular replace 2021-11-24 11:10:30 +08:00
Ilya Averyanov 9f04ac5bfd
Merge pull request #6269 from savonarola/test-authn-resources-mysql-pgsql
chore(authn): add MySQL & PostgreSQL backend tests
2021-11-23 20:03:52 +03:00
Spycsh fda2e86187
Merge pull request #6107 from Spycsh/slog
chore: refactor slog under emqx, conf and exhook
2021-11-23 16:39:06 +01:00
Tobias Lindahl 9a97a7a1c7 chore(persistent_session): remove quotes around boolean in config 2021-11-23 16:24:40 +01:00
Tobias Lindahl df2dda2e10 chore(persistent_session): make more table creation parameterized 2021-11-23 16:23:47 +01:00
Tobias Lindahl 9eaedbf246 test(persistent_sessions): add back test groups lost in refactoring 2021-11-23 16:17:27 +01:00
Tobias Lindahl 46788ad31b chore(persistent_sessions): add descriptions of persistent session configs 2021-11-23 13:53:04 +01:00
Tobias Lindahl 0865fc6e57 test(persistent_sessions): increase wait time for cm unregister in test 2021-11-23 13:52:02 +01:00
Tobias Lindahl 6eb4a617bc test(persistent_sessions): make another attempt at fixing flaky test 2021-11-23 13:29:47 +01:00
zhouzb 4d92e2b6af fix(connector): fix options handling for mongo connector 2021-11-23 20:01:21 +08:00
Tobias Lindahl 08acb5d435 feat(persistent_sessions): add choice between ram or disc backends in mnesia 2021-11-23 11:51:21 +01:00
Ilya Averyanov 8cc0b43de7 chore(authn): add MySQL & PostgreSQL backend tests 2021-11-23 11:52:51 +03:00
JianBo He 27270ca679 test(gw): fix elvis warnings 2021-11-23 16:36:11 +08:00
JianBo He 5204a1c6d4 test(gw): reduce useless log print 2021-11-23 16:01:40 +08:00
zhongwencool ef0e440d27
feat: http trace api for 5.0 (#6200)
* feat: port log trace http api for 5.0

* fix: name must printable unicode len<256

* fix: check-nl-at-eof warning

* fix: handler_id always atom
2021-11-23 13:49:12 +08:00
DDDHuang 6a60c17970
fix: add lw gateway endpoint placeholder support (#6267) 2021-11-23 12:08:45 +08:00
Shawn af5002733b
Merge pull request #6256 from terry-xiaoyu/resource_metrics2
Add metrics to emqx_resource and emqx_bridges
2021-11-23 11:14:25 +08:00
Thales Macedo Garitezi d7725f799c
fix(flaky_test): improve live connection count test on CI (#6257)
* fix(flaky_test): improve live connection count test on CI

It seems that a race condition that is triggered more often in CI can
make the test fail, possibly due to the ETS write not being seen by
the subsequent read in the test.

* style(elvis): fix NL in emqx_connector.conf
2021-11-23 11:12:45 +08:00
DDDHuang 21bd9bba55
fix: generate palce holder (#6250)
* fix: generate place holder

* style: whitespace cleanup

* refactor(authz): placeholder for athuz

* test: authz test suite for placeholder

* fix: lw place holder suite

* fix: auth n redis suite

Co-authored-by: JimMoen <LnJimMoen@outlook.com>
2021-11-23 10:56:43 +08:00
Shawn 46838a08cc fix(resource): update testcases for after_query functions 2021-11-23 10:41:45 +08:00
Shawn 6fb464fc05
Merge pull request #6059 from tigercl/fix/ssl
fix(ssl): fix API returns the certificate file name instead of the certificate content
2021-11-23 10:38:12 +08:00
Shawn 9aa63358e6 fix(resource): type spec for resource_data() 2021-11-23 10:04:31 +08:00
Shawn 29ad6d215e feat(resource): add metrics to emqx_resource 2021-11-23 10:04:31 +08:00
Shawn 4c149f92c1 feat(bridge): support metrics for bridges 2021-11-23 09:36:10 +08:00
JianBo He 50542ec441
Merge pull request #6248 from HJianBo/gw-improve-apis-1
Add authentication data management APIs for gateway
2021-11-23 09:12:04 +08:00
zhouzb 5aa8ba45d3 fix(authn): add the case when the instance does not exist 2021-11-22 23:30:05 +01:00
zhouzb 2b282b9666 fix(ssl): Return the content of certificates in HTTP response 2021-11-22 23:30:05 +01:00
zhouzb 81d425cb27 fix(ssl): fix the issue that the content of TLS certificate is not converted to path 2021-11-22 23:30:05 +01:00
Spycsh c89a663b53 chore: refactor slog under emqx, conf and exhook 2021-11-22 23:12:17 +01:00
Zaiming (Stone) Shi c202688abf
Merge pull request #6258 from tigercl/chore/dashboard
chore(dashboard): disable by default
2021-11-22 22:34:26 +01:00
Ilya Averyanov 071c2c99e8 refactor(authn resources): add `emqx_resource` and `emqx_authn` tests 2021-11-22 21:08:04 +03:00
Zaiming (Stone) Shi b59ad6b186
Merge pull request #6252 from JimMoen/fix-clients-cluster-query
fix(mgmt): fix broken `ets:continuation` been sent between nodes
2021-11-22 15:28:16 +01:00
zhouzb 63f1d88ed3 chore(dashboard): disable by default 2021-11-22 22:23:06 +08:00
Shawn a0e81226d7 fix(elvis): improve some code format 2021-11-22 19:10:00 +08:00
Shawn 37aeb28a79 fix(connector): test case conflict 2021-11-22 18:52:43 +08:00
JianBo He 1e2eac0fce test(gw): add tests for authm data-mgmt 2021-11-22 17:38:59 +08:00
JianBo He 4eb27ce25b fix(gw): fix bad paging params 2021-11-22 17:38:59 +08:00
JianBo He 7d9930b64e feat(gw): support data-management apis gw's authn 2021-11-22 17:38:59 +08:00
JianBo He 4f752fb5ab chore(gw): fix elvis warnings 2021-11-22 17:38:59 +08:00
JianBo He f033fad7b3 refactor(gw): deps on emqx_dasboard_swagger 2021-11-22 17:38:59 +08:00
Shawn f0c61068e8 fix(authn): test cases issues 2021-11-22 17:35:33 +08:00
Shawn ea3c809287 fix(emqx_conf): merge issues 2021-11-22 17:35:33 +08:00
Shawn 07e3e43a21 fix(authn): xref issues 2021-11-22 17:35:33 +08:00
Shawn 9c93ea0338 feat(connector): add API for /connectors_test 2021-11-22 17:35:33 +08:00
Shawn c66c6b53b2 feat(connector): add APIs for connector 2021-11-22 17:35:33 +08:00
Shawn bcf5f499da feat(connector): add APIs for connector 2021-11-22 17:35:33 +08:00
Shawn 4dac90f4a7 refactor(bridges): add POST /bridges for creating 2021-11-22 17:35:32 +08:00
Shawn c4668b4047 fix(bridge): load emqx_conf in testcases 2021-11-22 17:35:32 +08:00
Shawn 339749764d fix(bridge): update the testcases for HTTP bridges 2021-11-22 17:35:32 +08:00
Shawn 7d64013edd refactor(connector): add connector configs 2021-11-22 17:35:32 +08:00
Shawn cf3f2c3057 fix(dialyzer): remote the extra str/1 2021-11-22 17:35:32 +08:00
Shawn e41736f5cb fix(bridge): update testcases for bridge APIs 2021-11-22 17:35:32 +08:00
Shawn 7996d8f709 refactor(bridge): rename the APIs for emqx_bridge 2021-11-22 17:35:32 +08:00
Shawn 1e6884ee7d fix(bridge): convert confs for http bridge when creating 2021-11-22 17:35:32 +08:00
Shawn f01f9632c1 fix(bridge): cannot start mqtt bridge from config 2021-11-22 17:35:32 +08:00
Shawn 63f942a1b8 feat(bridge): add descriptions to the mqtt bridge schema 2021-11-22 17:35:32 +08:00
Shawn 0cbdaa0f40 refactor(bridge): update config struct for mqtt bridge 2021-11-22 17:35:32 +08:00
Shawn d046f9c6e7 fix(bridge): improve the schema of connector_http 2021-11-22 17:35:32 +08:00
Shawn dd9e2c4b24 refactor(bridge): the configs for http bridges 2021-11-22 17:35:32 +08:00
Zaiming (Stone) Shi 90a65b8d04
Merge pull request #6242 from emqx/update-otp-version-and-pkg-name-scheme
Update otp version and pkg name scheme
2021-11-22 10:34:24 +01:00
JimMoen 08899552fe fix(mgmt): fix broken `ets:continuation` been sent between nodes 2021-11-22 17:16:12 +08:00
tigercl 6da039cf4f
Merge pull request #6231 from tigercl/fix/http-authn
fix(authn): fix pick worker error and match more http response
2021-11-22 09:10:44 +08:00
Ilya Averyanov 3d449b5acf fix(authn): create authn chain tab in start_link 2021-11-21 19:52:29 +03:00
Zaiming Shi 6ca6d60858 fix(dashboard): change hash from sha3_256 to sha256
old version os has no support for it
2021-11-20 21:21:11 +01:00
Zaiming Shi a705bc1fc7 build: change package name scheme
`${PROFILE}-${PKG_VSN}-otp${OTP_VSN}-${SYSTEM}-${ARCH}.zip`
2021-11-20 20:44:48 +01:00
Zaiming Shi f84d1aa75e style: fix some elvis style check 2021-11-20 20:41:06 +01:00
Zaiming Shi 6edd862dd5 refactor: no more EMQX_ENTERPRISE compile flag
The compile flag was introduced in EQM X 4.3 series
where CE and EE code was diverged large enough which made
non-practicle to determin edition at runtime.

such approach made testing quite challenging as we'll have to
build with different compile flags inorder to run per-edition
test cases

In this commit, we try to retrieve edition info from EMQX's
description text, (put to PT for fast access) at runtime
so we can test ALL editions from a super-set edition (EE).
2021-11-20 20:41:06 +01:00
Ilya Averyanov 8621257809
Merge pull request #6240 from savonarola/reinit-authn-1
fix(authn): transfer chain tab to emqx_authentication_sup
2021-11-19 19:57:14 +03:00
Ilya Averyanov c86887491c fix(authn): transfer chain tab to emqx_authentication_sup
To preserve configuration after emqx_authentication crashes.
2021-11-19 16:41:22 +03:00
k32 c9a59968ef refactor(emqx_schema): Code style 2021-11-19 11:41:29 +01:00
k32 deccba3406 fix(schema): Improve configuration of the internal DB 2021-11-19 11:41:08 +01:00
tigercl a074cf24d0
Merge pull request #6219 from tigercl/fix/authz-certs
fix(authz): fix badmatch when reading certs
2021-11-19 11:25:29 +08:00
zhouzb 980a6ceae9 fix(authn): fix pick worker error and match more http response 2021-11-19 11:19:52 +08:00
JianBo He 905e58c93a
Merge pull request #5997 from HJianBo/gw-fixes-part3
Gateway improvement part.3
2021-11-19 09:29:51 +08:00
zhouzb 47851c2430 fix(authz): fix badmatch when reading certs 2021-11-18 14:36:59 +08:00
JimMoen e361cd5733
Fix dashboard APIs return (#6177)
* fix(dashboard_api): delete non-exist user wrongly return 204

* fix(dashboard): dashboard user should use `tags` not `tag`

* fix(dashboard): create/update user return 200 with full users list

* fix(dashboard): logout status code 204

* fix(dashboard): update pwd status code 204

* test: test suite for dashboard APIs

* refactor(dashboard): user info mnesia record name use description

* style: make elvis happy

* fix(api): dashboard swagger check request should not override env

* fix(dashboard): add/modify dashboard returns single record

* ci: update emqx-fvt version to new tag 1.0.2-dev1
2021-11-18 14:36:12 +08:00
JimMoen 53b51e31f0 fix(api_schema): add authn mongo missing fields 2021-11-18 12:41:40 +08:00
zhongwencool 33f5eec802
feat: set keepalive via http api (#6171)
* feat: set keepalive via http api

* fix: make cluster_rpc test case solider
2021-11-18 10:56:58 +08:00
Zaiming (Stone) Shi 8d653b6d39
Merge pull request #6173 from zmstone/refactor-retainer-use-ordered-set
[5.0] refactor(retainer): use ordered_set Mnesia table type
2021-11-18 00:28:57 +01:00
Tobias Lindahl e52d8138bf test(persistent_session_SUITE): fix another flaky test
Make sure that the connection process dies before terminating the
snabbkaffe trace.
2021-11-17 14:04:06 +01:00
Tobias Lindahl 5914b8ad3d
Fix flaky tests for persistent sessions (#6202)
* test(persistent_session_SUITE): remove redundant sleep and trap_exits

* test(persistent_session_SUITE): fix race for started snabbkaffe

Sometimes snabbkaffe was not started when publishing from a different
process. Wrap the publishing code in a ?check_trace to make sure it is
started, and make sure the publish process is truly down before ending
the trace.

* test(persistent_session_SUITE): fix takeover race

Make sure the previous session is unregistered before trying to
connect again. Sometimes the new session was trying to take over the
session that was shutting down still.
2021-11-17 18:55:11 +08:00
tigercl 7950e26774
Merge pull request #6193 from tigercl/feat/mongo-srv-5.0
feat(mongo srv): support srv record for mongo connector
2021-11-17 15:42:01 +08:00
JianBo He ad2dbb5a49 chore(gw-sn): append messge headers 2021-11-17 14:51:27 +08:00
zhongwencool 04c204374a
chore: All placeholders are placed in the same header file (#6190)
* chore: All placeholders are placed in the same header file

* feat: Separate placeholders from the rules engine
2021-11-17 14:40:48 +08:00
zhongwencool a7a5e2d1f4
fix: can't get default key if all key if default (#6181) 2021-11-17 14:27:51 +08:00
JimMoen 57075902a3
fix(mgmt_api): kickout non-existing clientid should return code `404` (#6180) 2021-11-17 12:29:27 +08:00
zhouzb f8a625a67f feat(mongo srv): support srv record for mongo connector 2021-11-17 12:12:30 +08:00
JianBo He d0bdf27e0c chore: fix elvis warnings 2021-11-17 11:04:09 +08:00
DDDHuang 7c48bcabed
fixt: generate api (#6124)
* fix: generate api

* fix: banned suite

* fix: generate api bad rpc

* fix: bad message suite

* fix: create banned with check existed
2021-11-17 10:55:48 +08:00
JianBo He f23d2f2c92 chore: refine case side-effect 2021-11-17 10:46:46 +08:00
JianBo He 814e01c0cb test(authz): deps on emqx_conf instead of meck emqx_schema 2021-11-17 10:46:38 +08:00
Tobias Lindahl ae5792fa64 chore(emqx_cm): remove unused tracepoints 2021-11-16 14:37:15 +01:00
Tobias Lindahl c9b86a8375 test: make testcases not rely on timer:sleep 2021-11-16 13:50:01 +01:00
Tobias Lindahl 05f3bc8c90 fix(emqx_cm): make takeover session less likely to hit a race 2021-11-16 13:49:45 +01:00
JimMoen c0e388e52a style: make elvis happy 2021-11-16 19:35:35 +08:00
Zaiming Shi ac693c0dcb refactor(retainer): use ordered_set Mnesia table type
ordered_set is compatible to set in all the existing APIs
and in addition, it provides a more deterministic traversing
cursor in case we want to change the current dirty_select
based "select ALL" implementation
2021-11-16 12:33:59 +01:00
JimMoen 1dc0a2e8b5 fix(mgmt_api): kickout non-existing clientid should return code `404` 2021-11-16 17:32:12 +08:00
JianBo He 883c1b2e59 chore(gw): remove needless lines 2021-11-16 10:00:54 +08:00
JianBo He cf1d98adc6 chore(gw): save cert files 2021-11-16 10:00:54 +08:00
JianBo He 5a08fa6a03 docs(gw): add gateway comment 2021-11-16 10:00:54 +08:00
JianBo He 1f067d6f3b docs(gw): add docs for gateway schema 2021-11-16 10:00:54 +08:00
JianBo He bc3f3b4c55 test(gw): more robust testing 2021-11-16 10:00:53 +08:00
JianBo He 287859fe36 chore(gw): integrate emqx-conf 2021-11-16 09:58:37 +08:00
JianBo He 0b36b73ee1 fix(emqx_conf): fix badmatch for returned error value 2021-11-16 09:58:37 +08:00
JianBo He cf17a55079 chore(gw): rename cm-registry shard name 2021-11-16 09:58:37 +08:00
JimMoen c05ecdbcb8
fix(api): DELETE success wrongly returned code 200 (#6135) 2021-11-16 09:28:57 +08:00
Zaiming Shi ff23e9dde1 test: sync with emqx_cm process before flushing emqx_pool 2021-11-15 22:27:16 +01:00
JianBo He a113b9b65d chore: fix elvis warnings 2021-11-15 22:26:46 +01:00
JianBo He 9e333ac8b3 fix(emqx_cm): fix typos 2021-11-15 22:26:46 +01:00
Zaiming Shi dd771c5568 fix(emqx_mgmt_cli): idempontent kick. now it always returns ok 2021-11-15 22:26:46 +01:00
Zaiming Shi 7e2ca9e287 fix(session): force kill session for 'kick' and 'discard'
Prior to this fix, 'kick' and 'discard' calls may timeout (or
fail for other reason), failures lead to only a log, then
continue to allow the new session to get registered.

As a result, in case a client is stuck, there is no way to
force it to step down, end up with multiple connections (sessions)
for the client ID in dashboard.

After this fix, the stale pids are notified to shutdown
via a gen_server:call, and forced with a exit(Pid, kill) for any
exception happend to the gen_server:call
2021-11-15 22:26:46 +01:00
Zaiming (Stone) Shi 650905667b
Merge pull request #6172 from JimMoen/fix-emqx_cm-ct
test: add tasks flushing in emqx_cm cases
2021-11-15 17:17:27 +01:00
JimMoen cf80aaacc3 test: add tasks flushing in emqx_cm cases 2021-11-15 20:40:43 +08:00
Zaiming (Stone) Shi 9761fe2f6d
Merge pull request #6009 from tigercl/fix/authn
fix(authn): fix handling of query result
2021-11-15 13:32:56 +01:00
JimMoen dcc5ae0642 test: API return code section 2021-11-15 16:30:44 +08:00
JimMoen b3f9220d02 style: make elvis happy 2021-11-15 16:30:44 +08:00
JimMoen 106aa559e0 fix(api): DELETE success wrongly returned code 200 2021-11-15 16:30:44 +08:00
JimMoen 59e6b6ee5b
test(cm): add sleep time for multicore scheduling (#6164) 2021-11-15 15:43:26 +08:00
DDDHuang 1476accd63
fix: monitor bad mnesia write & rpc call (#6060) 2021-11-15 15:28:19 +08:00
zhongwencool 01f29ab052
chore(swagger): lwm2m2 http api to hocon (#6153) 2021-11-15 15:08:50 +08:00
JimMoen 5a928ad8c3 test(cm): add sleep time for multicore scheduling 2021-11-15 13:52:15 +08:00
DDDHuang f0107868d4
fix: test suite stable (#6136)
* fix: test suite stable
2021-11-12 10:53:30 +08:00
JimMoen 9b17757ae8 style: make elvis happy 2021-11-12 09:29:26 +08:00
JimMoen 37cdd429b2 fix(api): remove sessionID from client information 2021-11-12 09:29:26 +08:00
DDDHuang bc6e49804f
feat: support CORS request
feat: support CORS request
2021-11-11 20:27:39 +08:00
zhongwencool 7a5da76197
Mgmt http api banned (#5998)
* fix(swagger): don't transform [log,publish] to a list.pwd

* chore: replace banned-api by hocon schema

* fix(api): code style warning
2021-11-11 16:35:29 +08:00
JimMoen a65597e302
Authz api mnesia refactor (#6082)
* refactor(authz): macro move to hrl and rename, add meta example

* refactor(authz_api_mnesia): use config schemas for request validations

* chore(authz_api_mnesia): suite module typerefl fit

* chore(style): authz_api_mnesia style format
2021-11-11 16:29:36 +08:00
Zaiming Shi b96a106463 style: make elvis happy 2021-11-10 22:54:58 +01:00
Zaiming Shi 9c1972020c test: fix flaky test emqx_stomp_SUITE:t_rest_clienit_inf 2021-11-10 22:51:18 +01:00
Ilya Averyanov 4f0311b6f8
Merge pull request #6093 from savonarola/add-authn-tests
chore(authn mnesia): reimplement emqx_authn_mnesia provider tests
2021-11-10 21:20:46 +03:00
Ilya Averyanov a0a88e23b0 chore(authn mnesia): reimplement emqx_authn_mnesia provider tests 2021-11-10 17:13:04 +03:00
Thales Macedo Garitezi 60d5017eea
style(elvis): fix elvis style complaints 2021-11-10 11:12:10 -03:00
Thales Macedo Garitezi 8fe342a02d
feat(stats): track live channel / client count
Track connected client count

In order to correctly display the number of _connected_ clients in our
monitor dashboard, we need to track those connections that are
actually connected to clients, not considering connections from
persistent sessions that are disconnected. Today, the
`connections.count` that is displayed in the dashboards considers
those disconnected persistent sessions as well.

The new statistics can be found in the
[`emqx_management`](https://github.com/emqx/emqx/tree/main-v4.4/apps/emqx_management)
plugin, under `/api/v4/stats`, in the keys
`live_connections.{max,count}`.
2021-11-10 11:12:10 -03:00
lafirest e8f6035c34
feat(emqx_lwm2m): add some lwm2m api (#6047) 2021-11-10 14:20:33 +08:00
zhongwencool 2d159ad9a1
fix(test): flaky mqtt expiry test case. (#6099) 2021-11-10 09:55:36 +08:00
JimMoen ac23214447
fix(api): config api on sepcific node (#6100)
* fix(api): config api on sepcific node

* chore(style):  code style for elvis checking
2021-11-10 09:38:45 +08:00
zhongwencool eea789451b
feat: sha3_256 dashboard account's password (#6084) 2021-11-09 15:41:28 +08:00
Ilya Averyanov 0f8ad29e91
Merge pull request #6078 from savonarola/auth-api-schema-examples
refactor(authn api): add more schema examples
2021-11-08 19:44:02 +03:00
zhongwencool b873b92717
fix(test): cluster_rpc retry interval incorrect (#6038) 2021-11-08 23:23:17 +08:00
k32 5726444645
Merge pull request #6066 from k32/remove-nosuspend-5
fix(emqx_connection): Add backpressure to TCP connections
2021-11-08 13:39:38 +01:00
Ilya Averyanov a84b84aac9 refactor(authn api): reformat for elvis compliance 2021-11-05 19:36:26 +03:00
Ilya Averyanov 1e036bf74d refactor(authn api): add more schema examples 2021-11-05 16:12:14 +03:00
Zaiming (Stone) Shi 3b02366a5b
Merge pull request #6064 from zmstone/style-check-newline-at-eof
Style: check newline at EOF
2021-11-04 18:01:45 +01:00
k32 0a5a9bd7d0 fix(emqx_connection): Add backpressure to TCP connections
Fixes #5494
2021-11-04 16:24:47 +01:00
Zaiming Shi d1abb30818 ci: fix elvis check 2021-11-04 15:27:10 +01:00
Zaiming Shi 56e2a9741f style: ensure newline at EOF for all files 2021-11-04 14:40:14 +01:00
zhouzb 48ddd056b5 test(authn): add test cases for authn 2021-11-04 10:03:34 +08:00
zhouzb ca4bb100ec fix(authn): fix bad parsing for postgresql SQL 2021-11-04 10:01:54 +08:00
Ilya Averyanov aed9ad3f7d
Merge pull request #6037 from savonarola/fix-authn-api-atom-leak
fix(authn api): eliminate possible atom leak
2021-11-03 23:17:47 +03:00
Zaiming Shi a139a0d453 fix(config): pin hocon 0.20.6
fix translation error
2021-11-03 11:15:35 +01:00
Tobias Lindahl 89cd68d36f refactor(persistent_sessions): fix coding style 2021-11-02 09:33:54 +01:00
Tobias Lindahl 8385eff98e fix(persistent_sessions): we only need to persist if the session expired 2021-11-02 09:27:50 +01:00
Tobias Lindahl b7ed649185 test(persistent_session): wait in test to avoid race 2021-11-01 14:56:10 +01:00
Ilya Averyanov 796553b5ea fix(authn api): eliminate possible atom leak 2021-11-01 16:51:48 +03:00
Tobias Lindahl ce49a281ed fix(persistent_sessions): protect against looking up stale data 2021-11-01 14:21:01 +01:00
Tobias Lindahl 329dd4d780 test(persistent_session): try to fix flaky snabbkaffe failure 2021-11-01 14:21:01 +01:00
Tobias Lindahl 1f13a6caad chore(persistent_sessions): tune mnesia parameters for better dump behavior 2021-11-01 14:21:01 +01:00
Tobias Lindahl ec68d7fc58 test(persistent_sessions): stabilize flaky tests 2021-11-01 14:21:01 +01:00
Tobias Lindahl 7ae6e04582 fix(persistent_sessions): channels can terminate without a session 2021-11-01 14:21:01 +01:00
zhouzb 29fb9b3361 fix(authn): fix bad type of hash 2021-11-01 18:49:13 +08:00
Ilya Averyanov 800b4b32c7
refactor(authn api): use config schemas for request validations (#5999) 2021-11-01 17:52:03 +08:00
JimMoen d9cb0283f3 fix(alarm): duration unit in dashboard, microsecond => millisecond 2021-10-29 16:48:13 +08:00
zhouzb c64637ca39 test(authn): add test case of version checking 2021-10-29 14:18:25 +08:00
zhouzb 966348db05 fix(authn): fix version switching error when updating multiple times 2021-10-29 10:12:29 +08:00
zhongwencool e62fde321c
Emqx alarm (#5994)
* chore(alarm): normalize_message outside emqx_alarm

* chore(alarm): don't cache config in emqx_alarm; remove dirty_write/read; add desc/example to alarm; add more test

* chore(alarm_api): alarm_api with hocon schema

* fix: activted's nullable is true

* fix(swagger): translate map to object

* fix(cluster_rpc): debug failed cluster_rpc test

* fix: Update schema description

Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>

Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2021-10-28 18:03:51 +08:00
William Yang 2c69c00906
Merge pull request #6010 from qzhuyan/perf/William/pool-worker-pickup
During the benchmark test of ehttpc, we found the gproc's random pool or round-robin pool doesn't scale well.

This PR makes emqx prefer to use the hash pool.

changed:

retainer pool: from random to hash
connector : from random to hash (default)
bridge : from random to hash (default)
authn_http : from random to hash (example)

unchanged:
worker pool type: hash
broker pool type: hash
resource type: hash
exproto type: hash
dashboard type: hash
2021-10-28 09:40:14 +02:00
Tobias Lindahl 48c7788d6f
Merge pull request #5875 from emqx/extend-persistent-sessions
Extend persistent sessions
2021-10-27 09:12:13 +02:00
zhouzb a712daaebc fix(authn): fix bad list comprehension 2021-10-27 15:08:02 +08:00
William Yang 5e6dab435a perf(pool): authz http example pool_type to hash 2021-10-27 08:48:41 +02:00
William Yang 9c8cd6c437 perf(pool): change emqx_connector default pool type to hash 2021-10-27 08:47:02 +02:00
William Yang 34979c51d7 perf(config): emqx_bridge default hash pool 2021-10-27 08:45:13 +02:00
William Yang 1c93331e34 perf(pool): emqx_authn_http pool type hash 2021-10-27 08:43:34 +02:00
William Yang edc1581b4b perf(pool): change emqx_retainer_pool type to hash 2021-10-27 08:26:02 +02:00
zhouzb 7311132d49 fix(authn): fix handling of query result 2021-10-27 09:22:17 +08:00
Zaiming (Stone) Shi 4dbe3ccf71
refactor(dashboard): rename 'password' field to 'pwdhash' (#5990)
* refactor(dashboard): rename 'password' field to 'pwdhash'

rename as it is not plaintext password stored in db

* refactor(emqx_dashboard): rename records

* test(emqx_dashboard_token): add test case to cover match specs
2021-10-26 20:41:33 +08:00
Tobias Lindahl 99836b2660 fix(persistent_sessions): add back the trap_exit 2021-10-26 10:52:27 +02:00
JimMoen 4a07d5e1f3 refactor(paginate): use exported fun call `{M,F}` 2021-10-26 16:16:37 +08:00
JimMoen 3683ba13ee fix(authn): users pagination on spec listener_id and authn_id 2021-10-26 16:16:37 +08:00
JimMoen eb452bd237 feat(authn_scram): authn_scram users page query 2021-10-26 16:16:37 +08:00
JimMoen 0bd5cd9336 feat(authn): authn users page query 2021-10-26 16:16:37 +08:00
JimMoen a399ac20e9 fix(authn): api description using binary string 2021-10-26 16:16:37 +08:00
Tobias Lindahl 558416af1d chore(persistent_sessions): remove redundant trap_exit flag 2021-10-26 10:01:02 +02:00
Tobias Lindahl 28417ad1d7 fix(persistent_sessions): allow for some failures of workers 2021-10-26 09:55:57 +02:00
Tobias Lindahl 234641ccf4 refactor(persistent_sessions): don't start session sup when disabled 2021-10-26 09:54:41 +02:00
Tobias Lindahl e3dc9b3f4f fix(persistent_sessions): start the message gc timer 2021-10-26 09:53:49 +02:00
Tobias Lindahl f39ccfb304 chore(persistent_sessions): address review comments 2021-10-26 09:53:18 +02:00
JimMoen c5142a6d11 fix(authz): add license headers 2021-10-26 14:30:39 +08:00
JimMoen f44bda806a chore(authz): fix test suite page params 2021-10-26 14:02:19 +08:00
JimMoen be6ba14ddf fix(authz): authz rules page query 2021-10-26 14:02:19 +08:00
JianBo He b36865e970 fix(api): escape the searching string 2021-10-26 10:34:03 +08:00
Zaiming (Stone) Shi 666b319729
Merge pull request #5989 from zmstone/refactor-ssl-certs-lib
refactor(tls): move ssl files handling to emqx_tls_lib
2021-10-25 12:42:29 +02:00
Zaiming (Stone) Shi a0e77d22b0
fix: typo in apps/emqx_authz/src/emqx_authz.erl
Co-authored-by: Rory Z <Rory-Z@outlook.com>
2021-10-25 08:57:44 +02:00
zhanghongtong 3c2292e74f chore(authz): add more test case 2021-10-25 13:43:28 +08:00
zhanghongtong a2da746bf9 chore(authz): implement create_dry_run in other function clause
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-10-25 13:43:28 +08:00
zhanghongtong 2307bdd868 fix(emqx_resource): fix InstId type error 2021-10-25 13:43:28 +08:00
zhanghongtong 198ae4c782 fix(authz): fix configuration could be updated with incorrect values
when updating the configuration, first check with emqx_resouce:create_dry_run/2

Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-10-25 13:43:28 +08:00
tigercl 0d53ea9db7
Merge pull request #5974 from tigercl/fix/mysql-query
fix(authn): fix sql parse for mysql
2021-10-25 10:38:15 +08:00
Zaiming Shi a7413bc11e fix(authn): save certificates to certs dir 2021-10-24 16:21:57 +02:00
Zaiming Shi 71d2e6bebd refactor(authz): call emqx_tls_lib to save & read SSL files 2021-10-24 10:44:47 +02:00
Zaiming Shi a7771afd9d refactor(tls): move ssl files handling to emqx_tls_lib
This is an attempt ot make it more generic for other APPs to use.
Aslo added test cases to cover most of the code paths.
2021-10-23 18:20:38 +02:00
firest d0950b9b9d fix(emqx_telemetry): add default value to get_value 2021-10-23 00:24:07 +08:00
Zaiming (Stone) Shi bdeb1685e0
Merge pull request #5977 from zmstone/chore-pin-hocon-0.20.5
Pin hocon 0.20.5
2021-10-22 16:36:12 +02:00
zhongwencool 90795a6f42
Rewrite http api with hocon schema (#5980)
* feat: rewrite http api with hocon

* fix: crash when default_username is empty

* chore: udpate rewrite api with emqx_conf's cluster_rpc

* fix: spec wrong
2021-10-22 17:01:29 +08:00
Zaiming Shi 0937c81632 test: fix emqx_config_SUITE 2021-10-22 09:45:01 +02:00
Tobias Lindahl 64787f4ccd test(persistent_session): fix bad guard 2021-10-22 01:03:08 +02:00
Tobias Lindahl 10de564abf test(persistent_sessions): test websocket connection 2021-10-22 00:46:58 +02:00
Zaiming Shi aa6053291e fix(schema): add roots for emqx_zone_schema
emqx_zone_schema is never used at root level, but for config doc
generation, it needs the roots.
2021-10-21 23:11:02 +02:00
Zaiming Shi b03b0717ce docs: authenticator_config ref link to the struct 2021-10-21 23:11:02 +02:00
Zaiming Shi f9b211cce6 chore: pin hocon 0.20.5
for two changes:
default string values are filled with binary() instead of [integer()]
better reference links in config document
2021-10-21 23:09:51 +02:00
Tobias Lindahl 9188f5b67e fix(persistent_sessions): postpone table creation until configs are loaded 2021-10-21 15:23:22 +02:00
Tobias Lindahl fe4d14303c fix(persistent_session): fix rebase error 2021-10-21 15:23:22 +02:00
Tobias Lindahl ec429857e0 refactor(persistent_sessions): code format changes after review 2021-10-21 15:23:21 +02:00
Tobias Lindahl 655d31726a feat(persistent_session): add early removal of delivered message 2021-10-21 15:23:21 +02:00
Tobias Lindahl b9b8111edb test: add new proper types to #session{} after rebase 2021-10-21 15:23:21 +02:00
Tobias Lindahl fd71bc50ab fix(persistent_session): Make sure to discard expired sessions on reconnect 2021-10-21 15:23:21 +02:00
Tobias Lindahl f2d26f5e03 test(persistent_sessions): Remove bogus stopping of quicer 2021-10-21 15:23:21 +02:00
Tobias Lindahl 12639addb9 fix(persistent_session): Make sure the connection processs is dead 2021-10-21 15:23:21 +02:00
Tobias Lindahl ed0f435546 chore(persistent_sessions): correct copyright information in new files 2021-10-21 15:23:21 +02:00
Tobias Lindahl fdba441f4f fix(persistent_sessions): revert bogus table type change 2021-10-21 15:23:21 +02:00
Tobias Lindahl 7808ffe600 fix(persistent_sessions): protect (un)subscribe from calling session router 2021-10-21 15:23:21 +02:00
Tobias Lindahl 7b394267dd feat: persistent sessions stored in mnesia
* Persistent sessions can survive node/connection process down
* Internal SessionID is generated, external ClientID is as before
* Sessions are persisted to mnesia
* A session router is added in parallel to the ordinary router
* Messages that are subscribed to by a persistent session are
  persisted by publisher
* Information about persisted and delivered messages are stored in
  mnesia per session.
* A resume protocol similar to takeover is implemented for resuming
  from mnesia
* Can be configured (and enabled) by the top lever config
  "persistent_session_store"
2021-10-21 15:23:21 +02:00
Tobias Lindahl fc7b4c0009 refactor: make it possible to use different tries
In preparation for persistent sessions
2021-10-21 15:23:21 +02:00
Tobias Lindahl 24e870672c refactor: use set_session in preparation for persistent sessions 2021-10-21 15:23:21 +02:00
Ilya Averyanov e37ecc10a6 style(behaviour attrs): unify behaviour declarations 2021-10-21 15:10:59 +03:00
zhongwencool d784e63b9f
emqx_conf (#5939)
* feat(emqx_conf): move conf manager for emqx_machine to emqx_conf

* chore(emqx_conf): change emqx:get_config/2 to emqx_conf:get/2

* fix: common test failed

* fix: badmatch by typo wrong key

* fix(emqx_conf): get the wrong core nodes

* fix(emqx_conf): get core node's tnx_id not latest tnx_id

* fix: add ro_transation when copy conf file

* fix: delete debug info

* fix: change ekka_rlog to mria_rlog

* fix: remove cluster_rpc from emqx_machine.

* fix: don't call ekka:start/0 explicitly

* fix: ekka should be start in emqx_machine
2021-10-21 18:08:51 +08:00
zhouzb 7fdcca587a fix(authn): fix handling of pgsql response 2021-10-21 17:41:16 +08:00
zhouzb e071a10fee fix(authn): no longer use single quotes to wrap placeholders 2021-10-21 17:14:08 +08:00
zhouzb 3a834a822f fix(authn): fix sql parse for mysql 2021-10-21 17:07:24 +08:00
k32 9fdd5e6a7e
fix(emqx_machine): Fix start/stop callbacks (#5969)
* fix(emqx_machine): Fix start/stop callbacks

* chore(ekka): Bump version to 0.11.1

* fix(router): Wait for the tables

* fix(emqx_cluster_rpc): Stop cluster RPC when joining a cluster

* fix(emqx_app): Fix a deadlock when joining the cluster

* fix(emqx_telemetry): Wait for mnesia tables

* test(ct_helper): Start ekka before emqx
2021-10-21 14:49:21 +08:00
Zaiming (Stone) Shi ed069cfecc
Merge pull request #5963 from zmstone/refactor-authn-schema
refactor(authn): check authenticator config with provider module
2021-10-21 08:07:48 +02:00
tigercl 45b484a26a
Merge pull request #5967 from tigercl/fix/authn-mysql
fix(authn): fix placeholders are not replaced correctly
2021-10-21 10:20:05 +08:00
zhouzb ef731c74eb chore(deps): unify version of hocon 2021-10-21 09:35:00 +08:00
William Yang 7b3537d822
Merge pull request #5966 from qzhuyan/dev/william/lc-0.1.2
feat(olp): bump to 0.1.2
2021-10-20 21:57:31 +02:00
Zaiming Shi ce5b456872 refactor(authn): make schema doc generation work 2021-10-20 17:42:06 +02:00
Zaiming Shi fa91e5f583 fix(authn): allow single authenticator instance from config 2021-10-20 15:06:08 +02:00
Zaiming Shi d468c21e61 fix(authn): rename config key http-server to http 2021-10-20 14:36:37 +02:00
Zaiming Shi 019b9d17f6 refactor(emqx_config_handler): async remove 2021-10-20 14:12:46 +02:00
k32 8e58699ff5
Merge pull request #5937 from k32/mria
feat(mria): Replace ekka_mnesia with mria
2021-10-20 13:15:23 +02:00
Zaiming Shi 88d891a59a feat: support check_config callback for authenticator provider 2021-10-20 13:04:55 +02:00
Zaiming Shi 72c26931d7 fix: fill string fields' default value with binary 2021-10-20 11:52:30 +02:00
Zaiming Shi 1b9c082563 refactor(authn): check authenticator config with provider module
mainly two changes:

1. the schema is simplified at root level, per-authenticator checks
   are done after the type can be identified
2. the config handling part is split out from emqx_authentication
   module to emqx_authentication_config module
2021-10-20 10:13:11 +02:00
Zaiming (Stone) Shi e2f9b111b6
Merge pull request #5944 from Spycsh/slog
chore: change to structured logging under apps/emqx/authz and authn
2021-10-20 07:25:40 +02:00
JianBo He 9d4268e5e6 test(gw): ensure subscription established 2021-10-20 10:40:35 +08:00
JianBo He 7c04dbc585 test(gw): eliminate side effect between tests 2021-10-20 10:40:35 +08:00
JianBo He 69df027ee9 chore(gw): use SLOG to replace LOG 2021-10-20 10:40:35 +08:00
JianBo He 2416fa4e13 chore(gw): return 204 if no authn config 2021-10-20 10:40:35 +08:00
JianBo He 46e0609544 test(gw): add clients HTTP-API tests 2021-10-20 10:40:35 +08:00
JianBo He 6f0d0ab473 test(gw): eliminate side effect between tests 2021-10-20 10:40:35 +08:00
JianBo He 1cf833e1c0 test(gw): ensure emqx_authn starting state 2021-10-20 10:40:35 +08:00
JianBo He 7b211d35b8 test(gw): add basic tests for http-api 2021-10-20 10:40:35 +08:00
JianBo He e56cbd8a30 chore(gw): refine test case 2021-10-20 10:40:35 +08:00
JianBo He 49adf2f7d2 chore(gw-lwm2m): set qmode to duration_s type 2021-10-20 10:40:35 +08:00
JianBo He e4adc07add chore(gw-exproto): refactor ssl options 2021-10-20 10:40:35 +08:00
JianBo He ac42a91fc2 chore(gw-exproto): retry the closed grpc stream 2021-10-20 10:40:35 +08:00
JianBo He fc2e358f01 chore(gw): add ssl feilds for exproto 2021-10-20 10:40:35 +08:00
JianBo He b637764095 chore(gw): return unloaded status instead of 404 2021-10-20 10:40:35 +08:00
JianBo He ec4198c91c feat(gw-lw): return the special fields for lwm2m 2021-10-20 10:40:35 +08:00
JianBo He 92a5c333af chore(gw-lwm2m): store lifetime in clientinfo 2021-10-20 10:40:35 +08:00
JianBo He cfc905aa1a fix(gw): insert channel info into ets table 2021-10-20 10:40:35 +08:00
zhouzb 4ae38b7c6a fix(authn): fix placeholders are not replaced correctly 2021-10-20 10:14:47 +08:00
Spycsh ac51ed81b7 chore: change to structured logging under apps/emqx/authz and authn 2021-10-20 10:00:13 +08:00
Zaiming Shi 9c414096c7 test(authz): test HTTP apis for built-in-database 2021-10-20 09:17:21 +08:00
Zaiming Shi 0fcb3a1e93 docs: add more schema docs for authz 2021-10-20 09:17:21 +08:00
Zaiming Shi 0cf5aa5611 test: remove cuttlefish code 2021-10-20 09:17:21 +08:00
Zaiming Shi ae854db02d test: fix match pattern of returned rules 2021-10-20 09:17:21 +08:00
Zaiming Shi 891a185eda test: enable emqx_authz_api_mnesia_SUITE tests 2021-10-20 09:17:21 +08:00
William Yang d3ddecb144 feat(olp): bump to 0.1.2
remove noop logging
2021-10-19 21:20:12 +02:00
Zaiming Shi 2e01eeb6b4 fix(emqx_schema): typo in nullable prop 2021-10-19 15:42:34 +02:00
William Yang c780a1a53c
Merge pull request #5957 from qzhuyan/dev/william/quic-0.0.9
feat(quic): bump quicer 0.0.9
2021-10-19 14:52:08 +02:00
William Yang 56d8e0f59f feat(quic): bump quicer 0.0.9 2021-10-19 13:54:43 +02:00
k32 b3a8753219 fix(mria): Replace mnesia calls with mria 2021-10-19 12:24:35 +02:00
Shawn d1b3377c52 fix(mongo): update the health check method 2021-10-19 15:52:36 +08:00
JimMoen a8bb2a60b0 fix(gateway_api): client ip and port as two fields when clients query 2021-10-19 15:36:02 +08:00
JimMoen 6fb1d22e0c fix(mgmt_api): client ip and port as two fields when clients query 2021-10-19 15:36:02 +08:00
tigercl bd53c488d1
Merge pull request #5950 from tigercl/fix/authn-version
fix(authn): fix the authentication instance cannot run after the update
2021-10-19 09:58:09 +08:00
zhouzb 31e2d9d2c0 fix(authn): fix the authentication instance cannot run after the update 2021-10-19 09:05:54 +08:00
k32 0d2d5f6bf9 fix(emqx_alarm): Wait for tables 2021-10-18 22:40:18 +02:00
k32 37a1c45af0 fix(dialyzer): Fix problems found by dialyzer 2021-10-18 22:04:05 +02:00
k32 07ea6e5689 fix(mria): Fix startup sequence 2021-10-18 22:04:05 +02:00
k32 fcdf10080d chore(ct): ekka_mnesia -> mria_mnesia 2021-10-18 22:04:05 +02:00
k32 73a4816d9c fix(mria): Hook up mria to emqx_machine 2021-10-18 22:04:05 +02:00
k32 7086135ec8 chore(mria): Remove the obsolete annotiation 2021-10-18 22:04:05 +02:00
k32 d14b8e7da9 chore(mria): ekka_rlog -> mria_rlog 2021-10-18 22:04:05 +02:00
k32 326923850c chore(mria): Get rid of copy_mnesia callback 2021-10-18 22:04:05 +02:00
k32 e14a62d4d6 chore(mria): ekka_mnesia:start/stop -> mria:start/stop 2021-10-18 22:04:05 +02:00
k32 9965d6e028 chore(mria): ekka_mnesia:create_table -> mria:create_table 2021-10-18 22:04:05 +02:00
k32 ae2056da1b chore(mria): Fix clear_table and ro_transaction calls 2021-10-18 22:04:05 +02:00
k32 ff48322e0c chore(mria): ekka_mnesia:running_nodes -> mria:running_nodes 2021-10-18 22:04:05 +02:00
k32 b515a45a4f chore(mria): Rename module: ekka_mnesia -> mria 2021-10-18 22:04:05 +02:00
zhanghongtong b1bf21c73b fix(emqx schema): fix function clause by user_lookup_fun 2021-10-18 16:37:16 +08:00
zhongwencool c73205a589
Ct helpers migrate (#5943)
* chore: common test

* chore: delete emqx_ct_helpers deps
2021-10-18 13:45:52 +08:00
Zaiming Shi ad195d0eb0 chore(emqx_vm): delete unused function get_process_group_leader_info 2021-10-16 21:10:43 +02:00
Zaiming Shi 71a11834ad chore: pin rebar plugins and test deps 2021-10-15 16:46:49 +02:00
Zaiming Shi 68d91e770b test: remove ct_helpers from apps/emqx rebar.config 2021-10-15 16:11:48 +02:00
Tobias Lindahl aa19c2a908 chore: Remove emqx_ct_helpers as dependency 2021-10-15 10:40:57 +02:00
William Yang 30a0635ea5 fix: bump ekka to 10.0.9
fix ekka etcd cluster ssl options
2021-10-14 22:49:25 +02:00
Zaiming (Stone) Shi c5b2bc86a2
chore(dashboard): enable by default (#5926) 2021-10-14 21:05:02 +08:00
JimMoen 40ab0064ae fix(api): invalid params HTTP Code 400 2021-10-14 18:57:33 +08:00
JimMoen cc36c7e48d fix(mgmt_api): add page limit check. 2021-10-14 18:57:33 +08:00
William Yang dcca1d7544
Merge pull request #5867 from qzhuyan/dev/william/olp
feat(olp): first PR for overload protection
2021-10-14 10:00:01 +02:00
Shawn 2e52ab9712 fix(rules): improve some code for emqx_rule_engine 2021-10-14 15:09:37 +08:00
Shawn dce57a3f92 fix(rules): add description to the config 'ignore_sys_message'
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2021-10-14 15:09:37 +08:00
Shawn 0e7a3f89a9 feat(rules): support output functions in <<"Mod:Func">> format 2021-10-14 15:09:37 +08:00
Shawn 9c7eef5295 feat(rules): update rule_engine configs from APIs 2021-10-14 15:09:37 +08:00
Shawn c3effca553 fix(rules): load rules from config file failed 2021-10-14 15:09:37 +08:00
Shawn 467805855d fix(rules): load rules from config file failed 2021-10-14 15:09:37 +08:00
Shawn c6c314de1a fix(hocon): update hocon to 0.19.6 2021-10-14 15:09:37 +08:00
Shawn 1ffae5d1b0 refactor(rule_engine): merge code for emqx_rule_registry and emqx_rule_engine 2021-10-14 15:09:37 +08:00
Shawn b063b6f253 feat(rules): support configure rules in config file 2021-10-14 15:09:37 +08:00
zhongwencool 2de5e0157b
chore(doc): replace : by - in namespace (#5920) 2021-10-14 14:48:39 +08:00
lafirest 8a2c5e2422 feat(rate_limiter): implement hierarchical token buckets 2021-10-14 10:20:05 +08:00
William Yang 23fc8afc50 feat(olp): rename olp mgmt API
on -> enable
off -> disable
2021-10-13 10:18:57 +02:00
zhongwencool d80f20aca3
feat(swagger): define mgmt config_api by hocon schema (#5814)
* feat(swagger): define mgmt config_api by hocon schema

* fix: enum can't defined by integer, use union.

* fix: hocon schema union to enum
2021-10-13 14:04:43 +08:00
tigercl 3df33da9ac
Merge pull request #5919 from tigercl/fix/scram-users
fix(authn): fix bad user_id for scram
2021-10-13 13:56:29 +08:00
zhouzb ab060198a6 fix(authn): fix bad user_id for scram 2021-10-13 11:35:51 +08:00
DDDHuang 2d4d372952 chore(test): add auto sub suite 2021-10-13 10:59:42 +08:00
William Yang 58033c083d chore(olp): update alarm text 2021-10-12 16:08:20 +02:00
zhanghongtong 674106ffa7 fix(authz api): fix error for update file type 2021-10-12 18:19:18 +08:00
zhanghongtong 084668bdd9 fix(authz): fix error in type determination when updating sources 2021-10-12 17:37:37 +08:00
lafirest 3524942766 fix: change all ~s in io format to ~ts
we should use unicode to replace latin1
2021-10-12 15:09:24 +08:00
Zaiming (Stone) Shi 04f2487108
Merge pull request #5908 from zmstone/refactor-emqx-more-slog
refactor(emqx): fix remaining legacy logging
2021-10-12 06:45:25 +02:00
JimMoen 19456d84a5 style: code format fix 2021-10-12 10:37:45 +08:00
zhanghongtong 585c4892ce fix(authz api): fix error for read cert file 2021-10-12 09:44:52 +08:00
DDDHuang c90342da4a fix: topic metrics deny wildcard 2021-10-12 09:39:14 +08:00
William Yang b0c27c74fd feat(olp): bump lc to 0.1.1 2021-10-12 00:00:20 +02:00
Zaiming Shi eb43423552 refactor(emqx): fix remaining legacy logging 2021-10-11 21:51:39 +02:00
Zaiming (Stone) Shi 40963221f8
Merge pull request #5898 from zmstone/refactor-slog
Refactor slog
2021-10-11 16:15:44 +02:00
Zaiming Shi 7e9d7c4858 test(proper): move emqx_ct_proper_types to local repo
previously provided by emqx-ct-helpers
2021-10-11 15:28:12 +02:00
JimMoen 321d941eaf fix(mgmt_api): rows too big fixing. 2021-10-11 21:11:34 +08:00
JimMoen 3960204ce3 refactor(mgmt_api): `select_table_with_count`. 2021-10-11 21:11:34 +08:00
JimMoen ea7aa5bc41 refactor(mgmt_api): use `select_table` congruously. 2021-10-11 21:11:34 +08:00
JimMoen b65c9908a1 refactor(mgmt_api): Clearer variable name. 2021-10-11 21:11:34 +08:00
JimMoen 77516d3854 refactor(mgmt_api): `node_query`. 2021-10-11 21:11:34 +08:00
JimMoen e26804b9ac refactor(mgmt_api): `cluster_query`. 2021-10-11 21:11:34 +08:00
JimMoen 705ed0ce7b refactor(mgmt_api): Fuzzy filter using `select_table`. 2021-10-11 21:11:34 +08:00
JimMoen 5daef544a0 refactor(mgmt_api): `select_table`. 2021-10-11 21:11:34 +08:00
JimMoen b4433f77c8 refactor(mgmt_api): Add `page_start`. 2021-10-11 21:11:34 +08:00
JimMoen 9657d7e628 refactor(mgmt_api): Use Continuation with ets selecting. 2021-10-11 21:11:34 +08:00
Spycsh d4657754eb chore(dialyzer): fix spec for record field message.extra 2021-10-11 14:10:22 +02:00
zhanghongtong 5d1772a6b4 fix(authz api): fix error for move source when disable source 2021-10-11 14:07:10 +08:00
zhanghongtong 24b0fccba9 fix(authz): Fix no match error after deleting a source 2021-10-11 14:04:10 +08:00
zhanghongtong 7c28a3f6c1 fix(authz api): fix 404 error when no have "all" rules 2021-10-11 14:03:48 +08:00
Zaiming Shi 71731c01f1 refactor(emqx): refine SLOG messages
unified logging for unexpected handle_cast handle_call and handle_info
2021-10-11 07:41:52 +02:00
Zaiming Shi 785793b345 refactor: add logging allow or not check for SLOG 2021-10-11 07:41:52 +02:00
Zaiming Shi 5274e0a726 refactor(emqx): add 'extra' field to message record 2021-10-11 02:07:33 +02:00
Spycsh fe5a169be1 chore: change to structured logging under apps/emqx/src 2021-10-09 14:02:22 +08:00
Shawn 63bf161522 fix(test): testcase t_validity_period failed occasionally 2021-10-09 09:17:09 +08:00
Zaiming (Stone) Shi aa0c58daa0
Merge pull request #5881 from zmstone/fix-flaky-tests-cm-session-race-condition
chore: fix flaky test cm_SUITE open session racecondition
2021-10-07 17:28:10 +02:00
William Yang 8d8969672b feat(olp): add desc in schema 2021-10-07 16:03:54 +02:00
Zaiming Shi a882a8c496 chore: fix flaky test cm_SUITE open session racecondition 2021-10-07 11:51:40 +02:00
Zaiming Shi 7ae4505636 test(emqx_broker): fix flaky tests 2021-10-07 11:31:22 +02:00
William Yang 77f8159ca1 docs(olp): emqx_olp module 2021-10-06 21:07:14 +02:00
William Yang 9ecb7821f9 feat(olp): use tagged deps libs 2021-10-06 10:38:39 +02:00
Zaiming Shi ce486e5540 fix(ssl): verify ciphers list against all available ciphers
Prior to this change the ciphers are only checked against
the list returned from from
`ssl:cipher_suites(all, 'tlsv1.2', openssl)`
which may cause some (weak) ciphers missing in certain
otp + openssl installation
2021-10-05 15:25:56 +02:00
Zaiming Shi b42a2f2bc2 fix(ssl): delete some weak cipher suites from the default list 2021-10-05 15:15:00 +02:00
William Yang afb4b5dbd7 test(olp): add CT suite emqx_olp_SUITE 2021-10-05 14:37:39 +02:00
William Yang bfe4346469 feat(olp): alarm without nodeid 2021-10-05 14:36:36 +02:00
William Yang 547484a2d1 chore(olp): add spec. 2021-10-05 09:47:21 +02:00
William Yang 6baf2dbd95 feat(olp): backoff new conn 2021-10-05 09:23:23 +02:00
William Yang 370edac031 feat(olp): add default config 2021-10-04 16:30:48 +02:00
William Yang 4dc63b26a8 feat(olp): metrics 2021-10-04 16:30:44 +02:00
William Yang 67267acb70 feat(olp): management API 2021-10-04 14:36:30 +02:00
William Yang eb895a9f80 feat(olp): quic 2021-10-04 12:31:14 +02:00
William Yang 9304e3c122 feat(olp): add config and backoff gc 2021-10-04 12:21:30 +02:00
William Yang 166f02edc4 feat(olp): don't hibernate conn proc when overloaded 2021-10-04 10:44:53 +02:00
William Yang e9710ade14 feat(olp): first commit for overload protection
- add lc app
- add alarm handler for lc runq alarm
- backoff when handling CONNECT message
- close new connswhen overload
2021-10-01 16:14:38 +02:00
zhongwencool af36e1a791 fix: emqx_cluster_rpc.hrl to emqx_machine.hrl 2021-09-30 16:04:30 +08:00
zhongwencool 93c210887b chore: don't use emqx_machine.hrl in emqx 2021-09-30 16:04:30 +08:00
zhongwencool 44a6f04a45 chore: reorganize shards position 2021-09-30 16:04:30 +08:00
JianBo He 45ca168216 test(gw): fix bad test cases 2021-09-30 15:51:02 +08:00
JianBo He ac3af8260d fix(gw): fix print client record error 2021-09-30 15:51:02 +08:00
JianBo He adaf3db719 refactor(gw): put conf operations into emqx_gateway_conf mod 2021-09-30 15:51:02 +08:00
JianBo He 642b588ad0 fix(gw): fix removing listener error 2021-09-30 15:51:02 +08:00
JianBo He 8e4256c06f chore(conf): refine config format 2021-09-30 15:51:02 +08:00
Zaiming Shi e9991dca02 chore(dashboard): Allow test mode of the dashboard 2021-09-30 09:28:47 +02:00
zhongwencool be123f613d
Fix: apps should boots after emqx_machine_sup's children spawn. (#5851)
* fix(cluster_call): apps should start after cluster_call init

* fix: undef function

* chore: reformat code

* fix: ekka must start before emqx
2021-09-30 13:56:18 +08:00
DDDHuang e62af95d0d fix: close dashboard before beta 1 2021-09-30 09:45:48 +08:00
zhouzb 50765fa345 fix(http): fix function clause when create http connector instance 2021-09-29 19:35:06 +08:00
zhanghongtong b94dcb7bc7 chore(release): update emqx release version 2021-09-29 18:29:44 +08:00
zhanghongtong 4044fd8122 chore(authz mnesia api): update schema
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-09-29 18:28:55 +08:00
DDDHuang f9adecedef fix: exhook code spelling 2021-09-29 17:23:51 +08:00
zhanghongtong dd3b91e13f fix(authz api): fix update config error
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-09-29 13:46:49 +08:00
tigercl 55ec5bab9e
Merge pull request #5773 from tigercl/feat/psk-file
feat(psk): support psk
2021-09-29 13:37:49 +08:00
Zaiming (Stone) Shi 83e7ab681b
Merge pull request #5820 from JimMoen/refactor-frame-parse-logging
Refactor frame parse logging with bug fix.
2021-09-28 19:31:39 +02:00
Zaiming Shi 225ebdaa87 fix(frame): simlify error excption context
We should not raise error with the exact context after logging it
because it will end up duplicated in the log
2021-09-28 18:15:32 +02:00
JimMoen c1ff30896a fix(frame): safely serializing and structured log. 2021-09-28 18:55:25 +08:00
tigercl 6670bc49fe
Merge pull request #5791 from tigercl/fix/authn2
fix(authn): add timeout option for mysql connector
2021-09-28 14:28:55 +08:00
JimMoen 9832eea250 fix(frame): safely parsings. 2021-09-28 14:11:18 +08:00
JimMoen 7d6180f10a fix(frame): variable byte integer could be larger than 4 bytes. 2021-09-28 14:11:18 +08:00
Zaiming Shi a158b0235d chore(tests): use assertError
the ?catch_error macro passes when there is no exception
2021-09-28 14:11:18 +08:00
Zaiming Shi fec3c6574e perf(emqx_frame): skip empty tail 2021-09-28 14:11:18 +08:00
Zaiming Shi 9d0ef5de6b refactor(emqx_frame): log frame parse error with more context 2021-09-28 14:11:18 +08:00
JimMoen 1509907744 fix(mgmt): delayed messages payload encoded in basd64 twice. 2021-09-28 12:26:13 +08:00
tigercl 79685a77ba
Merge branch 'master' into fix/authn2 2021-09-28 09:27:08 +08:00
zhouzb 352c87a586 chore(authn): delete useless func 2021-09-28 09:22:59 +08:00
zhanghongtong 8915f61382 fix(authz api): fix badarg error
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-09-28 09:13:17 +08:00
zhanghongtong c4e0eff772 fix(authz api): fix schema error 2021-09-28 09:13:17 +08:00
zhouzb 2cc2cd2831 chore(psk): return line number rather than the content of line 2021-09-28 09:09:26 +08:00
Zaiming (Stone) Shi 3df21a9e14
Merge pull request #5822 from Spycsh/fix-windows-compile
chore: fix Windows compilation process
2021-09-27 23:30:59 +02:00
Shawn a9185f964e
fix(rules): improve specs and logs (#5821)
Co-authored-by: Zaiming Shi <zmstone@gmail.com>
2021-09-27 21:10:48 +02:00
Zaiming Shi 697a11ded0 fix(tls): drop unsupported ciphers
we use a hard-coded list of pre-selected ciphers as config
default value. some of them may not be supported by the
underlying openssl lib.

now moved the pre-selected ciphers to emqx_tls_lib:selected_ciphers
which performs a filtering before return.
2021-09-27 20:51:48 +02:00
Shawn e2721c144c feat(bridge): support http bridge 2021-09-27 22:01:18 +08:00
zhouzb 74c9a38e9f fix(psk): fix bugs and add test case 2021-09-27 21:42:32 +08:00
Spycsh c3b980fde9 chore: fix Windows compilation process 2021-09-27 21:24:10 +08:00
Zaiming Shi 5417eb328a fix(schema): no ciphers validator for quic listener 2021-09-27 13:53:54 +02:00
Zaiming Shi 58ffc4651f fix(config): use default value for tls versions
default value for ssl.versions is dynamically resolved based
on otp version and underlying openssl installation
2021-09-27 13:53:54 +02:00
Zaiming Shi d376c0f9fc refactor(schema): call emqx_tls_lib for default tls versions 2021-09-27 13:53:54 +02:00
Zaiming Shi e7e8b8c77b fix(schema): check tlsv1.3 availability 2021-09-27 13:53:54 +02:00
zhouzb f9aa345787 chore(psk): improve logs for psk 2021-09-27 15:32:56 +08:00
zhouzb 2262bf508e chore(authn): improve code 2021-09-27 14:50:22 +08:00
zhongwencool 5280f83651
Merge pull request #5784 from zhongwencool/delayed-api-schema
feat(delayed_api): support hocon schema
2021-09-27 13:45:17 +08:00
zhouzb 84bb486c62 feat(psk): chunk size can be configured and improve code 2021-09-27 10:53:25 +08:00
zhongwencool c41b4b0c2f fix(delayed_api): delete msg crash return 500 2021-09-27 09:54:41 +08:00
Shawn 69f3cce75d feat(rules): hook on bridges events and query bridges from rules 2021-09-26 23:00:08 +08:00
Shawn e630e23846 fix(rules): dialyer failed to analysis the emqx_rule_sqlparser:parse/1 2021-09-26 23:00:08 +08:00
Shawn 0d26e50e87 fix(rules): parse outputs failed 2021-09-26 23:00:08 +08:00
Shawn 420ccf0f51 refactor(rules): change republish as an output 2021-09-26 23:00:08 +08:00
Shawn f33e28af6d fix(rules): update test cases for emqx_rule_engine_SUITE 2021-09-26 23:00:08 +08:00
Shawn 7bc69b129a fix(rules): update test cases for rule metrics 2021-09-26 23:00:08 +08:00
Shawn d4f20c82e0 feat(rules): support function outputs 2021-09-26 23:00:08 +08:00
Shawn bd081913b5 refactor(rules): remove emqx_rule_actions 2021-09-26 23:00:08 +08:00
Shawn af295a9b71 refactor(rules): remove resources and actions 2021-09-26 23:00:08 +08:00
Shawn b055464f6b refactor(rule): remove CLIs for rules
We will have new CLIs based on HTTP API in the future.
2021-09-26 23:00:08 +08:00
zhongwencool 776604a90b chore(dashboard): make dirty operation into ekka_mnesia transation 2021-09-26 21:42:26 +08:00
zhouzb f325d7c783 chore(psk): catch timeout exception to avoid crash 2021-09-26 20:37:00 +08:00
zhanghongtong c5494d5c90 chore(authz mnesia api): ensure built-in-database type source is disabled before purge. 2021-09-26 16:38:08 +08:00
Zaiming Shi 8b6eeef7fc refactor(authz): use macro for cmd names 2021-09-26 16:19:47 +08:00
Zaiming Shi 65d0b70ff6 refactor(authz): simplify config update impl 2021-09-26 16:19:47 +08:00
Zaiming Shi f18d0c7167 fix(authz): delete unused config field
path is not used for built-in-database type
2021-09-26 16:19:47 +08:00
zhanghongtong 7d18250a1d chore(authz mnesia): fix dialyzer error 2021-09-26 16:19:47 +08:00
zhanghongtong 673b12a46d chore(authz mnesia): in the mnesia table, replace atom with int 2021-09-26 16:19:47 +08:00
zhanghongtong 9b3917e0d3 chore(authz mnesia api): get method supports paging
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-09-26 16:19:47 +08:00
zhanghongtong 1a02e0cfd1 feat(authz mnesia api): post accept array data 2021-09-26 16:19:47 +08:00
zhanghongtong 2dc3b51675 chore(authz): use ekka_mnesia instead of mnesia 2021-09-26 16:19:47 +08:00
zhanghongtong b583509976 feat(authz): add authorize for mnesia 2021-09-26 16:19:47 +08:00
zhanghongtong ed6f4895e2 feat(authz mnesia): add api
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-09-26 16:19:47 +08:00
lafirest acb5c693ba
Merge pull request #5767 from lafirest/fix/time_unit
fix(schema): fix some time unit in schema
2021-09-26 15:35:27 +08:00
JianBo He 8e78d29325 chore(gw): improve emqx_gateway_schema 2021-09-26 15:19:55 +08:00
JianBo He b78c914651 test(authn): cleanup the dirty configs 2021-09-26 15:19:55 +08:00
JianBo He 791408cd99 refactor(gw): simplify code structure
1. Add the management API for listener's authn
2. Clarify responsed error messages
2021-09-26 15:19:55 +08:00
JianBo He 5ad1a8c232 chore(gw): fix test case errors 2021-09-26 15:19:55 +08:00
JianBo He f0ac62c513 refactor(gw): use emqx_gateway_conf to update conf 2021-09-26 15:19:55 +08:00
JianBo He b55a1f62c3 test(gw): more cases for emqx_gateway_conf 2021-09-26 15:19:55 +08:00
JianBo He d163e99d58 chore(gw): add cases for emqx_gateway_conf 2021-09-26 15:19:55 +08:00
JianBo He f68dfff0d6 refactor(gw): refactor config hot-upgrade mechnism 2021-09-26 15:19:55 +08:00
JianBo He a9e32ac106 chore(gw): fix gatway enable/1 not working 2021-09-26 15:19:55 +08:00
JianBo He d8176f4378 chore(gw): pass listener id into listener params 2021-09-26 15:19:55 +08:00
JianBo He 3e033b419c refactor(gw): integrate with authn 2021-09-26 15:19:55 +08:00
JianBo He f3c675b139 chore(deps): upgrade esockd to 5.8.3 2021-09-26 15:19:55 +08:00
JianBo He eda94f5754 chore(gw): more comment for coap options 2021-09-26 15:19:55 +08:00
JianBo He aa03023811 chore(gw): http-api for loading gateway 2021-09-26 15:19:55 +08:00
lafirest 6e3ec6c9db fix(schema): fix authn/z's schema time unit 2021-09-26 14:41:46 +08:00
lafirest e31e175e47 fix(schema): fix some time unit in schema 2021-09-26 14:38:53 +08:00
zhanghongtong 11c90cfce4 fix(authz api): fix file type error 2021-09-26 12:35:35 +08:00
zhouzb 096e85dc14 chore(authn): improve log and fix disabled authentication still working 2021-09-26 11:31:19 +08:00
zhongwencool cae79a0584 feat(swagger): move public page/limit/error_code to emqx_dashboard_swagger module 2021-09-24 21:51:53 +08:00
Zaiming (Stone) Shi d2278b02d9
Merge pull request #5798 from Rory-Z/feat/update-acl-conf
feat(authz): acl.conf is compatible with the 4.x syntax
2021-09-24 11:53:12 +02:00
zhouzb 6051ea92eb chore(authn): improve log 2021-09-24 17:24:04 +08:00
zhouzb 11bdfcb8f0 fix(authn): fix bugs in http and pgsql authn 2021-09-24 17:15:10 +08:00
zhouzb e31840d943 fix(authn): add timeout option for mysql connector 2021-09-24 17:15:10 +08:00
zhouzb 98ecafcceb chore(psk): fix dialyzer 2021-09-24 17:07:08 +08:00
zhouzb d391690505 chore(psk): fix bugs 2021-09-24 17:07:08 +08:00
zhouzb 29277b1d6b chore(psk): rename boot.psk to init.psk 2021-09-24 17:07:08 +08:00
zhouzb e9cd757432 chore(psk): delete old module and update configuration 2021-09-24 17:07:05 +08:00
zhouzb 4ca9628899 chore(psk): rename boot_file to init_file 2021-09-24 17:05:26 +08:00
zhouzb 2f18f5e8b5 chore(psk): improve configuration file 2021-09-24 17:05:26 +08:00
zhouzb 7c61bc18cf feat(psk): support psk 2021-09-24 17:05:26 +08:00
zhongwencool 7e494afd98 fix(swagger): desc must be binary 2021-09-24 15:55:49 +08:00
zhongwencool 8c441673c2 feat(delayed_api): support hocon schema 2021-09-24 15:22:05 +08:00
JimMoen e737f18548 fix(mgmt_api): Friendly HTTP Status Code for Listeners. 2021-09-24 14:28:52 +08:00
JimMoen 54b3dd8718 fix(mgmt_api): update listener on specific node. 2021-09-24 14:28:52 +08:00
JimMoen 2e088c0ae8 fix(mgmt_api): return 404 when node not found. 2021-09-24 14:28:52 +08:00
zhongwencool 357456880e
Merge pull request #5777 from zmstone/fix-ssl-listener-config
fix(emqx_schema): make ssl config schema right
2021-09-24 13:39:44 +08:00
lafirest 7ff26003e5 fix(emqx_retainer): fix the bug that re-enable does't work 2021-09-24 10:25:19 +08:00
zhanghongtong d1e85e8d00 feat(authz): acl.conf is compatible with the 4.x syntax 2021-09-24 09:59:45 +08:00
zhanghongtong 4f0684e887 chore(authz api): delete healthy status for get method 2021-09-24 09:20:54 +08:00
Zaiming Shi 3027bc3a0c fix(schema): sll key and cert files are nullable 2021-09-23 16:57:16 +02:00
Zaiming Shi 4392357877 fix(schema): simplify ssl ciphers filed schema 2021-09-23 16:57:16 +02:00
Zaiming Shi 4f638b8242 fix(schema): upgrade to hocon 0.19.5
renamed no_conversion option to only_fill_defaults
2021-09-23 16:57:15 +02:00
Zaiming Shi 5bd67a49de chore(schema): reformat schema fields descriptions 2021-09-23 16:56:02 +02:00
Zaiming Shi b1cf5bc1d4 fix(schema): do not validate etc_dir 2021-09-23 16:56:02 +02:00
Zaiming Shi 97e1cf65b7 refactor(schema): make a client ssl options schema
client and server ssl options share some common fields
this commit make an abstraction for the common fields
then export server_ssl_options_schema/2 and client_ssl_options_schema/1
for other schema modules to call
2021-09-23 16:56:02 +02:00
Zaiming Shi fbd5701989 fix(emqx_schema): make ssl config schema right 2021-09-23 16:56:02 +02:00
zhanghongtong 9ac1e9fcd9 chore(authz api): use raw config for get method 2021-09-23 16:33:06 +08:00
JimMoen 8d11a61999 fix(delayed): delete with worong msgid return 200. 2021-09-23 16:23:30 +08:00
tigercl 7fd7a31300
Merge pull request #5766 from tigercl/chore/authn
chore(authn): add supervisor for authn and fix checking errors
2021-09-23 13:51:10 +08:00
zhongwencool 29b96bae2e fix(dashboard): create user return 405 2021-09-23 11:25:02 +08:00
zhouzb 4860049268 chore(authn): insert final newline 2021-09-23 10:11:54 +08:00
zhouzb 79026d5900 chore(authn): add supervisor for authn and fix checking errors 2021-09-23 10:11:50 +08:00
Zaiming Shi 86f47b6112 chore(emqx_data_bridge): delete stale app dir 2021-09-23 09:52:43 +08:00
tigercl 2b9870992c
Merge pull request #5763 from tigercl/feat/clear-certs
feat(clear certs): clear certs when deleting instance
2021-09-23 09:43:56 +08:00
Zaiming (Stone) Shi b98f8f5922
Merge pull request #5780 from Rory-Z/chore/rename-mongo
chore(authz): rename mongo to mongodb
2021-09-22 14:44:44 +02:00
JimMoen 5baf427b75 fix(delayed): default username when get delayed message form `/publish` api. 2021-09-22 18:45:18 +08:00
JimMoen da923c7df0 fix(delayed): `max-delayed-messages` increase 1 than setting. 2021-09-22 18:45:18 +08:00
zhongwencool 81a795ffc9
Merge pull request #5728 from zhongwencool/swagger-hocon-spec
chore(swagger): swagger support hocon schema
2021-09-22 17:42:07 +08:00
zhongwencool 085d8e8efa chore(schema): restore space 2021-09-22 16:41:00 +08:00
Shawn c0258e1be6 feat(bridge): let mqtt bridge work with rules 2021-09-22 14:29:47 +08:00
Shawn 502f962b4c refactor(bridge): change confs for channel from array to map 2021-09-22 14:29:47 +08:00
zhongwencool 96fad3d225 chore(swagger): support check_schema option, default is false. 2021-09-22 13:37:08 +08:00
zhanghongtong 00d7d66871 chore(authz): rename mongo to mongodb 2021-09-22 11:28:31 +08:00
DDDHuang ab2cdfeab1
fix: delayed message format & message id parameter name (#5762) 2021-09-22 10:04:00 +08:00
zhongwencool 39423665e9 chore(swagger): check hocon schema with #{override_env => false} 2021-09-22 09:07:14 +08:00
zhongwencool dab5fbf285 feat(swagger): swagger support hocon schema 2021-09-21 21:41:16 +08:00
zhongwencool 1d9076e2eb
Merge branch 'emqx:master' into master 2021-09-21 20:20:44 +08:00
Zaiming Shi 2edd3879b8 feat(config): save override config in hocon pretty-print format 2021-09-19 14:33:43 +02:00
zhongwencool 65633a4ad2 chore(cluster-call): more detail about failed case 2021-09-18 12:34:20 +08:00
zhouzb bb4e5fdb4f chore(authn): fix dialyzer 2021-09-18 09:14:03 +08:00
zhouzb 69755ad3fb fix(authn): fix bug in authn 2021-09-18 09:14:03 +08:00
zhouzb b89973ce7c fix(authn): fix type error 2021-09-18 09:14:00 +08:00
zhouzb 35a4a05f03 feat(clear certs): clear certs when deleting instance 2021-09-18 09:11:41 +08:00
JimMoen 6edc9f4221 fix(emqx_types): spec refs `emqx_types.erl` instead directly. 2021-09-17 19:28:22 +08:00
JimMoen 9c95557bfc fix(emqx_types): type spec refs does not exist file. 2021-09-17 19:28:22 +08:00
JianBo He 2fe96a3ad0 chore(gw-lwm2m): format emqx_lwm2m_tlv_SUITE 2021-09-17 18:13:57 +08:00
JianBo He cfabb8549e build(deps): upgrade emqx_http_lib to 0.4.1 2021-09-17 18:13:57 +08:00
JianBo He 6da1196244 chore(gw-lwm2m): refine emqx_tlv_SUITE cases 2021-09-17 18:13:57 +08:00
zhongwencool 6ed0bdc665 fix(cluster-call): MinDelay clumiscalculation, don't sleep in first check. 2021-09-17 15:23:25 +08:00
Zaiming (Stone) Shi ab39284ece
Merge pull request #5754 from zmstone/feat-make-possible-to-disable-client-initiated-renegotiation
feat(ssl): make possible to disable client-initiated ssl renegotiation
2021-09-17 08:22:34 +02:00
Zaiming (Stone) Shi 1af8148e30
Merge pull request #5760 from zmstone/minor-refactors
refactor(authn): minor refactors
2021-09-17 07:59:16 +02:00
tigercl 9000dab57a
Merge pull request #5761 from zmstone/fix-deps-pin-typerefl-from-main-proj
fix(deps): pin typerefl verison from root rebar.configs
2021-09-17 10:47:18 +08:00
lafirest 24eb0ac7bb
Merge pull request #5721 from lafirest/test/coap_case
test(emqx_coap): add some test case
2021-09-17 09:46:50 +08:00
lafirest a83882a3b8
Merge pull request #5726 from lafirest/test/emqx_lwm2m
test(emqx_lwm2m): remove the lwm2m_coap dependency
2021-09-17 09:41:48 +08:00
tigercl fdbde321cd
Merge pull request #5742 from tigercl/chore/gen_id
chore(gen_id): using emqx_misc:gen_id/0, /1
2021-09-17 09:24:42 +08:00
zhanghongtong fa467d0741 chore(authz): rename pgsql to postgresql
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-09-17 09:16:38 +08:00
Zaiming Shi 6cf1107f42 refactor(authn): ensure infinity timeout for gen_server call 2021-09-16 23:17:50 +02:00
Zaiming Shi 0877fb5569 refactor(authn): register providers in batch 2021-09-16 23:17:50 +02:00
Zaiming Shi 0b432a6a77 refactor(auth): rename functions from may_xx to maybe_xx 2021-09-16 23:17:50 +02:00
Zaiming Shi 3dcccc0b33 refactor(authn): call lists:foreach instaed of list comprehension 2021-09-16 23:17:50 +02:00
Zaiming Shi 13a03d8c1c feat(ssl): make possible to disable client-initiated ssl renegotiation 2021-09-16 23:17:22 +02:00
Zaiming Shi 16c652586b fix(deps): pin typerefl verison from root rebar.configs 2021-09-16 23:16:31 +02:00
zhouzb ddfc010fdb fix(resource): fix undefined function 2021-09-16 16:53:43 +08:00
zhouzb 9df842eeb8 fix(test): fix test case of authz 2021-09-16 16:51:52 +08:00
zhouzb 43ce727632 chore(gen_id): using emqx_misc:gen_id/0, /1 2021-09-16 16:51:46 +08:00
JimMoen deac54c847 chore(for editor): Add comments for Emacs major mode. 2021-09-16 15:43:30 +08:00
JimMoen ba26a8511c fix(emqx_types): emqx_types:version() used but undefined. 2021-09-16 15:43:30 +08:00
Jim Moen 294c1a5f69 fix(emqx_mgmt): clients api query params supports epoch(milliseconds). 2021-09-16 13:54:11 +08:00
Jim Moen 8cbec2ec6e chore(emqx_mgmt): test suite for clients api times using rfc3339. 2021-09-16 13:54:11 +08:00
Jim Moen 834a688062 fix(emqx_mgmt): clients api times using rfc3339. 2021-09-16 13:54:11 +08:00
zhanghongtong 129a171de2 chore(authz): api returns the original content of the file
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-09-16 13:40:16 +08:00
zhanghongtong ca4b1ca3b5 fix(auth mnesia api): fix the issue of missing line breaks in multi-line rules 2021-09-16 13:40:16 +08:00
DDDHuang 60e815fb9a fix: topic rewrite action type add all 2021-09-16 09:13:34 +08:00
k32 2a65347972
Merge pull request #5727 from k32/interleave-pqueue
feat(mqueue): Interleave messages with different priorities
2021-09-15 15:10:37 +02:00
k32 20d4652454 feat(mqueue): Interleave messages with different priorities 2021-09-15 11:58:54 +02:00
Shawn b1999b2205 fix(bridge): update bridge with new conf failed 2021-09-15 17:46:42 +08:00
Shawn 7058b83760 refactor(bridge): rename message_in/out to ingress/egress_channels 2021-09-15 17:46:42 +08:00
Shawn c1ff8778e1 fix(bridges): add logs for creating/removing bridges 2021-09-15 17:46:42 +08:00
Shawn 8730a03ab8 feat(bridges): add start/stop/restart HTTP APIs for bridges 2021-09-15 17:46:42 +08:00
Shawn cb8dabe579 feat(bridges): add CRUD HTTP APIs for bridges 2021-09-15 17:46:42 +08:00
Shawn 304c5613ac refactor(resource): rename the emqx_resource:update/4 to recreate/4 2021-09-15 17:46:42 +08:00
lafirest 75f528e08d
Merge pull request #5743 from lafirest/fix/connector
fix(emqx_schema): support get ip address by host name
2021-09-15 15:21:54 +08:00
lafirest 6c27c83dc3 fix(emqx_schema): support get ip address by host name 2021-09-15 14:59:19 +08:00
DDDHuang 237d3c0543
Auto subscribe format (#5740)
* fix: auto sub list format with default
2021-09-15 11:40:05 +08:00
tigercl c4403e886d
Merge pull request #5732 from tigercl/feat/upload-certs
feat(upload certs): save certs to file
2021-09-15 10:58:31 +08:00
zhouzb 0fe300575e chore(authn): better function name 2021-09-15 09:59:35 +08:00
zhouzb ce6c24a866 fix(authn): fix spelling error 2021-09-14 17:42:07 +08:00
zhouzb f6d7739f01 fix(upload certs): fix external dependency 2021-09-14 16:09:36 +08:00
zhouzb 1a61640b15 feat(upload certs): serialize errors about saving cert 2021-09-14 15:07:57 +08:00
zhouzb ee178ccea9 feat(upload certs): support return cert content by http api 2021-09-14 14:59:13 +08:00
zhouzb 63d3a7b525 feat(upload certs): save certs to file 2021-09-14 13:38:09 +08:00
lafirest acbbbbcd24 test(emqx_lwm2m): remove the lwm2m_coap dependency 2021-09-14 11:20:53 +08:00
zhanghongtong c322957257 chore(authz): fix spelling errors 2021-09-14 11:16:47 +08:00
lafirest 99566f12bb test(emqx_coap): add some test case 2021-09-14 11:11:30 +08:00
zhanghongtong 4fa816fa97 fix(auth mnesia api): fix api error when delete sources 2021-09-13 19:55:39 +08:00
zhanghongtong d443d26fce fix(auth mnesia api): fix api error for file type 2021-09-13 17:13:30 +08:00
zhongwencool 86eb6605f1
Merge pull request #5623 from zhongwencool/cluster-call-api
feat(cluster-call): support confirm success after all mfa apply ok
2021-09-13 16:03:47 +08:00
Spycsh f971dfd149 chore(config): add etc dir config 2021-09-10 20:31:32 +08:00
zhanghongtong 07a2ef4700 chore(release): update emqx release version 2021-09-10 19:34:45 +08:00
tigercl 09c376c1e5
Merge pull request #5707 from terry-xiaoyu/bridge_apis
feat(bridges): avoid clientid competition between bridges on differen…
2021-09-10 19:32:20 +08:00
zhanghongtong 6095253126 chore(emqx_authz): delete put for http type 2021-09-10 19:27:10 +08:00
zhanghongtong ef0f94025a chore(emqx_authz): rename config item
rename sql to query for mysql and pgsql
rename find to selector for mongo

Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-09-10 19:27:10 +08:00
tigercl 78397329e8
Merge pull request #5684 from tigercl/chore/authn
chore(authn): provide easy-to-read hints for more errors
2021-09-10 19:04:11 +08:00
zhanghongtong 75b77b77b6 chore(emqx_authz api): change rules type from list to string in http api 2021-09-10 19:03:33 +08:00
JianBo He 94c51f9253 chore(gw): fix dialyzer warnings 2021-09-10 18:41:23 +08:00
JianBo He 18ed1c9794 chore(gw): add listeners apis 2021-09-10 18:41:23 +08:00
zhouzb a3b587c9f9 fix(authn): fix test case for authn 2021-09-10 18:13:11 +08:00
lafirest 9fd9e09721
Merge pull request #5708 from lafirest/test/emqx_lwm2m
test(emqx_lwm2m): add some time intervals between test operations
2021-09-10 18:02:42 +08:00
zhouzb 6b521acd6f fix(authn): fix type error for http headers 2021-09-10 17:31:16 +08:00
zhouzb b07e686350 fix(authn): fix bad type 2021-09-10 16:58:10 +08:00
zhouzb 5cea9a4edc chore(authn): add api spec 2021-09-10 15:55:37 +08:00
lafirest b8d4c12008 test(emqx_lwm2m): add some time intervals between test operations 2021-09-10 14:42:29 +08:00
Shawn d46241fe2f feat(bridges): avoid clientid competition between bridges on different nodes 2021-09-10 14:21:17 +08:00
Zaiming Shi 01ce32094c refactor(bin/emax): delete cold_eval 2021-09-10 07:28:12 +02:00
Zaiming Shi cca3a4414f fix(bin/emqx): do not try to find vm.args file for cold_eval 2021-09-10 07:28:12 +02:00
Zaiming Shi 0b11ab2d59 refactor(schema): reorder config root fields
so more important configs are ordered before less important
2021-09-10 07:28:09 +02:00
zhongwencool 0303e593c5 fix: undef function 2021-09-10 13:28:08 +08:00
Zaiming Shi 01166a8bfb feat(schema): generate document when building the release 2021-09-10 07:27:02 +02:00
Zaiming Shi 687114eeb1 fix(bridge_schema): ensure atom exists 2021-09-10 07:27:01 +02:00
Zaiming Shi 6b7d3bcf98 chore(hocon): upgrade to 0.17.0 2021-09-10 07:27:01 +02:00
Zaiming Shi 3a60f00643 refactor(emqx_gateway_schema): use hoconsc:map 2021-09-10 07:27:01 +02:00
Zaiming Shi 0039bfca6b refactor(emqx_machine_schema): use hoconsc:map type 2021-09-10 07:27:01 +02:00
Zaiming Shi bbd1c142de refactor(emqx_schema): use hoconsc:map type 2021-09-10 07:27:01 +02:00
Zaiming Shi a9cca84595 fix(emqx_schema): allow listener to be null 2021-09-10 07:27:01 +02:00
zhongwencool 9820027953 fix(cluster-call): fixed crash test case 2021-09-10 13:17:17 +08:00
zhongwencool 5a4428c53d Merge branch 'cluster-call-api' of https://github.com/zhongwencool/emqx into zhongwencool-cluster-call-api 2021-09-10 13:11:13 +08:00
Shawn 135c005467 fix(bridges): do not start any bridge by default 2021-09-10 11:43:03 +08:00
Shawn 1ecec5ef3a refactor(bridges): move some test cases from old emqx_bridge_mqtt app 2021-09-10 11:43:03 +08:00
Shawn 037b75a276 refactor(bridges): remote the old emqx_bridge_mqtt app 2021-09-10 11:43:03 +08:00
Shawn 1b5c08adeb fix(bridges): update hocon schema for bridges for hocon 0.15.0 2021-09-10 11:43:03 +08:00
Shawn 298cf24f00 fix(bridges): mqtt bridge cannot forward msgs using payload template 2021-09-10 11:43:03 +08:00
Shawn eb8822ce41 feat(bridges): start one mqtt bridge worker for each in/out channel 2021-09-10 11:43:03 +08:00
Shawn 4f82debbe7 feat(bridge): new configs for mqtt bridge 2021-09-10 11:43:03 +08:00
Shawn 1dae970cd3 refactor(rule): move emqx_rule_utils.erl -> emqx_plugin_libs_rule.erl 2021-09-10 11:43:03 +08:00
Shawn 39bb1b8d9d fix(bridges): start mqtt bridge failed 2021-09-10 11:43:03 +08:00
Shawn 9ed90ba7a9 feat(bridges): add connector for mqtt bridge 2021-09-10 11:43:03 +08:00
Shawn bfb2df37ce refactor(bridge): rename emqx_data_bridge to emqx_bridge 2021-09-10 11:43:03 +08:00
lafirest 5693981b54
Merge pull request #5699 from lafirest/feat/lwm2m_api
refactor(emqx_lwm2m): refactor lwm2m api use new rest framework
2021-09-10 10:34:18 +08:00
zhongwencool 6bc7378e63 fix(cluster-call): fix typo and add is_success/1 help function 2021-09-10 09:40:30 +08:00
DDDHuang 9a09bf7964
fix: logout api delete token (#5686) 2021-09-10 09:20:16 +08:00
zhouzb d30d7d5710 chore(authn): update api spec for built in database 2021-09-09 17:34:39 +08:00