Commit Graph

1548 Commits

Author SHA1 Message Date
zhouzb 1c3d46d29e feat(authn api): add required spec 2021-07-30 12:01:17 +08:00
zhouzb 5c9dabc064 feat(authn mongo api): add api spec for mongo authn 2021-07-30 11:47:48 +08:00
Zaiming Shi 18fb18be89 test(modules/rewrite): do not set fake config
the hand-crafted fake raw config does not pass hocon schema check
this commit changes to use HOCON text as input for both test cases
2021-07-30 09:18:43 +08:00
Zaiming Shi 729f89f514 chore(rebar.config): update hocon version 0.10.5 2021-07-30 09:18:43 +08:00
Zaiming Shi 9dcb725898 fix(emqx_authz): update config with own schema module 2021-07-30 09:18:43 +08:00
Zaiming Shi cf1246f026 feat(emqx_config): allow loading configs from binary
This will be helpful for tests
2021-07-30 09:18:43 +08:00
Turtle 740b729778 feat(api): support stats/metrics API aggregate 2021-07-30 09:09:45 +08:00
Zaiming (Stone) Shi dcfc705811
Merge pull request #5342 from zmstone/refactor-config-store-per-root
refactor(emqx_config): store configs per root name
2021-07-29 17:38:33 +02:00
Zaiming Shi 4836d0a1fc test(exproto): delete unused code 2021-07-29 16:30:29 +02:00
zhouzb 336fe63c1c feat(enable authn): support enable authn by http api 2021-07-29 20:45:19 +08:00
Zaiming Shi c0ffbd68c8 test(emqx_authz): adjust meck and app start order 2021-07-29 13:32:57 +02:00
Zaiming Shi d0e9d4c4d5 fix(emqx_resource): raise error when failed to pick worker 2021-07-29 12:34:16 +02:00
Zaiming Shi 82df49d165 fix(emqx_config): handle default value correctly 2021-07-29 12:18:45 +02:00
Zaiming Shi 8d2f9d4e1c refactor(emqx_config): store configs per root name
Prior to this change, the global (a big map) config is saved
to persistent_term as one single term.

With this change, configs are keyed by their name spaces,
i.e. the root struct names in hocon schema.

This is to allow loading configs with more dynamic scope,
so we can start emqx app independently (without all merged configs),
and to allow external plugins to load their configs incrementally
at run-time.
2021-07-29 12:18:45 +02:00
Zaiming Shi 085d6c9ba0 fix(emqx_schema): resolve os env in translation
default value is a part of schema which should be static and
deterministic between different run-time or build-time environment
2021-07-29 12:18:45 +02:00
Turtle 2fcb9124bf chore(modules): fix check dialyzer 2021-07-29 16:57:14 +08:00
Turtle 76e3dd1905 chore(modules): Get the status by conf 2021-07-29 16:57:14 +08:00
Turtle cdc8000493 chore(modules): presence/delayed/telemetry/rewrite/topic_metrics independent conf 2021-07-29 16:57:14 +08:00
tigercl 59f645dc59
Merge pull request #5346 from tigercl/feat/mongo-auhtn
feat(authn): support mongodb authn
2021-07-29 16:51:28 +08:00
zhanghongtong 4c6739161d chore(emqx authz): rename root name for authz conf
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-29 16:44:40 +08:00
zhanghongtong 4ef00072b9 chore(authz): add annotations for rules
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-29 16:44:40 +08:00
zhouzb 5b6452d853 feat(authn): support mongodb authn 2021-07-29 16:07:36 +08:00
Turtle 0ef38c75ed chore(prometheus): update prometheus conf root name 2021-07-29 10:34:27 +08:00
Turtle 4afae79be9 chore(statsd): update statsd conf root 2021-07-29 10:08:07 +08:00
Turtle 61c11b8e3f chore(config): delete presence/subscription/rewrite config 2021-07-28 18:58:18 +08:00
Turtle b609ec5801 chore: delete emqx_telemetry_SUITE.erl file 2021-07-28 18:15:30 +08:00
Zaiming Shi cecc3bb899 chore(config): delete lager config
the only lib used lager was amqp client which is now updated
with lager droped from its dependencies
2021-07-28 18:06:59 +08:00
Shawn 90b20aae2b fix(dialyzer): nowarn_function extra_schema_fields/1 2021-07-28 14:51:02 +08:00
Shawn e7ced477a9 feat(config): read schemas for apps from file at build time 2021-07-28 14:51:02 +08:00
zhouzb 76d6949cd1 fix(authn): fix password hash algorithm for mysql and pgsql authn 2021-07-28 14:26:26 +08:00
Zaiming (Stone) Shi f93ee2ca17
Merge pull request #5330 from zmstone/feat-support-sname
feat: support short node name (sname)
2021-07-28 07:14:46 +02:00
Zaiming Shi e6110b0e9e fix(emqx_app): stop listeners in application prep_stop callback
Application:stop is call after the root supervisor is stopped,
in our case, prior to this fix, emqx_sup is stopped before
the listeners (hence the emqx_connection processes).

