Commit Graph

5563 Commits

Author SHA1 Message Date
Ivan Dyachkov d4adf8532e fix: typo in http error code 2022-10-27 18:14:46 +02:00
Thales Macedo Garitezi c72f3a0ae9
Merge pull request #9211 from thalesmg/fix-mgmt-endpoint-status-code-v50
fix(mgmt_api): return 503 when emqx is not running in `/status` (5.0)
2022-10-27 11:11:00 -03:00
Zaiming (Stone) Shi 3e3653ab22
Merge pull request #9246 from zmstone/1027-fix-docs-br-tag
1027 fix docs br tag
2022-10-27 15:00:00 +02:00
zhongwencool 571420d8c6
Merge pull request #9235 from zhongwencool/improve-prometheus
refactor: update emqx_prometheus via emqx_config_handler
2022-10-27 20:12:24 +08:00
Zaiming (Stone) Shi c157392452 docs: fix self-closing html tag, change </br> to <br/> 2022-10-27 13:57:18 +02:00
Stefan Strigler ef5687d465 fix(emqx_gateway_api): don't crash on unknown status 2022-10-27 12:35:15 +02:00
Zaiming (Stone) Shi fd2a3f816e
Merge pull request #9238 from zmstone/1026-fix-docs
docs: fix zh punctuations
2022-10-27 10:39:22 +02:00
Zaiming (Stone) Shi bb6c3ed4ae docs: fix more zh translation desc 2022-10-27 08:39:58 +02:00
Zaiming (Stone) Shi a314950be9 docs: fix zh punctuations 2022-10-26 16:19:38 +02:00
Zhongwen Deng d6dfead31d fix: prometheus ct failed 2022-10-26 22:05:20 +08:00
Zhongwen Deng 3233a40af3 chore: don't delete bpapi when 5.0.x 2022-10-26 21:58:51 +08:00
Zhongwen Deng 97124be63a chore: add next_push_ms to emqx_prometheus:info/0 2022-10-26 21:32:19 +08:00
Zhongwen Deng 1757342e5b chore: make dialyzer happy 2022-10-26 21:32:19 +08:00
Zhongwen Deng e22f8ff2a8 refactor: sync emqx_prometheus via emqx_config_handler 2022-10-26 21:31:19 +08:00
ieQu1 6c8936467e chore(ekka): Bump version to 0.13.6 2022-10-26 12:08:14 +02:00
Thales Macedo Garitezi 0eca531e64 feat: add `retry-after` headers to unavailable response 2022-10-25 15:01:05 -03:00
zhongwencool 049f988642
chore: update apps/emqx_conf/src/emqx_conf_schema.erl
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-10-25 22:07:48 +08:00
Zhongwen Deng 4c5e64d5a3 feat: hibernate after send data to prometheus push_gateway 2022-10-25 12:27:25 +08:00
Zhongwen Deng 8578024637 chore: bump emqx_prometheus to 5.0.3 2022-10-25 11:21:16 +08:00
Zhongwen Deng 6710736243 feat: add prometheus collectors config 2022-10-25 09:41:58 +08:00
Thales Macedo Garitezi 997a262c96 fix(mgmt_api): return 503 when emqx is not running in `/status` (5.0) 2022-10-24 14:53:41 -03:00
Zaiming (Stone) Shi 93195f7b5b chore: fix introduced_in for new proto APIs 2022-10-24 11:53:51 +02:00
Zaiming (Stone) Shi 637bc886bb chore: bump release version to 5.0.10 2022-10-24 11:49:20 +02:00
Zaiming (Stone) Shi e3240b52a8 chore: bump app versions 2022-10-24 11:48:17 +02:00
Zaiming (Stone) Shi 508c0e84d0 Merge branch 'release-v50' into master 2022-10-24 11:46:31 +02:00
Zaiming (Stone) Shi 11daaa08e2 chore: bump version numbers to 5.0.9 2022-10-24 09:42:25 +02:00
Zaiming (Stone) Shi fa5d756ae6
Merge pull request #9186 from HJianBo/more-understanderable-trans
chore(docs): translate Max Awaiting PUBREL confs
2022-10-21 17:29:28 +02:00
Zaiming (Stone) Shi ca052bd0f4
docs: Update apps/emqx/i18n/emqx_schema_i18n.conf 2022-10-21 17:28:49 +02:00
Zaiming (Stone) Shi 918c011e33
Merge pull request #9198 from lafirest/test/rmv_unused_test_case
test(shared_sub): remove redundant test case
2022-10-21 12:36:52 +02:00
ieQu1 9d650a69b8 fix(gen_rpc): Fix Chinese translation 2022-10-21 10:25:22 +02:00
JianBo He 0f03449b43
chore: improve max_awating_rel_timeout conf docs
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2022-10-21 16:08:09 +08:00
JianBo He 49dd25cb14 chore: make spellcheck happy 2022-10-21 14:38:46 +08:00
firest 1d564ab8d5 test(shared_sub): remove redundant test case 2022-10-21 14:37:46 +08:00
Zaiming (Stone) Shi 0ca4f30a34
Merge pull request #9193 from zmstone/1020-chore-upgrade-gun-1.3.9
1020 chore upgrade gun 1.3.9
2022-10-21 08:13:21 +02:00
JianBo He 6d232fda5c chore(i18n): improve the max_awaiting_rel desc 2022-10-21 10:27:20 +08:00
JianBo He 72a228c521
chore: update apps/emqx/i18n/emqx_schema_i18n.conf
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2022-10-21 09:53:31 +08:00
Zaiming (Stone) Shi d1332b72e7 feat(api/publish): return detailed publish results
Prior to this change, the publish API returns 200 in most of
the cases.
This change provides more insights to the publish result.

