Commit Graph

1548 Commits

Author SHA1 Message Date
JianBo He d7322aff19 chore(exhook): empty appup.src 2021-08-03 14:06:58 +08:00
JianBo He 604e282978 chore(exhook): fix dialyzer warnings 2021-08-03 14:06:58 +08:00
JianBo He 922aa7aae5 test(exhook): refine property-tests 2021-08-03 14:06:58 +08:00
JianBo He 7c46c8712b docs(exhook): renanme CheckAcl to Authorize 2021-08-03 14:06:58 +08:00
JianBo He aa019b34ad test(exhook): refine tests 2021-08-03 14:06:58 +08:00
JianBo He 879c191e41 refactor(exhook): adapt to the hocon schmea 2021-08-03 14:06:58 +08:00
tigercl 58b39361b3
Merge pull request #5388 from tigercl/feat/authn-api
feat(authn api): support query authentication status
2021-08-03 11:05:12 +08:00
zhouzb 05b72157e2 test(authn): add test cases 2021-08-03 10:40:08 +08:00
zhouzb 99534e7212 feat(authn api): support query authentication status 2021-08-03 10:25:04 +08:00
lafirest 149ef6d7cc style(emqx_gateway): improve some emqx_coap code 2021-08-03 09:48:08 +08:00
zhouzb 5e9ed72975 chore(authn rename): missing name change 2021-08-03 09:24:49 +08:00
zhouzb fb716ae8b2 chore(authn rename): rename emqx_authn to authentication 2021-08-03 09:21:07 +08:00
DDDHuang 8e2b1aed32 fix: publish api params 2021-08-02 17:20:15 +08:00
DDDHuang 52ff6e1b3e fix: listeners id param name 2021-08-02 15:54:25 +08:00
DDDHuang ca50dfe686 fix: add cleints api query params doc 2021-08-02 10:03:28 +08:00
Zaiming Shi b10fb4e95d refactor: unify all io:format calls to use the same macro 2021-08-01 09:36:59 +02:00
Zaiming Shi 5f51f68cc9 fix(mqttsn): do not call emqx_logger:Level directly 2021-08-01 09:36:59 +02:00
Zaiming Shi 683974e1c8 refactor(log/textfmt): print mfa metadata in text formatter 2021-08-01 09:36:59 +02:00
Zaiming Shi 2998a87a8d fix(log/jsonfmt): log map() reports at top level JSON fields 2021-08-01 09:36:59 +02:00
Zaiming Shi 5d59ac1f02 refactor(logging): delete log headers from all modules 2021-08-01 09:36:59 +02:00
Zaiming Shi e57f99168b refactor(logger): delete log header parse-transform
because now we have MFA in log
2021-08-01 09:36:59 +02:00
Zaiming Shi 0f5c5db841 refactor(logger): stop using anonymous fun for logging 2021-08-01 09:36:59 +02:00
Zaiming Shi df69a9c031 chore: upgrade to hocon 0.11.0 2021-08-01 09:36:59 +02:00
lafirest 137294db8f refactor(eqmx_gateway): port emqx_coap into emqx_gateway framework 2021-07-31 15:50:09 +08:00
zhanghongtong 9a03138e53 feat(hooks): emqx hooks support put 2021-07-30 19:01:24 +08:00
zhanghongtong 1f4ce31010 chore(release): update emqx release version 2021-07-30 17:52:35 +08:00
Zaiming Shi 40faa31241 test(authz): no need to mock emqx_config 2021-07-30 16:53:21 +08:00
tigercl 305142f991
Merge pull request #5361 from turtleDeng/plugins/module-attr
chore(plugins): delete emqx_plugins module attributes
2021-07-30 15:54:20 +08:00
JianBo He e6a2770e2f chore(gw): rename emqx_gateway to gateway 2021-07-30 15:42:03 +08:00
JianBo He 602f0ebb60 feat(gw-sn): call subscribe/unsubscribe hook 2021-07-30 15:42:03 +08:00
JianBo He c986f89319 test(gw): use emqx_config:init_load/2 2021-07-30 15:42:03 +08:00
JianBo He ec72513cf8 feat(gw-stomp): call unsubscribe hook 2021-07-30 15:42:03 +08:00
JianBo He f87bef9ffb feat(gw-stomp): run subscribe hooks 2021-07-30 15:42:03 +08:00
JianBo He a116c0afd1 fix(gw-stomp): unify the hearbeat type name 2021-07-30 15:42:03 +08:00
JianBo He c36cdf9682 refactor(gw): add bytes & packets metrics 2021-07-30 15:42:03 +08:00
JianBo He 80eb7f313d docs(gw): enrich README.md 2021-07-30 15:42:03 +08:00
JianBo He 67bb8d0564 chore(gw): some format improvement 2021-07-30 15:42:03 +08:00
JianBo He 6f084fe6cf fix(gw-cli): fix start/stop/lookup not works 2021-07-30 15:42:03 +08:00
Shawn 054623bd56 fix(authz): update the post_config_update callback 2021-07-30 15:37:09 +08:00
Shawn dc1ba51935 fix(emqx_config): always check config files using richmap at emqx bootup 2021-07-30 15:37:09 +08:00
Shawn 35032e1d44 refactor(emqx_config): call MOD:post_config_update/3 after checking hocon schema 2021-07-30 15:37:09 +08:00
Turtle 9e97de04c9 chore(plugins): delete emqx_plugins module attributes 2021-07-30 14:32:01 +08:00
Turtle d8eb8a36e0 test(modules/event_message): do not set fake config 2021-07-30 14:17:34 +08:00
Turtle ef1b591532 chore: Dynamically get the app that starts by default 2021-07-30 13:43:25 +08:00
tigercl e2d507cad9
Merge pull request #5356 from tigercl/feat/authn-mongo-api
feat(authn mongo api): add api spec for mongo authn
2021-07-30 13:16:31 +08:00
Turtle 485f1293fc chore(event_message): rename event_topic to event_message 2021-07-30 12:10:55 +08:00
Turtle ebe31c79d4 feat(event-topic): Add more fields to disconnected event payload 2021-07-30 12:10:55 +08:00
Turtle d6c375ab5b feat(event-topic): fix check dialyzer 2021-07-30 12:10:55 +08:00
Turtle 459d2154c7 feat(event-topic): add more test cases 2021-07-30 12:10:55 +08:00
Turtle 3903575435 feat(event-topic): support publish broker event topic 2021-07-30 12:10:55 +08:00
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