This causes shutdown to emit a lot of error logs
e.g. emqx_broker pool is down, but emqx_connection process is still
trying to call the pool
2021-07-28 08:53:49 +08:00
Zaiming Shi d628d37a93 fix(emqx_os_mon): log info level for unexpected message
also reply error for unexpected gen_server call
and refine log message for unexpected gen_server cast
2021-07-28 08:53:36 +08:00
Zaiming Shi d68589e0cb feat(boot): make possible to boot on short name 2021-07-27 22:16:10 +02:00
Zaiming Shi 0ab713050d fix(emqx_schema): call new hocon_schema API to get field value 2021-07-27 09:26:37 +02:00
zhanghongtong c1cbd8ece4 feat(authz): add enable config for connectot in config file
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-27 13:39:28 +08:00
zhanghongtong 8ba0890ce5 feat(authz): add id for every rule 2021-07-27 13:39:28 +08:00
tigercl 4dea41f8a2
Merge pull request #5319 from tigercl/feat/authn-http-api
feat(authn): provide http api and improve update mechanism
2021-07-27 11:16:59 +08:00
zhouzb b97c46e3cf test(authn): fix test cases 2021-07-27 10:53:33 +08:00
zhouzb 7febcb852a feat(authn http api): add test case and improve http api spec 2021-07-27 09:54:08 +08:00
Turtle 7a24878436 feat(prometheus): Support swagger prometheus API 2021-07-27 08:57:40 +08:00
Turtle fa37151b69 fix(tests): fix check apps api test cases 2021-07-26 21:35:28 +08:00
Turtle 5434aa02ff feat(mgmt): ignore emqx_dashboard API and apps API 2021-07-26 21:35:28 +08:00
Shawn c0c5bcc698 feat(config): support deleting a config entry 2021-07-26 18:50:24 +08:00
zhanghongtong 4c5b75f281 chore: rename acl to authz
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-26 16:10:33 +08:00
Turtle eac9420170 feat(dashboard): Support swagger dashboard API 2021-07-26 15:00:40 +08:00
Turtle 569d54a4c0 feat(dashboard): Update the configuration file to hocon 2021-07-26 15:00:40 +08:00
Turtle 3b1303340a chore: format statsd code 2021-07-26 14:55:42 +08:00
zhouzb 327ff8636f feat(authn http api): provide http api for authn and improve update mechanism 2021-07-26 14:41:15 +08:00
zhouzb 7d2aac7e24 feat(http pipelining): support to switch http pipelining 2021-07-26 14:41:15 +08:00
zhouzb 3e515d8a8a fix(authn): fix bugs for http authn 2021-07-26 14:41:14 +08:00
zhouzb 2a594b1a73 fix(authn): fix some bugs 2021-07-26 14:41:14 +08:00
zhouzb a5a596e3ac fix(schema): fix config schema for authn 2021-07-26 14:41:14 +08:00
turtleDeng cafed47da6
refactor(config): rename emqx_config:update_config/2 to emqx_config:update/2
refactor(config): rename emqx_config:update_config/2 to emqx_config:update/2
2021-07-26 09:14:13 +08:00
Zaiming (Stone) Shi 2e6b5a0d34
Merge pull request #5305 from zmstone/chore-add-notice-files
chore: add notice files
2021-07-24 09:49:52 +02:00
JianBo He cd22f54f08 fix(gw-sn): fix stats function call if session is undefied 2021-07-24 10:19:05 +08:00
JianBo He 14270da53b chore(gw): remove needless lines 2021-07-24 10:19:05 +08:00
JianBo He d35d0d7834 test(gw): refine sn tests 2021-07-24 10:19:05 +08:00
JianBo He 15bba6afe3 fix(gw-exproto): fix start udp/dtls listener 2021-07-24 10:19:05 +08:00
JianBo He 7f1d245a8f test(gw): refine exproto tests 2021-07-24 10:19:05 +08:00
JianBo He 4125209d1c fix(gw): fix bad function calling 2021-07-24 10:19:05 +08:00
JianBo He dbd78b83b1 chore(gw): delete needless files 2021-07-24 10:19:05 +08:00
JianBo He fd828ad216 fix(gw-exproto): fix diaylzer warnings 2021-07-24 10:19:05 +08:00
JianBo He 5f47ceb118 refactor(gw-exproto): move exproto into gateway 2021-07-24 10:19:05 +08:00
Shawn 935ef0db20 fix(config): rename callback functions for emqx_config_handler 2021-07-23 18:56:30 +08:00
Shawn bbf40a85bf fix(config): merge conflicts 2021-07-23 18:49:09 +08:00
DDDHuang ec88e3a404 chore: sys uptime by millisecond 2021-07-23 18:32:38 +08:00
Shawn 7a628e201f fix(config): merge conflicts 2021-07-23 18:20:45 +08:00
turtleDeng 29826000f0
Merge branch 'master' into update_config 2021-07-23 18:09:01 +08:00
turtleDeng 6bc096d22e
Merge pull request #5292 from turtleDeng/statsd
feat(statsd): optimize default value & add statsd http API
2021-07-23 18:05:58 +08:00
zhanghongtong 4b50bfb4c2 chore(config): rename acl to authorize in emqx.conf
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-23 17:56:15 +08:00
Zaiming Shi 79c550dc54 chore: add notice files 2021-07-23 11:47:04 +02:00
Turtle 6617ba2772 feat(statsd): add statsd http API 2021-07-23 17:41:53 +08:00
Turtle 1776acee8a refactor(statsd): optimize default value 2021-07-23 17:41:53 +08:00
Shawn 2ddcfdf365 refactor(config): rename emqx_config:update_config/2 to emqx_config:update/2 2021-07-23 17:25:39 +08:00
DDDHuang ffc7a070f4
Merge branch 'master' into api_format 2021-07-23 17:09:47 +08:00
Shawn ec8fed9a7d fix(test): wait a while after subscribing/unsubscribing to a topic 2021-07-23 17:06:28 +08:00
Shawn d205a88f2a refactor(config): change alarm.validity_period to ms 2021-07-23 17:06:28 +08:00
Shawn 67f76c009a refactor(config): change sysmon.os.mem_check_interval to ms 2021-07-23 17:06:28 +08:00
Shawn 41820e3bbd refactor(config): change sysmon.os.cpu_check_interval to ms 2021-07-23 17:06:28 +08:00
Shawn 7837069a93 fix(modules): disable telemetry by default 2021-07-23 17:06:28 +08:00
Shawn 14da108443 fix(mqtt): mqtt5 property session expiry interval not working 2021-07-23 17:06:28 +08:00
Shawn 6710695f9d fix(test): wait a while after kicking out the client 2021-07-23 17:06:28 +08:00
Shawn 0704cbc986 refactor(config): change mqtt.session_expiry_interval to ms 2021-07-23 17:06:28 +08:00
Shawn 684e46c45d refactor(config): change mqtt.await_rel_timeout to ms 2021-07-23 17:06:28 +08:00
Shawn c5bc7e7e57 fix(test): update testcases for retry_interval 2021-07-23 17:06:28 +08:00
Shawn 93e1257045 refactor(config): change mqtt.retry_interval to ms 2021-07-23 17:06:28 +08:00
Shawn 048ba1e067 refactor(config): change global_gc_interval to ms 2021-07-23 17:06:28 +08:00
DDDHuang 2b12fa1c05 chore: api code format; fix: atom refname; update minirest version 2021-07-23 16:40:19 +08:00
DDDHuang e96bac87ce refactor: alarms api; add: alarms format function 2021-07-23 13:56:23 +08:00
DDDHuang 9642bcce88 refactor: listeners api; add: listeners list function; fix: listener
already start error
2021-07-23 13:52:19 +08:00
DDDHuang 0cf4723c73
refactor: sub api; fix: fuzzy function (#5287) 2021-07-23 13:49:51 +08:00
Shawn 419036bd9a fix(test): remove emqx:get_env from lwm2m and telemetry 2021-07-23 10:56:20 +08:00
Shawn 7c5caee89c fix(trie): export set_compact/1 2021-07-23 10:56:20 +08:00
Shawn 327a464844 fix(test): reload emqx_plugins after updating the config 2021-07-23 10:56:20 +08:00
Shawn c2e7acc1f1 fix(test): change application:set_env/3 to emqx_config:put/2 2021-07-23 10:56:20 +08:00
Shawn 5fd54d13d2 fix(test): cannot get trie_compaction config 2021-07-23 10:56:20 +08:00
Shawn f2e62def1b refactor(config): remove emqx:get_env/1,2 from testcases 2021-07-23 10:56:20 +08:00
Shawn 0a3b77f65d fix(config): write configs to emqx_override.conf failed 2021-07-23 10:56:20 +08:00
Shawn 2666c06232 refactor(config): load emqx.conf before all other tasks in emqx_app 2021-07-23 10:56:20 +08:00
Shawn 1433a7e0fe refactor(config): remove emqx:get_env/1,2 2021-07-23 10:56:20 +08:00
JianBo He b28435f811 fix(gw-stomp): fix unknown outgoing packets 2021-07-22 19:56:04 +08:00
JianBo He 0f79ffca01 feat(gw-conn): support the incoming keepalive oct 2021-07-22 19:56:04 +08:00
JianBo He ef6a38bfd2 refactor(gw): unify the connection process module 2021-07-22 19:56:04 +08:00
JianBo He c6b3447598 fix(gw): correct stats/1 for mqttsn&stomp 2021-07-22 19:56:04 +08:00
Turtle 709f6a535b feat(telemetry): telemetry API support swagger 2021-07-22 16:21:05 +08:00
JianBo He 46ae179a7a chore(gw): fix dialyzer warnings 2021-07-22 09:00:20 +08:00
Zaiming (Stone) Shi fd2c3fe37b
Merge pull request #5282 from zmstone/upgrade-ekka-0.10.4
fix(rebar.config): upgrade to ekka 0.10.4
2021-07-21 15:24:28 +02:00
Zaiming Shi 051ac91299 fix(rebar.config): upgrade to ekka 0.10.4 2021-07-21 11:54:32 +02:00
William Yang de387c4c8e chore: gitignore erlang_ls.config 2021-07-21 17:51:49 +08:00
William Yang 7521d09079 feat(quic): toggle QUIC listener and fix ci test 2021-07-21 17:51:49 +08:00
Shawn f913cf9617 fix(rpc): read tcp_client_num from emqx_config 2021-07-21 17:34:01 +08:00
Shawn 29bb4c2a01 fix(configs): correct the default value of some configs 2021-07-21 17:34:01 +08:00
JianBo He 74db04f1c0 chore(emqx): enrich version type 2021-07-21 16:09:48 +08:00
JianBo He 6a99e1535f chore(gw): fix dialyzer warnings 2021-07-21 16:09:48 +08:00
JianBo He 623fc67fc9 chore(gw): uncomment mqttsn confs 2021-07-21 16:09:48 +08:00
JianBo He 9355adae4b fix(gw): fix xrefs 2021-07-21 16:09:48 +08:00
JianBo He f22384669e chore(gw): temporarily comment out asleep/awake tests 2021-07-21 16:09:48 +08:00
JianBo He 61473b8a5b test(gw): fix the mqtt-sn frame tests 2021-07-21 16:09:48 +08:00
JianBo He 18eaadae08 refactor(gw): remove needless modules 2021-07-21 16:09:48 +08:00
JianBo He 21796314f3 test(gw): fix bad test cases 2021-07-21 16:09:48 +08:00
JianBo He 0f9b5ff3a1 refactor(gw): use typical conn&channel to implement mqtt-sn gateway 2021-07-21 16:09:48 +08:00
JianBo He 45912d8a81 fix(gw): fix typos 2021-07-21 16:09:48 +08:00
JianBo He 40d714049e chore(gw): delete needless files 2021-07-21 16:09:48 +08:00
zhanghongtong 32eabf041e chore(authz): update url type for authz schema 2021-07-21 13:47:35 +08:00
JianBo He 26ba1b630c test(session): fix test cases 2021-07-21 09:47:49 +08:00
JianBo He b782d4c53a refactor(emqx): strip the side effects of emqx_session module 2021-07-21 09:47:49 +08:00
DDDHuang 2d4d7b2923 fix: routes api function cause 2021-07-20 13:56:20 +08:00
Shawn 98c7f9edb2 refactor(configs): make mqtt related configs only in zone 2021-07-20 11:41:16 +08:00
Shawn af5470cb30 refactor(configs): make acl related configs only in zone 2021-07-20 11:41:16 +08:00
Shawn e0e9b7ec5b fix(emqx_congestion): read congestion config only from zone 2021-07-20 11:41:16 +08:00
Shawn 2898e9c6dc refactor(config): make rate_limit only in listeners for now 2021-07-20 11:41:16 +08:00
Shawn e6424d63d8 refactor(config): don't allow inheritable config entries 2021-07-20 11:41:16 +08:00
Shawn 32b571091b fix(statsd): remove the extra debug log msg 2021-07-20 11:41:16 +08:00
DDDHuang 746a91efd8
Merge pull request #5263 from DDDHuang/apps_api
refactor: apps api; rename: error response util function
2021-07-20 11:40:59 +08:00
DDDHuang 9a64c9a464
Merge pull request #5261 from DDDHuang/routes_api
refactor: routes api
2021-07-20 09:40:04 +08:00
DDDHuang 51dc9093ed refactor: apps api 2021-07-20 09:35:30 +08:00
DDDHuang 14d9b876e7 refactor: routes api 2021-07-19 17:33:48 +08:00
zhanghongtong 358db0320b fix(authz): fix a re:replace error when username is undefined 2021-07-19 15:31:07 +08:00
DDDHuang 120c2b8cdf chore: add mgmt start listener log 2021-07-19 15:27:12 +08:00
Shawn 31f016fa22 refactor(config): remove emqx_zone 2021-07-19 14:47:43 +08:00
firest 4427ec8155 fix(emqx_retainer): fix remaining quota check error 2021-07-19 08:55:24 +08:00
zhanghongtong 2476664385 chore(release): update emqx release version 2021-07-17 18:12:40 +08:00
Shawn a0f8ca2c3f fix(config): delete the emqx.conf.old 2021-07-17 17:36:01 +08:00
Turtle eadaa9e557 Merge branch 'emqx_config' of https://github.com/terry-xiaoyu/emqx into emqx_config 2021-07-17 17:10:07 +08:00
Turtle 7b38ae7f47 fix(test): fix check paho test cases fail 2021-07-17 17:09:16 +08:00
Shawn 6915d9abeb fix(authz): update testcases for emqx_authz 2021-07-17 16:59:31 +08:00
Shawn 1d2cb6cb81
Merge branch 'master' into emqx_config 2021-07-17 15:53:12 +08:00
zhanghongtong bb417e4498 feat(authz): support http
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-17 15:48:29 +08:00
Turtle 89f10d3902 fix(test): fix check emqx management test cases fail 2021-07-17 15:40:18 +08:00