For single message publish endpoint (`publish/`):

HTTP error codes are:

200: Everything is OK
202: No subscriber for the topic
400: When mesage is invalid message.
     e.g. bad topic name or QoS out of range.
503: Failed to dispatch the message. e.g. during EMQX restart.

The response body is a JSON object with two fields
`message_id`, and `publish_result`.
The `message_id` is a globally unique ID for tracing.
`publish_result` is `"OK"` when the message is delivered
to at least one subscriber.
Otherwise `"no_subscriber"`.
`publish_result` may also be some other informative
message to hint the failure result, the content of which
may change in the future.

For `publish/bulk` endpoint:

200: When all message in the bulk are published OK
202: If at least one message in the bulk had `"no_subscriber"` result
400: When mesage is invalid message. e.g. bad topic name or
     QoS out of range.
503: When there is at least one message failed at dispatch.

The reply body is a list of JSON objects having the same layout
as for hte `publish` endpoint.
2022-10-20 20:03:27 +02:00
Zaiming (Stone) Shi b3ffe89f35 test: assert message receive pid is in the expected pids list 2022-10-20 19:10:45 +02:00
ieQu1 d0120e1edc chore(gen_rpc): Bump version to 3.0.0 2022-10-20 16:32:06 +02:00
JianBo He fa020d036f chore(docs): translate Max Awaiting PUBREL confs 2022-10-20 20:14:36 +08:00
Zaiming (Stone) Shi c7a90d73b2 fix(shared): do not redispatch shared messages for certain shutdown
For takeover, there should be no message re-dispatch because
the messages will be retried by the new session.

