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