For kick, messages should not be re-dispatched for security reason.
i.e. if admin has identified that there are malicious messages
stored in persisted sessions, killing the session should not
cause messages to be re-dispatched
2022-10-20 13:51:48 +02:00
lafirest c0c2657a80
Merge pull request #9139 from lafirest/fix/clean_blocked_user_data
feat(banned): clean retained/delayed data when client is banned
2022-10-20 18:00:48 +08:00
lafirest 0546cd3d1a
Merge pull request #9123 from lafirest/fix/kick_seesion_redispatch
fix(shared_sub): kick session should not cause session message redispatch
2022-10-19 09:47:10 +08:00
Thales Macedo Garitezi 62eeb4b8e8 feat(resource): reset metrics when stopping a resource 2022-10-18 09:32:35 -03:00
firest 7b3c67fbe9 test(shared_sub): ensure snabbkaffe will be stopped 2022-10-18 13:47:57 +08:00
firest bdaadda479 fix(banned): fix nit code 2022-10-18 13:39:48 +08:00
firest 3f1f244310 fix: fix bpapi versions 2022-10-18 13:39:48 +08:00
firest b2eed47976 chore: bump retainer version && update CHANGES 2022-10-18 13:36:08 +08:00
firest 69701ff578 feat(banned): clean retained/delayed data when client is banned 2022-10-18 13:35:09 +08:00
Zhongwen Deng c0ed8b82aa Merge branch 'trace-log-detail-api' of https://github.com/zhongwencool/emqx into trace-log-detail-api 2022-10-17 09:49:55 +08:00
zhongwencool 77a5125366
chore: update apps/emqx_management/src/emqx_mgmt_api_trace.erl
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-10-17 09:45:00 +08:00
Zhongwen Deng 58b990064c chore: update bpapi.verions 2022-10-17 09:43:17 +08:00
Zhongwen Deng 4d9cae0387 feat: get trace file's detail via /trace/:name/log_detail 2022-10-17 09:43:15 +08:00
zhongwencool bc0cc80d32
Merge pull request #8924 from zhongwencool/authn-config-check
fix: authentication should be array, not struct
2022-10-17 09:14:05 +08:00
Ivan Dyachkov f2db35db39 chore: delete unused function clause 2022-10-14 10:46:11 +02:00
zhongwencool bfc780f95b
Merge branch 'master' into authn-config-check 2022-10-14 16:36:50 +08:00
Ivan Dyachkov 5a8cab46a9 test: update publish api test suite 2022-10-14 10:17:22 +02:00
Zaiming (Stone) Shi c2f176c1e7 fix(api): publish API only returns message ID 2022-10-14 09:49:46 +02:00
Zhongwen Deng a02fea0a19 chore: update bpapi.verions 2022-10-14 15:16:09 +08:00
Zhongwen Deng 4579d7fff8 feat: get trace file's detail via /trace/:name/log_detail 2022-10-14 11:38:39 +08:00
Thales Macedo Garitezi 2d01726b22 fix: account calls when resource is not connected as matched 2022-10-13 15:32:04 -03:00
Thales Macedo Garitezi 1b2b629cdd feat: emit telemetry events for all resource worker metrics 2022-10-13 15:32:04 -03:00
JianBo He 56000cbf3e refactor: more rigorous checking of flapping to improve stability of the system
port: https://github.com/emqx/emqx/pull/9045
2022-10-12 10:03:47 +08:00
JianBo He 5a66c8b117
Merge pull request #9082 from HJianBo/update-api-docs
chore(i18n): enrich HTTP API desc
2022-10-12 09:36:11 +08:00
Thales Macedo Garitezi f0ff32c031 test: fix tests after counter changes 2022-10-11 17:45:48 -03:00
Thales Macedo Garitezi 357e5919ce chore: add copyright disclaimer 2022-10-11 09:51:16 -03:00
Kjell Winblad 57270fb8fc feat: add support for counters and gauges to the Kafka Bridge
This commit adds support for counters and gauges to the Kafka Brige.
The Kafka bridge uses [Wolff](https://github.com/kafka4beam/wolff) for
the  Kafka connection. Wolff does its own batching and does not use the
batching functionality in `emqx_resource_worker` that is used by other
bridge types. Therefore, the counter events have to be generated by
Wolff. We have added
[telemetry](https://github.com/beam-telemetry/telemetry) events to Wolff
that we hook into to change counters and gauges for the Kafka bridge. The
counter called `matched` does not depend on specific functionality of
any bridge type so the updates of this counter is moved higher up in the
call chain then previously so that it also gets updated for Kafka
bridges.
2022-10-10 14:40:57 -03:00
firest b4eb0f18f9 fix(shared_subs): rename redispatch function name and simply test case 2022-10-10 18:06:55 +08:00
firest f0769cb765 fix(shared_sub): kick session should not cause session message redispatch 2022-10-10 13:52:09 +08:00
Zaiming (Stone) Shi 63774ba5d3
Merge pull request #9104 from zmstone/1005-fix-shared-sub-dispatch
fix(shared): re-dispatch inflight (QoS1) and mqueue messages
2022-10-09 11:41:30 +02:00
lafirest d600c870af
Merge pull request #9060 from lafirest/fix/delayed_pub
fix(delayed): Improve time precision of delayed messages
2022-10-09 10:39:31 +08:00
Zaiming (Stone) Shi 1c29e2806a test(shared): add a test case to ensure shared dispatch retry
to ensure retry will not enter a dead loop
2022-10-05 22:33:49 +02:00
Zaiming (Stone) Shi e8279a02ef fix(shared): re-dispatch inflight (QoS1) and mqueue messages
when session terminates (not due to take over)
shared delivery should be re-dispatched to other members
in the group
2022-10-05 22:33:48 +02:00
Zaiming (Stone) Shi abb941d161 docs: remove port 8081
port 8081 is the management API in 4.x
in 5.0 api port is 18083 (same as for serving the dashboard)
2022-10-05 17:15:19 +02:00
JianBo He d43b680f14 chore: add comments to explain`/status` cant be found in swagger docs 2022-10-01 09:40:27 +08:00
JianBo He 7d7b05ae4e chore: update app.src 2022-09-30 23:32:23 +08:00
JianBo He 93d3fec73f chore(i18n): correct tags name 2022-09-30 23:14:19 +08:00
JianBo He 6589a66710 Merge branch 'update-api-docs' of github.com:HJianBo/emqx into update-api-docs 2022-09-30 23:05:07 +08:00
JianBo He a84c6f938c chore(swagger): caption tags name 2022-09-30 23:04:26 +08:00
JianBo He 9c6c13789e
chore: update apps/emqx_gateway/i18n/emqx_gateway_api_authn_i18n.conf
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-09-30 23:03:01 +08:00
JianBo He 8292572da6
chore: apply suggestions from code review
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-09-30 23:02:28 +08:00
JianBo He d17c473dc2 chore(i18n): fix the bad desc for statsd 2022-09-30 18:57:08 +08:00
JianBo He 5b219deb4a Merge remote-tracking branch 'zibo/chore/api-desc' into update-api-docs 2022-09-30 18:48:05 +08:00
zhouzb 0975bf21a9 docs: improve api desc for statsd 2022-09-30 17:55:12 +08:00
JianBo He 5fa1e63392 chore(gw): update HTTP API docs for gateway 2022-09-30 17:44:36 +08:00
zhouzb f08982be93 chore: improve api desc for alarms 2022-09-30 15:34:49 +08:00
zhouzb d1a15f1a43 chore: improve api descs for banned 2022-09-30 15:05:01 +08:00
Zaiming (Stone) Shi 242a69359c
Merge pull request #9047 from HJianBo/remove-colon-port
Improve the `ip_port()` definition and `bind` print format
2022-09-29 05:56:50 +02:00
JianBo He 834910b6f6 chore: update app.src 2022-09-27 17:24:44 +08:00
JianBo He 39ad172377 chore: replace ip_port() wuth host_port() for all connectors 2022-09-27 15:19:42 +08:00
JianBo He 6581911d5c Merge remote-tracking branch 'stone/0922-upgrade-ip-port-schema' into remove-colon-port 2022-09-27 15:08:27 +08:00
Zaiming (Stone) Shi 00e4b4da5a fix(schema): support hostname.domain:port for mqtt bridge 2022-09-27 09:02:49 +02:00
firest 56816559d9 chore: bump emqx_modules && update CHANGES 2022-09-27 13:39:25 +08:00
firest 6836a502ac fix(delayed): Improve time precision of delayed messages
Use milliseconds internally in emqx_delayed to store the publish time, improving precision
2022-09-27 13:24:54 +08:00
JianBo He 607f68bab1 chore(schema): don't automaticly add ipv4 address if configured as
`:1883`
2022-09-27 13:01:39 +08:00
JianBo He 03eaa07c02 chore: add more comments for bind display perference 2022-09-27 12:51:00 +08:00
Thales Macedo Garitezi 129f09f88b chore: remove extra information from denied lwt log 2022-09-26 15:23:59 -03:00
Shawn 19e3f5919e chore: release e5.0.0-beta.4 2022-09-26 19:54:01 +08:00
Shawn dfe14be8b2 chore: bump app vsns 2022-09-26 18:23:28 +08:00
JianBo He c9904e78aa chore: remove colon port in HTTP-API and CLI
In the https://github.com/emqx/emqx/pull/8571, we add a colon before the
port. But it was not popular, so we removed ta in this PR
2022-09-26 17:30:54 +08:00