Commit Graph

3335 Commits

Author SHA1 Message Date
William Yang 1b5acdb9c5 feat(quic): at least 8 x number of cores acceptors 2021-08-27 08:35:40 +02:00
William Yang eb7625a595 fix: quic listener spec 2021-08-27 08:35:40 +02:00
William Yang 2ef2acc850 feat(quic): adapt to quicer 0.0.8 2021-08-27 08:35:40 +02:00
William Yang abd58bb235 feat(quic): idle_timeout
transport idle timeout should be at least 3x mqtt idle_timeout
2021-08-27 08:35:38 +02:00
William Yang cf04e5cce3 feat(quic): adapt to new quicer 2021-08-27 08:34:01 +02:00
Turtle 856d394860 feat(topic_metrics): update topic_metrics conf to array 2021-08-27 13:58:21 +08:00
Turtle 307eaa7f1e feat(rewrite): update rewrite conf to array 2021-08-27 13:58:21 +08:00
zhongwencool 468102f462 chore: replace recon by obsserver_cli 1.7.0 2021-08-27 13:55:49 +08:00
zhongwencool f4e3eeb2b2 chore(recon): rename to emqx_ctl observer status 2021-08-27 13:55:49 +08:00
zhongwencool 6957445554 chore(recon): add observer_cli to emqx_ctl 2021-08-27 13:55:49 +08:00
DDDHuang 86231f795d
refactor: close managment http 8081 (#5564) 2021-08-27 13:46:39 +08:00
zhongwencool e35a6c7350 chore: cluster_call early aborted 2021-08-27 11:15:46 +08:00
zhongwencool c1c24af002 fix: dialyzer warning 2021-08-27 10:09:26 +08:00
Shawn 4c1e0802d9 fix(logger): remove debug code from emqx_logger 2021-08-26 18:44:15 +08:00
Shawn 436dba83b8 feat(logger): update configs for logger at runtime 2021-08-26 18:31:44 +08:00
DDDHuang e92255114f fix: update delayed config 2021-08-26 18:04:46 +08:00
zhongwencool 73238ed81f feat: emqx_resource support cluster_call 2021-08-26 17:23:39 +08:00
zhongwencool 4528508620 feat: replace gen_statem by gen_server 2021-08-26 17:23:38 +08:00
zhongwencool 60c1c4edba feat: move cluster_call to emqx_machine 2021-08-26 17:23:38 +08:00
zhongwencool 2c1b1fbfa8 chore(config): rename cluster_call to hot_config_loader 2021-08-26 17:22:56 +08:00
zhongwencool d55ba6b2e8 chore: transaction without nnonymous function 2021-08-26 17:20:22 +08:00
zhongwencool 765c94152b feat: add cluster_call.retry_interval/mfa_max_history/mfa_cleanup_interval config 2021-08-26 17:20:22 +08:00
zhongwencool e5129ead6d fix(CI): Error detected: 'Invalid reference to group api in emqx_rule_engine_SUITE:all/0' 2021-08-26 17:17:47 +08:00
zhongwencool 53e386ad4e feat(emqx_cluster_call): ensure the consistency of resources
When EMQX updates the cluster resources via HTTP API, it first updates the local node resources, and then updates all other nodes via RPC Multi Call to ensure the consistency of resources (configuration) in the cluster.
2021-08-26 17:17:47 +08:00
DDDHuang bcd15e9388
fix: delayed message api doc (#5569)
* fix: delayed message api doc & add delayed message internal & remaning params
2021-08-26 15:11:41 +08:00
DDDHuang 6d7d94c452 fix: topic rewrite api method 2021-08-26 10:08:01 +08:00
Shawn 005332d45d fix(config): do not allow default values for configs in zones 2021-08-26 09:11:30 +08:00
Shawn 7b63f7f18b refactor(emqx_mangement): update emqx_mangement for new listener,zone configs 2021-08-26 09:11:30 +08:00
Shawn 4ea451e207 fix(emqx): update the type spec for listener 2021-08-26 09:11:30 +08:00
Shawn cc56c74964 refactor(emqx): update the tests for the new zone,listener config 2021-08-26 09:11:30 +08:00
Shawn c5f0091b5d refactor(config): rework - config struct for zones and listeners
```
listeners.tcp.default {
  bind = "0.0.0.0:1883"
  acceptors = 16
  max_connections = 1024000
  access_rules = [
    "allow all"
  ]
  proxy_protocol = false
  proxy_protocol_timeout = 3s
  mountpoint = ""
  tcp.backlog = 1024
  tcp.buffer = 4KB
}
listeners.ssl.default {
  bind = "0.0.0.0:8883"
  acceptors = 16
  max_connections = 512000
  access_rules = [
    "allow all"
  ]
  proxy_protocol = false
  proxy_protocol_timeout = 3s
  mountpoint = ""
  ssl.versions = ["tlsv1.3", "tlsv1.2", "tlsv1.1", "tlsv1"]
  ssl.keyfile = "etc/certs/key.pem"
  ssl.certfile = "etc/certs/cert.pem"
  ssl.cacertfile = "etc/certs/cacert.pem"
  tcp.backlog = 1024
  tcp.buffer = 4KB
}
listeners.quic.default {
  bind = "0.0.0.0:14567"
  acceptors = 16
  max_connections = 1024000
  keyfile = "etc/certs/key.pem"
  certfile = "etc/certs/cert.pem"
  mountpoint = ""
}
listeners.ws.default {
  bind = "0.0.0.0:8083"
  acceptors = 16
  max_connections = 1024000
  access_rules = [
    "allow all"
  ]
  proxy_protocol = false
  proxy_protocol_timeout = 3s
  mountpoint = ""
  tcp.backlog = 1024
  tcp.buffer = 4KB
  websocket.idle_timeout = 86400s
}
listeners.wss.default {
  bind = "0.0.0.0:8084"
  acceptors = 16
  max_connections = 512000
  access_rules = [
    "allow all"
  ]
  proxy_protocol = false
  proxy_protocol_timeout = 3s
  mountpoint = ""
  ssl.keyfile = "etc/certs/key.pem"
  ssl.certfile = "etc/certs/cert.pem"
  ssl.cacertfile = "etc/certs/cacert.pem"
  tcp.backlog = 1024
  tcp.buffer = 4KB
  websocket.idle_timeout = 86400s
}
```

```
zones.default {

}
```
2021-08-26 09:11:30 +08:00
DDDHuang 4be58ae759 fix: event message api method 2021-08-25 17:38:08 +08:00
Turtle e4f5e9332e feat: support array bridge_mqtt conf 2021-08-25 13:34:00 +08:00
DDDHuang 78cf115a90 fix: swagger doc 2021-08-25 11:58:28 +08:00
DDDHuang f184cd3d0e fix: node parameters 2021-08-25 11:57:51 +08:00
DDDHuang bafe5bae1c fix: placeholder & topic schema no default 2021-08-25 11:57:37 +08:00
DDDHuang b13ae50bed fix: start sup 2021-08-25 11:57:37 +08:00
DDDHuang aa6f1ac88d feat: auto subscribe, todo: test SUITE 2021-08-25 11:57:37 +08:00
Rory Z 7e8dde7e26 chore: fix dialyzer error
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-25 10:15:00 +08:00
zhanghongtong a2bafd1a18 feat(authz): support authorization config file part 2 2021-08-25 10:15:00 +08:00
zhanghongtong a7fac1a7a3 feat(authz): support authorization config file part 1. 2021-08-25 10:15:00 +08:00
Rory Z 1886aa8bff chore: fix dialyzer error 2021-08-25 10:15:00 +08:00
zhanghongtong bfb363bc61 chore(emqx_authz): rename authorization to authorization_rules in emqx_authz.conf 2021-08-25 10:15:00 +08:00
zhanghongtong 5652917af6 chore(authorization): moves authorization configuration items from zone to root 2021-08-25 10:15:00 +08:00
Turtle 87881621bb fix: fix typo 2021-08-25 10:13:21 +08:00
Turtle 675d23111c chore(swagger-schema): Delete the schema that is not reused 2021-08-24 23:01:51 +08:00
DDDHuang bf67fa1be1 fix: generate topic metrics api & delayed message api path 2021-08-24 22:47:27 +08:00
Turtle a1ae4457df feat(prometheus): add get prometheus_format stats api 2021-08-24 21:01:21 +08:00
Turtle bc325e55fc fix(authn-authz-api): fix authn/authz test cases fail 2021-08-24 18:19:21 +08:00
Turtle e0c05242a7 refactor(minirest-callback): refactor minirest callback function 2021-08-24 18:19:21 +08:00
Turtle 0cb5c3e6ec refactor(topic-metrics): refactor topic_metrics api 2021-08-24 11:15:25 +08:00
Turtle ffc9846744 Merge branch 'refactor-mgmt-schema-util' of https://github.com/turtleDeng/emqx into refactor-mgmt-schema-util 2021-08-24 11:10:34 +08:00
turtleDeng 1eee85c2bf
Merge pull request #1 from DDDHuang/deng_mgmt_pr
fix: alarms api page & limit parameters
2021-08-24 11:10:26 +08:00
DDDHuang f1ba482ed6 fix: alarms api page & limit parameters 2021-08-24 11:04:39 +08:00
Turtle 5a87d941f6 refactor(retainer): refactor emqx_retainer test case 2021-08-24 10:53:06 +08:00
Turtle 47378e0e96 refactor(schema-utils): refactor mgmt swagger schema utils 2021-08-24 10:53:06 +08:00
DDDHuang 8125ec7d08
feat: topic metrics api (#5520) 2021-08-24 10:52:18 +08:00
DDDHuang 32a84b3aba fix: clients api node params 2021-08-24 10:51:01 +08:00
Turtle 55c3ea6064 refactor(retainer): refactor emqx_retainer test case 2021-08-24 10:47:42 +08:00
DDDHuang e88823fd36
Merge pull request #5540 from DDDHuang/fix_clients_api
fix: clients subscribe api
2021-08-24 09:57:17 +08:00
Turtle 5c93c35559 refactor(schema-utils): refactor mgmt swagger schema utils 2021-08-24 00:32:51 +08:00
k32 397a04ec7c
Merge pull request #5509 from k32/rlog-fixes
Minor fixes to improve compatibility with RLOG feature
2021-08-23 16:10:33 +02:00
k32 2b976af9ea chore(ekka): Bump version to 0.10.8 2021-08-23 14:10:26 +02:00
Shawn de92cd411b feat(log): get the least severe level of handlers as the primary level 2021-08-23 18:25:45 +08:00
Shawn 8ac8b9785b refactor(config): update the conf struct for logger 2021-08-23 18:25:45 +08:00
Shawn 985dce786c refactor(config): update the conf struct for logger 2021-08-23 18:25:45 +08:00
DDDHuang 25bae9e397 fix: clients subscribe api 2021-08-23 10:31:24 +08:00
Turtle 31f588671d refactor(statsd): refactor statsd swagger schema 2021-08-23 09:42:25 +08:00
Turtle d4d4ba9ea4 refactor(prometheus): refactor prometheus swagger schema 2021-08-23 09:41:46 +08:00
k32 ecd7964a5d fix(authn): Use local content shard for the chain table 2021-08-21 17:49:00 +02:00
k32 9c74fa42a5 chore(rlog): Use the new method of creating shards 2021-08-21 17:47:53 +02:00
k32 53a0c8b8a8 chore(ekka): Bump version to 0.10.7 2021-08-21 17:47:34 +02:00
k32 ca0fb214a7 feat(emqx-sn): Add tables to the SN shard 2021-08-21 17:47:34 +02:00
k32 af902df040 fix(emqx_machine): Fix application startup order
Ekka application should be started first
2021-08-21 17:47:34 +02:00
Shawn 91f787533d fix(log): text formatter crash
```
(emqx@127.0.0.1)1> logger:error("abc").
ok
2021-08-20T18:10:01.180622+08:00 error: FORMATTER CRASH: {string,"abc"}
```
2021-08-21 15:36:36 +08:00
Shawn f3efc89192
refactor(config): replace all ':' with '=' in the *.conf (#5531) 2021-08-19 19:57:42 +08:00
DDDHuang 65563e9f8c
Merge pull request #5511 from DDDHuang/delayed_api
feat: add delayed api
2021-08-19 17:59:29 +08:00
DDDHuang c07fadc336
Merge pull request #5526 from DDDHuang/fix_node_stats_api
fix: node stats api
2021-08-19 17:59:05 +08:00
DDDHuang 11ea506af6
Merge branch 'master' into delayed_api 2021-08-19 17:24:16 +08:00
DDDHuang cc1b8eca6c fix: params & config generate; api base64 encode payload 2021-08-19 17:23:11 +08:00
DDDHuang 2088fe17cf fix: node stats api 2021-08-19 16:45:38 +08:00
zhouzb f0ba6af660 chore(authn): fix dialyzer 2021-08-19 16:01:55 +08:00
zhouzb e6c01cb6e6 fix(undefined function): fix undefined function 2021-08-19 16:01:55 +08:00
zhouzb 87051c0e53 test(authn): fix test case 2021-08-19 16:01:55 +08:00
zhouzb 178d1006e1 chore(match): reduce the risk of crash 2021-08-19 16:01:55 +08:00
zhouzb e5892d16e5 feat(auth): support hot config 2021-08-19 16:01:38 +08:00
zhouzb e6f9767066 feat(authn): support superuser 2021-08-19 15:59:26 +08:00
zhouzb 429def6b95 fix(authn): fix http api spec 2021-08-19 15:59:26 +08:00
zhouzb 3f2ca5282c chore(authn): remove implied schema 2021-08-19 15:59:26 +08:00
zhouzb b7bc8b8cac feat(authn): improve apis of moving authenticators 2021-08-19 15:59:26 +08:00
zhouzb 60f0e8e5a5 refactor(authn): replace mnesia with ets table 2021-08-19 15:59:26 +08:00
zhouzb 61da3a4fd7 feat(authn hot config): initial support for hot config 2021-08-19 15:59:26 +08:00
Shawn ef59309ed0 fix(config): check config failed when updating 2021-08-19 15:53:45 +08:00
Shawn e17612b237 fix(config): return only updated confs for emqx:update_config/2,3 2021-08-19 15:53:45 +08:00
lafirest d321cdbd47
Merge pull request #5515 from lafirest/refactor/emqx_retainer_api
refactor(emqx_retainer): emqx_retainer_api use openapi model
2021-08-19 10:56:58 +08:00
DDDHuang 5520326ce3 feat: add delayed api 2021-08-19 10:48:12 +08:00
lafirest adc6226eae refactor(emqx_retainer): emqx_retainer_api use openapi model 2021-08-19 10:12:08 +08:00
DDDHuang 9c76247cde fix: alarms api timestamp millisecond 2021-08-19 09:56:32 +08:00
Shawn 213b7c2501 fix(config_api): improve the schema for config update APIs 2021-08-19 09:38:33 +08:00
turtleDeng f01b77e4fe
refactor(event-message): refactor event_message
* refactor(event-message): refactor event_message configuration

* feat(event-message): add event_message REST API
2021-08-18 16:26:15 +08:00
Shawn e8e95d39ef
refactor(config): move emqx_config:get/get_raw to emqx:get_config/get_raw_config (#5517) 2021-08-18 14:52:57 +08:00
Shawn 5f6bcd1ebb fix(config_api): remove config APIs that already been provided by apps 2021-08-18 11:30:20 +08:00
Shawn a1da519d55 fix(rewrite): use emqx:update_config/2 instead of emqx_config:update/2 2021-08-18 09:42:06 +08:00
Shawn bf6251e20f refactor(config): update the return values of config handlers 2021-08-18 09:42:06 +08:00
Shawn e5c3199d6e fix(config): emqx:update_config/2,3 doesn't work on binary conf paths 2021-08-18 09:42:06 +08:00
Shawn 24207b80cb refactor(config): improve the return value of emqx:update_config/2,3 2021-08-18 09:42:06 +08:00
Shawn bd8263e324 refactor(config): move APIs for config update,remove,reset to emqx
Move the emqx_config:update,remove,reset APIs to emqx, to remove
the circular dependency between the modules emqx_config and
emqx_config_handler.

After this change the dependency among these modules will be:

```
emqx ---> emqx_config
   |          ^
   |          |
   + ---> emqx_conifg_handler
```
2021-08-18 09:42:06 +08:00
Shawn a2067c3bf3 refactor(spec): move some type specs from emqx_config_handler to emqx_config 2021-08-18 09:42:06 +08:00
JianBo He 9190f1f6f9 chore(gw): reformat config options 2021-08-18 09:26:48 +08:00
JianBo He b8cb31c0ff fix(gw): fix the bad return value for initiating chain 2021-08-18 09:26:48 +08:00
JianBo He 430f20adc1 fix(gw): fix conn_state 2021-08-18 09:26:48 +08:00
JianBo He c5a4e05418 refactor(gw): rename gateway type to name 2021-08-18 09:26:48 +08:00
JianBo He 9072a60652 chore(gw): refine the cli command 2021-08-18 09:26:48 +08:00
JianBo He 630e0fb8cb test(gw): fix bad test cases 2021-08-18 09:26:48 +08:00
JianBo He cac0ea4b19 chore(gw): fix dialyzer warnigns 2021-08-18 09:26:48 +08:00
JianBo He be4d2495f0 refactor(gw): single instance support only 2021-08-18 09:26:48 +08:00
DDDHuang 50ee840220
feat: add rewrite api (#5502) 2021-08-17 17:49:37 +08:00
Turtle 7fcd925eff feat(delayed): add delayed REST HTTP API 2021-08-17 09:21:19 +08:00
turtleDeng 4dc5772103
chore(rule-metrics): remove hot upgrade code change 2021-08-17 09:15:27 +08:00
Shawn 988d620421 fix(test): mock emqx_resource:remove/1 in emqx_authz_http_SUITE 2021-08-16 17:41:53 +08:00
Shawn 7f03cd0e8b fix(config): update the calls to emqx_config:update/2,3 2021-08-16 17:41:53 +08:00
Shawn b381b5d2b9 feat(emqx_config): return config maps when emqx_config:update/2,3 2021-08-16 17:41:53 +08:00
zhanghongtong 26c0754732 chore(release): update emqx release version
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-13 17:55:56 +08:00
DDDHuang 4b3b4dd54c fix: dashboard 404 conflict 2021-08-13 16:57:10 +08:00
DDDHuang 3f1d3b9cf4
Merge pull request #5482 from DDDHuang/monitor_millseconds
fix: monitor timestamp millsecond
2021-08-13 15:27:48 +08:00
DDDHuang 1868414637
Merge pull request #5473 from DDDHuang/jwt
feat: api support jwt
2021-08-13 15:26:45 +08:00
DDDHuang 23a8e28f77 fix: monitor timestamp millsecond 2021-08-13 14:26:43 +08:00
DDDHuang 22dd6e1a86 fix: rename tab & params 2021-08-13 14:19:31 +08:00
tigercl e73df538a7
Merge pull request #5476 from k32/fix-auth-init-order
fix(rlog): Ensure the correct order of table initalization
2021-08-13 13:49:06 +08:00
Turtle 96ee04bbd0 chore(modules): remove start emqx-ee load_modules 2021-08-13 13:44:00 +08:00
DDDHuang 93dbdaa84a feat: dashboard api support jwt 2021-08-13 11:23:13 +08:00
lafirest e80d95bd76
Merge pull request #5470 from lafirest/fix/emqx_coap
fix(emqx_gateway): fix some error in README and code
2021-08-13 10:46:37 +08:00
k32 dfa6761e49 fix(rlog): Ensure the correct order of table initalization 2021-08-12 19:58:52 +02:00
zhanghongtong 618125b1da fix(connector): fix schema error for mongo 2021-08-12 21:52:06 +08:00
DDDHuang 3b52328244 fix: monitor response data format 2021-08-12 19:41:53 +08:00
lafirest 20f9cf19cd fix(emqx_gateway): fix some error in README and code 2021-08-12 19:01:28 +08:00
Shawn 4bf1e83449 fix(test): variable 'Id' shadowed in 'fun' 2021-08-12 17:20:05 +08:00
Shawn cc1222ffea fix(emqx_config): correct some function sepcs and return values 2021-08-12 17:20:05 +08:00
Shawn b652a64dbb fix(config): reset config failed due to rootname not found 2021-08-12 17:20:05 +08:00
Shawn 8dbb14b668 feat(config): improve the API for resetting configs 2021-08-12 17:20:05 +08:00
Shawn 1c86bd6199 feat(emqx_config): add emqx_config:fill_defaults/1 2021-08-12 17:20:05 +08:00
JianBo He a4d29ec8de chore(exhook): fix diaylzer warnings 2021-08-12 16:34:10 +08:00
JianBo He 4921c00a19 chore(exhook): change the name to binary type 2021-08-12 16:34:10 +08:00
JianBo He b3fac24c5e chore(schmea): include the emqx_exhook_schema 2021-08-12 16:34:10 +08:00
JianBo He 3cef377b33 feat(exhook): make request_failed_action working 2021-08-12 16:34:10 +08:00
JianBo He 6574fc4f14 fix(exhook): set trap_exit flag 2021-08-12 16:34:10 +08:00
JianBo He f5acf5fd0b refactor(exhook): move all manager code into mngr module 2021-08-12 16:34:10 +08:00
JianBo He 7e5be6ed6c refactor(exhook): add mechanism to reload the failure server 2021-08-12 16:34:10 +08:00
DDDHuang 870b68c104
Merge pull request #5463 from DDDHuang/fix_moniyor
fix: depart monitor api path & add parameter
2021-08-12 14:35:37 +08:00
lafirest 18c2765a1e
Merge pull request #5441 from lafirest/refactor/emqx_coap
refactor(emqx_gateway): refactor the emqx_coap
2021-08-12 14:05:12 +08:00
x1001100011 9640132edc
Merge pull request #5452 from x1001100011/make-EMQX_DEP_APPS-static
feat: make EMQX_DEPS_APPS static
2021-08-11 21:50:57 -07:00
DDDHuang e3415ae361 fix: depart api path & add parameter 2021-08-12 12:24:11 +08:00
DDDHuang 8efe854f63 fix: remove test code 2021-08-12 10:24:46 +08:00
DDDHuang 324a036aa8 fix: users api path & params name 2021-08-12 10:23:28 +08:00
k32 5abec37098 chore(build): Globally set snk_kind macro to msg 2021-08-11 14:03:41 +02:00
Zaiming (Stone) Shi 258191a5b4
Merge pull request #5453 from zmstone/fix-invalide-config-value-in-schema
fix(config): infinity is not valid for log.max_depth
2021-08-11 13:48:47 +02:00
lafirest aafdf29cd8 refactor(emqx_gateway): refactor the emqx_coap 2021-08-11 19:03:02 +08:00
zhanghongtong a94bfaf28b feat(authz api): support move rule position
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-11 18:23:22 +08:00
DDDHuang d62e7239c2
Merge pull request #5451 from DDDHuang/fix_monitor_params
fix: merge counters each node
2021-08-11 17:46:25 +08:00
Zaiming Shi ac1763cd80 fix(config): infinity is not valid for log.max_depth 2021-08-11 10:14:59 +02:00
x1001100011 698c6c6ebc feat: make EMQX_DEPS_APPS static 2021-08-11 01:09:27 -07:00
DDDHuang 776aabda7d fix: merge counters each node 2021-08-11 15:00:30 +08:00
zhanghongtong 632cc895d5 chore(authz): formatting error returned
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-11 11:06:58 +08:00
zhanghongtong 69a0fafd6b feat(authz api): get api support paging
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-11 11:06:58 +08:00
zhanghongtong c821528af9 feat(authz api): full CURD api 2021-08-11 11:06:58 +08:00
zhanghongtong 4bb1e9c964 feat(authz): more better update function
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-11 11:06:58 +08:00
zhanghongtong c26ec5c0dd feat(authz): support api
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-11 11:06:58 +08:00
lafirest 69a202e4c0
Merge pull request #5446 from lafirest/chore/emqx_retainer
chore(emqx_retainer): simplified the retainer config
2021-08-11 09:46:21 +08:00
Zaiming (Stone) Shi 1239eb23b0
Merge pull request #5407 from zmstone/build-ci-on-otp-24
Build ci on otp 24
2021-08-10 12:20:48 +02:00
lafirest 6c73679b02 chore(emqx_retainer): simplified the retainer config 2021-08-10 17:47:30 +08:00
Shawn 566d6f8d74 refactor(config): create a dedicate API for config reset 2021-08-10 15:17:45 +08:00
Shawn a4b773b66f refactor(config): create only one API for resetting configs 2021-08-10 15:17:45 +08:00
Shawn 74a849bfbb refactor(config): create APIs for each root-name 2021-08-10 15:17:45 +08:00
Shawn bafcb7f34a fix(emqx_config): always return atom-key map for emqx_config:get/2 2021-08-10 15:17:45 +08:00
Shawn eee98a5803 fix(API): return 400 if delete failed 2021-08-10 15:17:45 +08:00
Shawn 139712fc94 fix(API): return 200 for PUT method 2021-08-10 15:17:45 +08:00
Shawn 2738815af9 feat(API): add a general API to update configs 2021-08-10 15:17:45 +08:00
Shawn 990c383e01 feat(emqx_config): support fetching the entire config map 2021-08-10 15:17:45 +08:00
Shawn c05e92a7cc fix(emqx_config): delete the emqx_config_handler:remove_config/2 2021-08-10 15:17:45 +08:00
Shawn b8253ee94f feat(config): support config path mixed with atom() and binary() 2021-08-10 15:17:45 +08:00
Shawn c745120453 fix(api): update config APIs for emqx core 2021-08-10 15:17:45 +08:00
Shawn c9911a3b5f feat(api): add API /v5/configs for updating configs 2021-08-10 15:17:45 +08:00
DDDHuang 1064278db1 chore: add node param in subscription 2021-08-10 14:23:17 +08:00
DDDHuang 054406322a
Merge pull request #5440 from DDDHuang/api_desc
chore: add some api params description
2021-08-10 13:41:23 +08:00
DDDHuang a87521358e chore: add some api params description 2021-08-10 11:42:58 +08:00
Zaiming Shi 0fb81c7e99 fix(coap): log error level only when it error 2021-08-09 21:46:07 +02:00
DDDHuang dc2f6303d4
Merge pull request #5393 from DDDHuang/dashboard_metrics
feat: add dashboard metrics; api username params
2021-08-09 18:36:42 +08:00
x1001100011 0fe3083cd7 build: add erlang 24.0.1 for ci 2021-08-09 11:12:25 +02:00
Zaiming (Stone) Shi 672f94e118
Merge pull request #5430 from zmstone/refactor-simplify-ci-scripts
refactor: simplify ci scripts
2021-08-09 11:09:44 +02:00
Zaiming Shi f1262e04bf feat: log error if timed out waiting after init:stop 2021-08-09 10:28:30 +02:00
Zaiming Shi 668ecbe97b fix: improve node stop wait loop 2021-08-09 10:28:04 +02:00
DDDHuang b50afba5b9 feat: add dash board metrics 2021-08-09 16:20:02 +08:00
tigercl 40a9932167
Merge pull request #5427 from tigercl/feat/redis-authn
feat(authn redis): support authn with redis
2021-08-09 11:11:37 +08:00
JianBo He ade69c1e18 fix(exhook): more safe type convertion 2021-08-07 08:48:34 +08:00
JianBo He 6dd33907f1 fix(exhook): fix the server name type 2021-08-07 08:48:34 +08:00
JianBo He 183a65d263 fix(exhook): fix the server config format 2021-08-07 08:48:34 +08:00
JianBo He 31d4f72d16 fix(exhook): correct the broker-info 2021-08-07 08:48:34 +08:00
Zaiming Shi e698600903 refactor(emqx_machine): supervise terminator 2021-08-06 12:51:25 +02:00
Zaiming Shi 032a49114c fix(emqx_machine): start terminator in emqx_machine_app 2021-08-06 12:16:15 +02:00
Zaiming Shi 5063d3a2b3 fix(emqx_machine): ensure digraph is deleted after use
also add tests
2021-08-06 12:16:10 +02:00
Zaiming Shi 75f9741d75 fix(terminator): ensure erl_signal_server init:stop
ensure init:stop can be triggered by kill signal even before the
terminator is ready
2021-08-06 11:10:16 +02:00
Zaiming Shi 304b322a0c fix(emqx_machine): handle early shutdown 2021-08-06 10:20:42 +02:00
zhouzb f43d3e9f66 feat(authn redis): add api spec for redis authentication 2021-08-06 15:22:49 +08:00
Zaiming Shi 81c9dcb6ae refactor(emqx_machine_terminator): future-proof try-catch
Ensure exceptions in emqx_machine:stop_apps/0 is caught
and call init:stop/0 in the after clause
2021-08-06 08:51:48 +02:00
Zaiming Shi 044e084698 feat(emqx_machine): ignore sighup, ensure sigterm 2021-08-06 08:46:07 +02:00
Zaiming Shi 85f8ba10ce fix(emqx_machine_signal_handler): ignore unknown info 2021-08-06 08:21:06 +02:00
zhouzb 3761db0525 feat(authn redis): support authn with redis 2021-08-06 14:05:31 +08:00
Zaiming Shi bee8f01ee8 feat(emqx_machine): add a kill signal handler
Now the signal from kill PID can also be handled gracefully
2021-08-06 02:12:21 +02:00
Zaiming Shi 4025d31295 refactor(emqx_machine): move code from _app module to to emqx_machine 2021-08-05 14:30:59 +02:00
Zaiming Shi bc23ff5e47 feat: add graceful shutdown
prior to this cahnge emqx node shutdown is done by init:stop
which might have undesired stop order of the applications

in this change, emqx_machine_terminator is added to stop apps
in defined order and then terminate the node in infinite loop
2021-08-05 14:11:58 +02:00
Zaiming Shi d453005d8b fix(emqx): pin quicer 0.0.7 2021-08-05 13:43:22 +02:00
Zaiming Shi d3038c0b71 fix(exhook): BrokerInfo uptime is now a duration integer 2021-08-05 12:58:03 +02:00
Zaiming Shi 6f8ca4ce07 feat: allow disable listener from environment variable 2021-08-05 12:58:03 +02:00
Zaiming Shi ce24696329 refactor(emqx_app): start quic listener condition
when the app is present, and when listners are configured
2021-08-05 12:58:03 +02:00
Zaiming Shi bdb871cb9a refactor(emqx_listeners): simplify listing logic 2021-08-05 12:07:10 +02:00
DDDHuang e7cb9491c6
Merge pull request #5306 from DDDHuang/sys_info
chore: sys uptime by millisecond
2021-08-05 13:51:06 +08:00
zhanghongtong dba37513a1 fix(emqx_ctl): fix an error when "~" in the print content 2021-08-05 10:45:40 +08:00
JianBo He 835eb84b5d chore(gw): remove needless files 2021-08-05 09:47:17 +08:00
JianBo He 94e33c3917 chore(gw): adapt to authn config format 2021-08-05 09:47:17 +08:00
JianBo He 1b2f732f13 chore(gw): fix zone name 2021-08-05 09:47:17 +08:00
JianBo He f36c523ae8 chore(gw): integrate with emqx-authn 2021-08-05 09:47:17 +08:00
Zaiming (Stone) Shi 58446217a6
Merge pull request #5341 from zmstone/split-emqx-app
Split emqx app
2021-08-04 09:43:10 +02:00
DDDHuang b3ea7f9cce
Merge pull request #5378 from DDDHuang/clients_api_fix
fix: add cleints api query params doc & unsubscribe api
2021-08-04 15:07:51 +08:00
Zaiming Shi 781de7f2a7 test(authz): ensure config cleaned up after test 2021-08-04 08:40:09 +02:00
Zaiming Shi e6232665a3 refactor(emqx): ensure app shutdown and reboot order
make use of application dependency to ensure start order.
also the same dependency top-sorted for shutdown and reboot order
2021-08-04 08:40:03 +02:00
DDDHuang b99ec04267
Merge pull request #5379 from DDDHuang/listeners_api_fix
fix: listeners id param name
2021-08-04 14:39:45 +08:00
DDDHuang ac2084daeb
Merge pull request #5382 from DDDHuang/publish_api_fix
fix: publish api params
2021-08-04 14:39:05 +08:00
Zaiming Shi 3cda69fa3f fix(logging): text log formatter avoid binary literals 2021-08-04 08:36:10 +02:00
Zaiming Shi 58d0717b2f fix: add debug log for apps stop 2021-08-04 08:36:10 +02:00
Zaiming Shi e6907478ba test: move emqx_global_gc_SUITE to emqx_machine app 2021-08-04 08:36:10 +02:00
Zaiming Shi 5b5006e8ab refactor(emqx_sup): move global gc to emqx_machine app 2021-08-04 08:36:10 +02:00
Zaiming Shi 522d8e0a4a refactor(config): split config and schema 2021-08-04 08:36:10 +02:00
Zaiming Shi 4bbd398550 refactor(emqx): create emqx_machine app 2021-08-04 08:36:10 +02:00
JianBo He 7e00805af3 chore(gw-lwm2m): remove needless files 2021-08-04 10:10:22 +08:00
JianBo He b16cf44bf6 refactor(gw-lwm2m): refine lwm2m 2021-08-04 10:10:22 +08:00
DDDHuang 07a4d54a25 fix: unsubscribe api; query params 2021-08-03 17:08:40 +08:00
JianBo He 82321da7ad chore(exhook): bump version 2021-08-03 14:06:58 +08:00
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
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
Shawn c9cf8b66e7 fix(docker): cannot set log_level using os env 2021-07-17 15:25:18 +08:00
Turtle b9e3095ac3 fix(test): fix check emqx management test cases fail 2021-07-17 14:59:52 +08:00
Shawn d047f820e5 fix(test): update testcases for emqx_gateway 2021-07-17 13:19:45 +08:00
lafirest 4c931470d8 feat(eqmx_retainer): let emqx_retainer can support other types of databases 2021-07-17 13:18:03 +08:00
Shawn f68b8c4097 fix(test): update testcases for emqx_gateway 2021-07-17 11:07:46 +08:00
Shawn f7f2523030 fix(dialyzer): handle undefined conf in post_update_config/2 2021-07-17 10:38:30 +08:00
Shawn 7a77f4f54e fix(emqx_schema): start emqx as standalone app failed 2021-07-17 10:19:06 +08:00
Turtle dfa9026ea3 fix(tests): fix check authn test fail 2021-07-17 09:06:05 +08:00
Shawn 4d279e47d8 chore(merge): merge code from master 2021-07-17 01:20:57 +08:00
Shawn b82693cc0b fix(authz): support config hot upgrading 2021-07-17 01:18:14 +08:00
turtleDeng fc13c59d7b
chore: use hocon to replace cuttlefish 2021-07-16 23:52:43 +08:00
DDDHuang 92ae5663a6 feat: update to openapi 3.0.0 2021-07-16 23:26:56 +08:00
Turtle ed1cf33b9d chore: merge coap/lwm2m/exhook/exproto to emqx_gateway dir 2021-07-16 23:24:36 +08:00
turtleDeng 8c9be070b4
chore: update hocon tag 2021-07-16 19:59:06 +08:00
Shawn 6d871cc52f fix(authz): resources not created when authz started 2021-07-16 18:06:10 +08:00
Shawn bb6d7c4e0b
Merge branch 'master' into emqx_config 2021-07-16 16:49:50 +08:00
Shawn c3d24db642 fix(authz): update emqx_authz for new config 2021-07-16 14:07:27 +08:00
k32 9d9d9f2ce3
Merge pull request #5227 from k32/dev/bump_ekka
chore(ekka): Bump version to 0.10.3
2021-07-15 17:09:59 +02:00
Shawn c834494113 fix(cli): CLI of emqx_gateway_cli broken 2021-07-15 20:39:06 +08:00
Shawn 543f2c78c5 fix(ekka): cluster cannot get started with the new config 2021-07-15 20:28:12 +08:00
DDDHuang 1bfa6ead42 refactor: publish api; add: batch schema util function 2021-07-15 19:25:26 +08:00
DDDHuang 187d200cb7 refactor: stats api & metrics api; fix: clients api parameter type lose 2021-07-15 19:19:26 +08:00
Shawn a1488b3946 fix(test): merge conflicts 2021-07-15 18:54:31 +08:00
Shawn ba166967c9
Merge branch 'master' into emqx_config 2021-07-15 18:44:56 +08:00
Shawn a16a15e3a9 fix(test): remove tlsv1.3 provisionally to make test pass 2021-07-15 18:34:27 +08:00
tigercl 4ed14dfdfd
Merge pull request #5228 from tigercl/feat/one-authn
feat(one authn): merge simple authn and enhanced authn
2021-07-15 17:37:50 +08:00
Shawn d5756ecd52 fix(test): update the testcases 2021-07-15 17:19:46 +08:00
zhouzb ddda18bcb8 chore(authn): add jose dep 2021-07-15 17:14:35 +08:00
DDDHuang e838df99a9 fix: api auth header support 2021-07-15 16:20:46 +08:00
Shawn 6fbf20b930 fix(test): update the testcases 2021-07-15 16:19:26 +08:00
zhouzb 07ce636803 feat(authn): support enable authn in config 2021-07-15 16:16:41 +08:00
Shawn 3c47ab92d7 fix(listeners): update the default tls ciphers 2021-07-15 15:11:54 +08:00
Shawn bcae0cbb50 fix(gateways): hardcode the listener and zone names 2021-07-15 14:26:12 +08:00
zhouzb 5ecc992944 chore(authn): fix coap authn and update tag for esasl 2021-07-15 14:25:23 +08:00
Shawn f6702b020e fix(hocon): update hocon version to 0.10.1 2021-07-15 13:57:24 +08:00
Shawn 533f4cf63e fix(dialyzer): some dialyzer complains 2021-07-15 13:52:06 +08:00
Shawn 0cc01c2bee Merge branch 'master' into emqx_config 2021-07-15 13:18:57 +08:00
Shawn 4da59a5785 fix(dialyzer): some dialyzer problems 2021-07-15 11:56:13 +08:00
Shawn 7d66760c1e fix(hocon): start emqx failed using os env configs 2021-07-15 11:55:31 +08:00
zhouzb beecc4c5a2 test(authn): fix test case for authn 2021-07-15 11:36:49 +08:00
JianBo He 980c7d91db chore(gw): fix mqtt-sn test cases 2021-07-15 10:35:28 +08:00
JianBo He fc5baf8fd4 refactor(gw-sn): support mutil-registry process 2021-07-15 10:35:28 +08:00
JianBo He d2430e70a8 refactor(gw): move mqtt-sn to gateway 2021-07-15 10:35:28 +08:00
k32 3bb41ae367 chore(ekka): Bump version to 0.10.3 2021-07-14 17:49:31 +02:00
zhouzb 42c5432514 fix(http authn): fix bugs for http authn and http connector 2021-07-14 18:20:46 +08:00
zhouzb 6a8e35ce3a feat(one authn): merge simple authn and enhanced authn 2021-07-14 16:54:13 +08:00
Shawn 157b97eb8a fix(config): workaround for emqx_sn to use configs of mqtt_tcp listener 2021-07-14 10:09:12 +08:00
Shawn 8e32d5314d
Merge branch 'master' into emqx_config 2021-07-14 09:33:58 +08:00
Shawn 25d7616881 fix(test): update the testcases for emqx_ws_connection_SUITE 2021-07-13 19:58:54 +08:00
Shawn 7d9321a141 fix(test): apply default configs for emqx_session_SUITE 2021-07-13 18:39:57 +08:00
Shawn e4e7eb81e4 fix(test): update the testcases for emqx_mqtt_caps_SUITE 2021-07-13 17:42:44 +08:00
Shawn 3aaf7041a6 fix(test): update the testcases for emqx_os_mon_SUITE 2021-07-13 17:41:15 +08:00
Shawn 01c4c655fb fix(config): make emqx_caps work with the new config struct 2021-07-13 16:42:32 +08:00
Shawn a0bddfc834 fix(config): start quic connection with zone and listener names 2021-07-13 16:41:20 +08:00
Shawn b123299c70 fix(config): make flapping work with the new config 2021-07-13 16:39:59 +08:00
Shawn 871353704a fix(test): update the testcases for emqx_channel_SUITE 2021-07-13 16:38:06 +08:00
Shawn 868b31d123 fix(test): update the testcases for emqx_mqtt_protocol_v5_SUITE 2021-07-13 16:37:18 +08:00
DDDHuang 500047fa30 refactor: nodes api ; add: api test util module 2021-07-13 15:08:28 +08:00
Shawn 6d9918d3e5 fix(test): update the testcases for emqx_vm_mon_SUITE 2021-07-13 13:52:29 +08:00
DDDHuang a8e4ea18ea
Merge pull request #5215 from DDDHuang/clients_api_test
test: add clients api SUITE & add api [delete sub]
2021-07-13 10:38:20 +08:00
Shawn 400e08e229 fix(flapping): make the flapping work with the new config structure 2021-07-12 20:43:11 +08:00
zhanghongtong 9081a22b8c chore(deps): deps in rebar must not be use branch
Can use tags or commit ids in rebar deps

Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-12 18:28:47 +08:00
Shawn 499ab5d9c4 fix(config): configure a plain map for mqueue_priorities 2021-07-12 18:10:47 +08:00
DDDHuang 734a5b9420 test: add clients api SUITE & add delete sub api 2021-07-12 18:10:40 +08:00
zhouzb 5bb55332a5 chore(auhtn): keep one ssl opts checking func 2021-07-12 16:33:52 +08:00
Shawn 88638da287 fix(test): always init session with zone and listener names 2021-07-12 16:00:04 +08:00
Shawn ea68beeef6 fix(test): update test cases for emqx_client_SUITE 2021-07-12 15:41:43 +08:00
tigercl df92a60085
feat(http connector): support http connector (#5192)
- support http connector
- support http authn
2021-07-12 15:35:06 +08:00
DDDHuang d04e1c6f54
refactor: clients api; status api; adapter minirest v1
The serious influence:
authn:
api
authz:
api; api test suit
dashboard:
all closed
lwm2m:
api;
modules:
api(api_topic_metrics, modules_api); test suit(emqx_modules_SUITE)
prometheus:
api
retainer:
api; api test suit
rule_engine:
api: api test suit
telemetry:
api
2021-07-12 10:05:51 +08:00
Shawn 042ff2e0d7 fix(test): update test cases for emqx_connection_SUITE 2021-07-10 18:01:45 +08:00
Shawn 4c122d0722 fix(test): update test cases for emqx_channel_SUITE 2021-07-10 14:29:45 +08:00
Zaiming (Stone) Shi 6b3cfd7c5d
fix(boot): boot exit on config error (#5200)
* fix(hocon): fail on hocon command errors

call_hocon bash function respects exit code

* fix(bin/emax): get dist_port config from hocon

after config file refactoring (to hocon format) the grep pattern
no longer works

* fix(bin/emqx): set -o pipefail

* feat(bin/emqx): add a DEBUG option
2021-07-10 08:51:35 +08:00
Shawn 9cda6ab3c8 feat(alarm): update the validity_period timer 2021-07-09 19:09:44 +08:00
zhanghongtong 3195561a79 feat(authz connector): match directly using the results returned by sql
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-09 18:21:36 +08:00
DDDHuang c11a8c6db6 refactor: clients api; status api; adapter minirest v1
The serious influence:

authn:
    api
authz:
    api; api test suit
dashboard:
    all closed
lwm2m:
    api;
modules:
    api(api_topic_metrics, modules_api); test suit(emqx_modules_SUITE)
prometheus:
    api
retainer:
    api; api test suit
rule_engine:
    api: api test suit
telemetry:
    api
2021-07-09 18:09:07 +08:00
Zaiming (Stone) Shi 088e615818
Merge pull request #5193 from zmstone/fix-emqx-conf-default-wss-max-conn-102400
fix(emqx.conf): default wss max_connection from 16 to 102400
2021-07-09 11:39:34 +02:00
Shawn 14af90d0c3 fix(test): update test cases for emqx_acl_cache_SUITE 2021-07-09 15:38:51 +08:00
Shawn fb78e510ca fix(test): update test cases for emqx_access_control_SUITE 2021-07-09 15:04:54 +08:00
zhanghongtong 178bafbabf chore: rename required function to not_empty
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-09 14:18:41 +08:00
zhanghongtong c10d154dab chore(connector): update schema file
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-09 14:18:41 +08:00
Zaiming Shi e990220e83 fix(emqx.conf): default wss max_connection from 16 to 102400 2021-07-09 07:34:04 +02:00
William Yang 793aa951e3
Merge pull request #5170 from qzhuyan/dev/william/ci-fix-build-package
ci(quic): conditionally quicer build
2021-07-08 17:34:47 +02:00
Shawn 0ac2492b36 fix(config): read app env 'config_files' to get the path to emqx.conf 2021-07-08 19:27:36 +08:00
Shawn 27d5c5b2d9 feat(config): make quic listener start with the new config 2021-07-08 15:05:07 +08:00
Rory Z 6d7424b445 fix(connector): fix mongo connector auth failed 2021-07-08 11:25:18 +08:00
William Yang 79d169b3ff chore(quic): bump emqtt vsn to 1.4.2 2021-07-07 13:41:47 +02:00
William Yang 660d16e84b feat(config): set the endpoint to "" to disable listener 2021-07-07 13:41:47 +02:00
William Yang 1f20bae392 feat(quic): conditionally build/start quicer app 2021-07-07 13:41:47 +02:00
William Yang 6adb76cf27 ci: try 32bit fix from quicer 2021-07-07 13:41:43 +02:00
Shawn 477097c062 chore(project): merge code from master 2021-07-07 19:32:52 +08:00
DDDHuang dc98cff27b
fix: mgmt conf & schema; prepare minirest (#5178) 2021-07-07 17:04:05 +08:00
Shawn 4dd72e59fa feat(listeners): make the APIs and CLIs work with the new listener 2021-07-07 16:22:38 +08:00
Shawn 630b54f6ee feat(acl): make mqtt over websocket work with the new config 2021-07-07 14:43:54 +08:00
Rory Z 612d25fdb3 chore(connector): rename mongo config key 2021-07-07 10:06:10 +08:00
k32 a95b91c005 chore(coap): Fix debug logs 2021-07-06 18:42:39 +02:00
Shawn 707851c36f refactor(force_shutdown): force shutdown the connection if it don't kill itself 2021-07-06 20:11:49 +08:00
Shawn 7c0fd642bb feat(acl): make acl cache work with the new config 2021-07-06 19:24:54 +08:00
Shawn 5efd5c8d3b refactor(emqx_connection): make the mqtt tcp connection work with new config 2021-07-06 18:26:54 +08:00
lafirest 72f9e60d63 feat(emqx_retainer): add simple restapi for emqx_retainer 2021-07-06 18:16:05 +08:00
Rory Z 53df218e6a feat(connector): mongo support replica set 2021-07-06 18:07:06 +08:00
Shawn 969e72c82b refactor(connection): remove active_n from state 2021-07-05 19:13:55 +08:00
Shawn 10b01a34ef refactor(listeners): reformat the code for starting stopping listeners 2021-07-05 19:12:26 +08:00
Shawn 6d92d87ae7 feat(map_lib): support emqx_map_lib:deep_merge/2 2021-07-05 19:11:05 +08:00
Rory Z fd0a211629 chore(authz): mongo connector support ssl 2021-07-05 17:57:03 +08:00
Rory Z 45ee504dc5 chore(authz): rename ACL to AuthZ 2021-07-05 17:57:03 +08:00
Rory Z f733293a8b chore(authz): update apps vsn 2021-07-05 17:57:03 +08:00
Rory Z f92b8bb7fb chore(authz): add test case 2021-07-05 17:57:03 +08:00
Rory Z 694f3bd67f feat(authz): support mongo single 2021-07-05 17:57:03 +08:00
Shawn 807bbb391c feat(map_lib): support emqx_config:get_listener_conf/3,4 2021-07-05 16:40:00 +08:00
Shawn 0aec496886 feat(map_lib): support emqx_map_lib:deep_find/2 2021-07-05 16:02:03 +08:00
Shawn 30c2a76dae refactor(emqx_config): move helper funcs to emqx_map_lib 2021-07-05 15:16:01 +08:00
DDDHuang ce1e6ce89d fix: start jiffy by emqx 2021-07-05 14:41:33 +08:00
Shawn a884d215e1 fix(connection): start connection failed 2021-07-05 13:50:37 +08:00
Shawn fb809a5c08 fix(active_n): revert the changes to active_n 2021-07-05 11:28:21 +08:00
Shawn 8b3fcde380 feat(config): make the listeners up 2021-07-02 22:17:22 +08:00
JianBo He 8ee86f2fbe fix(gw): start emqx-gateway after emqx restarted 2021-07-02 20:41:46 +08:00
JianBo He 56cdd469ff
feat(gateway): The prototype for emqx-gateway application
* feat(gateway): add gateway application

* chore(gateway): add normalize confs function

* refactor: move emqx-stomp to emqx-gateway subdir

* chore(gateway): fix some bad function defination

* chore(gateway): rename type to gwid

* chore(gw-stomp): upgrade the implementation to suppport gateway instance

* feat(gw-stomp): add reconnect mechanism

* refactor(stomp): upgrade connection&channel module to latest

* refactor(stomp): more details for handle_in/out

* refactor(stomp): get it up and running

* chore(gw): load some modules by default

* refactor: upgrade the emqx-gateway schema module

* test(stomp): fix testcases for stomp gateway

* chore(gw): remove needless lines

* chore(gateway): correct a lot of specs

* chore(gw): add a draft for metrics

* chore(gw): add metrics process

* fix(gw): fix cm process monitor

* test(gw): add test cases for gateway-regitry

* feat(gw): add metrics/cli for gateway

* fix(gw): fix xref errors

* chore(gw): pretty gateway metrics print format

* chore(gw-stomp): generate clientid by default

* chore(gw): more reliable

* chore(gw): rename gwid -> type

* chore(gw): impl the update logic

* chore(gw): some format improvement

* chore(gw): adapts the hocon configs

* fix(gw): fix xref errors

* test(gw): update configurations for tests

* chore(gw): ignore diaylzer warnings

* fix(gw): fix bad function call

* chore(gw): remove needless comments
2021-07-02 20:17:40 +08:00
zhanghongtong 4313e37994 chore(release): update emqx release version 2021-07-02 19:11:02 +08:00
Turtle 24292f4f4e chore: delete plugins related configuration 2021-07-02 18:12:06 +08:00
William Yang 5ae8cd2fa3 fix(quic): dialyzer errors 2021-07-02 17:10:56 +08:00
William Yang 72117f3f1d feat(quic): bump emqtt and quicer version
emqtt: 1.4.1
quicer: 0.0.5
2021-07-02 17:10:56 +08:00
William Yang 82d0f2b016 feat(quic): Add tests and support more listener option
- support option `active_n`
- add quic group in emqx_mqtt_protocol_v5_SUITE
- fix rate limit
2021-07-02 17:10:56 +08:00
Turtle 41870a00b3 chore: fix emqx_retainer test cases 2021-07-02 17:01:16 +08:00
Turtle 390b28a25d fix: join cluster fail 2021-07-02 17:01:16 +08:00
Turtle 918a26e921 feat(conf): merge all conf to emqx.conf 2021-07-02 17:01:16 +08:00
Turtle fb2f2741a4 fix: fix test cases fail 2021-07-02 14:41:28 +08:00
Turtle 4b87594839 feat(conf): sys、mon、alarm、plugins、broker、mqtt conf to hocon 2021-07-02 14:41:28 +08:00
zhouzb c7cbe819ed feat(hocon): convert config format of rpc and log to hocon 2021-07-02 14:41:28 +08:00
Shawn 092c5455c8 feat(config): change configs of zone and listener to hocon format 2021-07-02 14:41:28 +08:00
Turtle 8266a79867 feat(conf): cluster/node conf to hocon 2021-07-02 14:41:28 +08:00
DDDHuang 2c7fd0b547
chore: mgmt hoconf support (#5153) 2021-07-02 00:02:09 +08:00
turtleDeng c7e540f4f1
feat(modules): Update the configuration file to hocon (#5151) 2021-07-01 20:08:13 +08:00
zhanghongtong bf4c31b745 chore(authz): use atom key for hocon config 2021-07-01 18:29:32 +08:00
Shawn 8dcb5ceb86 fix(config): get config problems in sysmon 2021-07-01 18:01:38 +08:00
Shawn aad393f8d7 feat(config): apply new config struct to emqx_sys_mon 2021-07-01 16:27:59 +08:00
Shawn db38137d5c feat(config): apply new config struct to emqx_alarm 2021-07-01 15:00:59 +08:00
Shawn 66aaed1f87 feat(config): update emqx_schema for logger 2021-07-01 11:47:33 +08:00
turtleDeng d4f726419f
feat(bridge-mqtt): Update the configuration file to hocon (#5142) 2021-07-01 10:51:59 +08:00
lafirest 860aea50db chore(emqx_retainer): change config of emqx_retainer to use hocon 2021-06-30 21:42:34 +08:00
Shawn d2c50baf93 fix(config): set console_handler.enable to turewhen start from console 2021-06-30 19:24:37 +08:00
zhanghongtong e0f1087490 chore(mgmt): cancel plugins test case 2021-06-30 19:17:38 +08:00
zhouzb b63bba59d5 feat(authn): update schema for mysql and postgresql 2021-06-30 18:57:50 +08:00
tigercl cdcb63374a
refactor(authn): support hocon for authn (#5068)
* refactor(use hocon): rename to authn, , support hocon, support two types of chains and support bind listener to chain
2021-06-30 17:04:28 +08:00
Shawn 02c9a3163b refactor(config): emqx.conf for 5.0 2021-06-30 09:39:03 +08:00
k32 dae4c771d0
Merge pull request #5126 from k32/dev/delayed-mod-shard
chore(mod_delayed): Add RLOG shard
2021-06-29 13:05:41 +02:00
zhanghongtong 2b082f9cf9 chore(connector): update connector ssl schema 2021-06-29 18:22:44 +08:00
zhanghongtong c9acf423ba chore: rename authorze_cache function name to check_authorization_cache 2021-06-29 10:09:15 +08:00
zhanghongtong e1b0f44a8a chore: rename check_authz to authorize 2021-06-29 10:09:15 +08:00
zhanghongtong c63bdc355a chore: rename check_acl to check_authz
update emqx_coap vsn

rename OnClientCheckAcl to OnClientCheckAuthz in exhook
2021-06-29 10:09:15 +08:00
k32 e8e956b074 chore(mod_delayed): Add RLOG shard 2021-06-28 21:35:10 +02:00
k32 2bea95ff6e
Merge pull request #5124 from k32/dev/rule-engine-shard
chore(rule_engine): Add an RLOG shard
2021-06-28 21:27:18 +02:00
k32 73ec8c47cc chore(rule_engine): Add an RLOG shard 2021-06-28 20:29:08 +02:00
k32 9ab5c88d20 chore(retainer): Add RLOG shard 2021-06-28 20:22:06 +02:00
k32 1618a90ddd chore(telemetry): Add an RLOG shard 2021-06-28 18:14:36 +02:00
k32 26b2216e25 chore(shared_sub): Add shared_sub shard 2021-06-28 17:52:57 +02:00
k32 ce4800e6ae chore(alarm): Alarm shard 2021-06-28 17:52:57 +02:00
k32 7c9861dbaa chore(banned): Add banned shard 2021-06-28 14:05:35 +02:00
k32 98739224f6 chore(emqx_sn): Add SN shard 2021-06-28 14:05:30 +02:00
k32 ca1b789ef6
Merge pull request #5100 from k32/dev/authn-shard
Create authN shard
2021-06-28 12:57:36 +02:00
zhanghongtong 64ce0d0e4f chore(acl): delete acl nomatch config item 2021-06-28 17:47:44 +08:00
Turtle faad90c9d4 chore(plugins): rm emqx-web-hook and mv webhook action to emqx_rule_actions 2021-06-28 17:07:46 +08:00
William Yang 5571c54607
Merge pull request #5002 from qzhuyan/dev/william/quic-support-centos7
Quic support part 1
2021-06-28 10:49:44 +02:00
k32 dc1deff3f3 refactor(rlog): Fix initialization of emqx_cm_registry table 2021-06-28 10:35:36 +02:00
Turtle 33036a1a91 chore(plugins): rm emqx-pks-file plugin 2021-06-28 15:57:19 +08:00
Turtle 434beef3ad feat(rule-engine): Update the configuration file to hocon 2021-06-28 14:51:15 +08:00
Turtle 54aeacee14 feat(rule-engine): update the configuration file to hocon 2021-06-28 14:51:15 +08:00
zhanghongtong dd424c7656 build: delete sasl plugin 2021-06-28 11:52:47 +08:00
zhanghongtong d6e531bd8f Merge branch 'master' of https://github.com/emqx/emqx into merge-4.3-to-5.0 2021-06-28 11:46:55 +08:00
zhanghongtong 4e4c1dd17a build: delete needless auth plugins 2021-06-28 11:45:01 +08:00
Turtle d0d14f7a02 chore(plugins): rm emqx-lua-hook plugin 2021-06-28 11:44:01 +08:00
Rory Z 1f7291380b chore: delete internal acl code 2021-06-28 11:44:01 +08:00
Rory Z 1582c07cbe chore: delete import and export feature 2021-06-28 11:44:01 +08:00
Rory Z e949cdca98 chore: delete import and export feature 2021-06-28 11:44:01 +08:00
zhanghongtong 9da51d4b1c build: delete needless auth plugins 2021-06-28 11:44:01 +08:00
zhanghongtong cbc782f5bf build: delete needless auth plugins 2021-06-28 11:43:58 +08:00
Turtle 78cbc2a19d chore: move emqx_recon to emqx_modules plugin 2021-06-28 11:43:48 +08:00
turtleDeng 89529ec4fa chore: reset plugin conf generate (#5094)
* chore: reset plugin conf generate

* fix(plugin): check dialyzer fail

* chore: rm emqx_management_schema.erl file

* fix(plugin): check dialyzer fail

* fix(plugin): fix check ct fail

* fix(plugin): check dialyzer fail
2021-06-28 11:43:48 +08:00
Turtle c9ac851d27 feat(prometheus): Update the configuration file to hocon 2021-06-28 11:43:48 +08:00
Shawn cc1f57ff01 Add some APIs for emqx_config (#5095) 2021-06-28 11:43:48 +08:00
Shawn d77352168f Reference to foreign schema definitions in emqx_schema (#5090) 2021-06-28 11:43:48 +08:00
Rory Z 6f0f670550 feat(redis connector): redis connector support cluster (#5074) 2021-06-28 11:43:48 +08:00
Shawn 36c7785fd0 The config handler phase2 (#5052)
* refator(config_handler): handle and validate the updates to raw_configs

* fix(hocon): update hocon to 0.8.0

* refactor(config_handler): check and apply envs only in top-level handler

* refactor(config_handler): update config from top level to bottom level

* refactor(emqx_data_bridge): move configs to emqx.conf

* fix(emqx_schema): remove the extra config path

* fix(config_handler): load the emqx.conf when starting emqx_config_handler

* fix(data_bridge): API not working

* feat(config_handler): save updated configs to emqx_override.conf

* fix(config_handler): cannot find the emqx.conf and emqx_override.conf

* fix(emqx_config): cannot find the correct path for etc dir

* fix(test): load load emqx_schema foreign refereced apps

* refactor(emqx_plugin): do not generate configs before load plugins

All configs (including the configs for plugins) now should go into
the `emqx.conf`.

* fix(tests): update the test cases for plugins

* fix(tests): don't include schema from apps when testing

* fix(tests): use emqx-ct-helper branch hocon
2021-06-28 11:43:48 +08:00
DDDHuang 44412549ab fix: statsd hocon schema & add test suit (#5060) 2021-06-28 11:43:48 +08:00
k32 b88c71b481 feat(dashboard): Introduce dashboard RLOG shard 2021-06-28 11:43:48 +08:00
k32 198e3c03e0 feat(emqx_management): mqtt_app shard 2021-06-28 11:43:48 +08:00
turtleDeng b4d9af0e85 feat(telemetry): Update the configuration file to hocon (#5064) 2021-06-28 11:43:48 +08:00
Rory Z 39e4d348f6 feat: add authz (#4852)
* feat(authorization): add authorization api

* feat(authorization): add check function

* feat(authorization): use hocon config file

* feat(authz): add mysql connector

* feat(authz): support pgsql

* feat(connector): support redis

* chore(authz): use "publish/subscribe/all" instead of "pub/sub/pubsub"
2021-06-28 11:43:48 +08:00
Zaiming Shi 871f23f047 build: do not allow user override PKG_VSN
We have an assertion in code, allowing user to override
will compile but not run.
2021-06-28 11:43:48 +08:00
Zaiming Shi cd5431e71d chore(emqx_lwm2m): pin lwm2m-coap v2.0.0
v2.0.0 has emqx_http_lib added as a rebar dependency
v1.* is for emqx v4.3.*
2021-06-28 11:43:46 +08:00
DDDHuang 9bc3b4684a refactor(config): support hocon 2021-06-28 11:43:31 +08:00
DDDHuang 8356102450 chore: support statsd 2021-06-28 11:43:31 +08:00
Turtle 205e588b22 fix(plugins): fix load plugin generate hocon configs fail 2021-06-28 11:43:31 +08:00
Shawn e2d96e46a0 change resource,connectors,data_bridges as normal apps (#5034) 2021-06-28 11:43:31 +08:00
Turtle f004e36e28 feat(plugins): Support load plugins of hocon configuration format 2021-06-28 11:43:31 +08:00
Rory Z 87cc94ad28 chore(hooks): update type 2021-06-28 11:43:31 +08:00
Rory Z 0dd068135d chore(hooks): delete is_function() 2021-06-28 11:43:31 +08:00
Rory Z b21959b0c3 test: fix tests error 2021-06-28 11:43:31 +08:00
Rory Z 227c8e626b chore(appup): update appup file 2021-06-28 11:43:31 +08:00
Rory Z 46fe77687c chore(dialyzer): fix dialyzer error 2021-06-28 11:43:31 +08:00
zhanghongtong 64a63ab892 chore(hooks): emqx_hooks no longer accept anonymous functions 2021-06-28 11:43:31 +08:00
zhanghongtong f5c4863420 fix(connector): add nullable for sentinel_name in redis schema 2021-06-28 11:43:31 +08:00
Zaiming Shi 62df9f03ad fix(emqx_schema): add 'sensitive' flag for passowrd configs 2021-06-28 11:43:31 +08:00
Zaiming Shi 1fca3cd1b5 chore(rebar.config): use hocon 0.6.0
hocon 0.6.0 added supports for sensitive config flagging
sub-struct type checking, and remote struct referencing
2021-06-28 11:43:31 +08:00
DDDHuang 22b0fa0b92 chore: more node info 2021-06-28 11:43:31 +08:00
turtleDeng 271869b817 Revert "chore: mv emqx_connector to emqx_data_bridge"
This reverts commit d640e2ccfa.
2021-06-28 11:43:31 +08:00
zhanghongtong 786fd6fe3e feat(connector): mysql and pgsql query support params 2021-06-28 11:43:31 +08:00
Turtle 07ade268f9 chore: mv emqx_connector to emqx_data_bridge 2021-06-28 11:43:31 +08:00
Shawn ff54fbd1d1 fix(shared_sub): discard all unexpected msgs 2021-06-28 11:43:14 +08:00
Shawn 95e7a4dd7b chore(appup): update the appup for 4.3.5 2021-06-28 11:43:13 +08:00
Shawn 8f15a41f54 fix(shared_sub): failed to clean the emqx_shared_subscription tab
A trick that fixes the issue that we demonitored the shared subscriber
too early if it not unsubscribed all of the topics.
2021-06-28 11:42:56 +08:00
Turtle 22f1e8d7ed chore(review): review 4.3.4 2021-06-28 11:42:39 +08:00
Turtle bde9d052a5 feat(lwm2m): fix check dialyzer fail 2021-06-28 11:42:39 +08:00
Turtle 8c0c6974d9 fix: Ignore repeatedly receiving connection packet in the wait_will_msg/wait_will_topic/connected state 2021-06-28 11:42:39 +08:00
JianBo He 8da6d5cf16 fix(emqx_cm): catch noproc exception from rpc_call (#5048) 2021-06-28 11:42:39 +08:00
JianBo He ab75901061 fix(coap): fix coap uri format (#5059) 2021-06-28 11:42:25 +08:00
Zaiming Shi c7fe49c200 test(ci): add plugin list status check after relup new vsn install 2021-06-28 11:42:12 +08:00
JianBo He f3617aa082 chore: upgrade lwm2m_coap to 1.1.4 2021-06-28 11:41:53 +08:00
Turtle c7ebc12ce1 feat(lwm2m): add emqx_lwm2m http API 2021-06-28 11:41:53 +08:00
Shawn 8e08e83090 fix(appup): relup for emqx_rule_registry failed 2021-06-28 11:41:53 +08:00
Shawn c1b2163362 feat(rules): remove stats update from rule_engine_registry (#5029) 2021-06-28 11:41:53 +08:00
Shawn a610c3d1f3 fix(rule): delete resource failed when searching dependent rules (#4996) 2021-06-28 11:40:51 +08:00
Turtle 8a3ac7c878 chore(plugins): rm emqx-sasl plugin 2021-06-28 11:40:49 +08:00
tigercl bcedd7fe9e fix(query string): support query string in path (#4981) 2021-06-28 11:40:44 +08:00
JianBo He 56ac459b7f fix(modules): fix start/stop exhook module failure 2021-06-28 11:40:44 +08:00
JianBo He 2bc586b930 fix(ws): avoid funcation_clause for un-inited websocket 2021-06-28 11:40:43 +08:00
k32 c1d2bae833 fix(auth_ldap): Handle missing attributes
Fixes: #4953
2021-06-28 11:40:42 +08:00
Zaiming Shi 0451f89c22 chore(conf): change default number of gen_rpc connections to 1 2021-06-28 11:40:24 +08:00
JianBo He 8352fa6f31 fix(mqttsn): fix proto_name to MQTT-SN instead of MQTT (#4961) 2021-06-28 11:40:22 +08:00
JianBo He 7af4b80ef4 fix(lwm2m): base64 decode for opaque value 2021-06-28 11:39:29 +08:00
Turtle 1063f2cae5 chore(plugins): rm emqx-lua-hook plugin 2021-06-28 09:44:17 +08:00
k32 6063fc72f7 chore(authentication): Migrate to RLOG 2021-06-25 16:58:50 +02:00
Rory Z c79e478c42 chore: delete internal acl code 2021-06-25 18:45:34 +08:00
Rory Z 55613593f0 chore: delete import and export feature 2021-06-25 18:45:34 +08:00
Rory Z ecc450e942 chore: delete import and export feature 2021-06-25 18:45:34 +08:00
zhanghongtong 09e995a1b2 build: delete needless auth plugins 2021-06-25 18:45:34 +08:00
zhanghongtong c24f3688c4 build: delete needless auth plugins 2021-06-25 18:45:34 +08:00
Turtle 2d1008ceaf chore: move emqx_recon to emqx_modules plugin 2021-06-25 18:45:04 +08:00
turtleDeng c9c6b69cc9
chore: reset plugin conf generate (#5094)
* chore: reset plugin conf generate

* fix(plugin): check dialyzer fail

* chore: rm emqx_management_schema.erl file

* fix(plugin): check dialyzer fail

* fix(plugin): fix check ct fail

* fix(plugin): check dialyzer fail
2021-06-25 17:06:30 +08:00
Turtle 2582fdcfe8 feat(prometheus): Update the configuration file to hocon 2021-06-25 16:31:18 +08:00
Shawn d5eb37c537
Add some APIs for emqx_config (#5095) 2021-06-25 15:40:28 +08:00
Shawn 9977d836bc
Reference to foreign schema definitions in emqx_schema (#5090) 2021-06-25 12:46:57 +08:00
Rory Z 4157524910
feat(redis connector): redis connector support cluster (#5074) 2021-06-25 11:47:57 +08:00
Shawn 704af9f3b1
The config handler phase2 (#5052)
* refator(config_handler): handle and validate the updates to raw_configs

* fix(hocon): update hocon to 0.8.0

* refactor(config_handler): check and apply envs only in top-level handler

* refactor(config_handler): update config from top level to bottom level

* refactor(emqx_data_bridge): move configs to emqx.conf

* fix(emqx_schema): remove the extra config path

* fix(config_handler): load the emqx.conf when starting emqx_config_handler

* fix(data_bridge): API not working

* feat(config_handler): save updated configs to emqx_override.conf

* fix(config_handler): cannot find the emqx.conf and emqx_override.conf

* fix(emqx_config): cannot find the correct path for etc dir

* fix(test): load load emqx_schema foreign refereced apps

* refactor(emqx_plugin): do not generate configs before load plugins

All configs (including the configs for plugins) now should go into
the `emqx.conf`.

* fix(tests): update the test cases for plugins

* fix(tests): don't include schema from apps when testing

* fix(tests): use emqx-ct-helper branch hocon
2021-06-25 11:47:18 +08:00
DDDHuang a42605b27b
fix: statsd hocon schema & add test suit (#5060) 2021-06-25 09:18:52 +08:00
k32 6cb81240d0
Merge pull request #5054 from k32/dev/dashboard-shard
feat(dashboard): Introduce dashboard RLOG shard
2021-06-23 19:55:02 +02:00
k32 a14ab5f90a
Merge pull request #5053 from k32/dev/mgmt-shard
feat(emqx_management): mqtt_app shard
2021-06-23 19:42:47 +02:00
turtleDeng 5a560a153c
feat(telemetry): Update the configuration file to hocon (#5064) 2021-06-23 17:12:24 +08:00
Rory Z 263aaff6d6
feat: add authz (#4852)
* feat(authorization): add authorization api

* feat(authorization): add check function

* feat(authorization): use hocon config file

* feat(authz): add mysql connector

* feat(authz): support pgsql

* feat(connector): support redis

* chore(authz): use "publish/subscribe/all" instead of "pub/sub/pubsub"
2021-06-23 10:55:38 +08:00
Zaiming Shi d7ed66f234 build: do not allow user override PKG_VSN
We have an assertion in code, allowing user to override
will compile but not run.
2021-06-22 18:56:31 +08:00
k32 2d8ebc17cd feat(dashboard): Introduce dashboard RLOG shard 2021-06-21 18:03:51 +02:00
k32 239255f251 feat(emqx_management): mqtt_app shard 2021-06-21 18:02:11 +02:00
Zaiming Shi 291cea0727 chore(emqx_lwm2m): pin lwm2m-coap v2.0.0
v2.0.0 has emqx_http_lib added as a rebar dependency
v1.* is for emqx v4.3.*
2021-06-21 11:54:58 +02:00
DDDHuang 4011aee361 refactor(config): support hocon 2021-06-21 12:20:20 +08:00
DDDHuang b62301c5f4 chore: support statsd 2021-06-21 12:20:20 +08:00
Turtle bc71a1e2c6 fix(plugins): fix load plugin generate hocon configs fail 2021-06-19 16:47:09 +08:00
Shawn 8978464269
change resource,connectors,data_bridges as normal apps (#5034) 2021-06-19 16:27:21 +08:00
Turtle ffcbcaed3c feat(plugins): Support load plugins of hocon configuration format 2021-06-19 13:42:21 +08:00
Rory Z 186094d2ab chore(hooks): update type 2021-06-18 18:59:52 +08:00
Rory Z 1fa55f5a4e chore(hooks): delete is_function() 2021-06-18 18:59:52 +08:00
Rory Z 1a09d636ae test: fix tests error 2021-06-18 18:59:52 +08:00
Rory Z e5447cd6e4 chore(appup): update appup file 2021-06-18 18:59:52 +08:00
Rory Z 536c7256da chore(dialyzer): fix dialyzer error 2021-06-18 18:59:52 +08:00
zhanghongtong bbf6b4e64e chore(hooks): emqx_hooks no longer accept anonymous functions 2021-06-18 18:59:52 +08:00
zhanghongtong abca2938f4 fix(connector): add nullable for sentinel_name in redis schema 2021-06-18 16:11:51 +08:00
Zaiming Shi 36cd03cc98 fix(emqx_schema): add 'sensitive' flag for passowrd configs 2021-06-18 09:02:25 +08:00
Zaiming Shi 6865f36d90 chore(rebar.config): use hocon 0.6.0
hocon 0.6.0 added supports for sensitive config flagging
sub-struct type checking, and remote struct referencing
2021-06-18 09:02:25 +08:00
k32 5b84513e77
Merge pull request #5014 from k32/dev/route_shard
feat(rlog): Introduce routing RLOG shard
2021-06-17 17:00:14 +02:00
DDDHuang 1e0f6f4dea chore: more node info 2021-06-17 21:09:06 +08:00
turtleDeng 54dedc8343 Revert "chore: mv emqx_connector to emqx_data_bridge"
This reverts commit d640e2ccfa.
2021-06-17 19:11:10 +08:00
zhanghongtong d9d5bc4fae feat(connector): mysql and pgsql query support params 2021-06-17 18:50:28 +08:00
Turtle d640e2ccfa chore: mv emqx_connector to emqx_data_bridge 2021-06-17 16:42:41 +08:00
William Yang d1978aaaf2 chore(quic): fix format 2021-06-17 09:03:10 +02:00
William Yang b4a9d663ae feat(quic): quic conn idle_timeout default 1min 2021-06-17 09:03:10 +02:00
William Yang 4e2e2d5635 feat(quic): update emqx_schema for quic 2021-06-17 09:03:10 +02:00
William Yang fd785240f5 feat(quic): bump quicer to 0.0.3 2021-06-17 09:03:10 +02:00
William Yang e34470f9f2 feat(quic): remove unsupported configs. 2021-06-17 09:03:10 +02:00
William Yang af2faed107 feat(quic): switch to deps on emqx quicer repo 2021-06-17 09:03:10 +02:00
k32 6505340cb8 feat(rlog): Introduce routing RLOG shard 2021-06-16 16:05:10 +02:00
Shawn 56c6cf560a fix(dialyzer): guard test can never succeed 2021-06-16 16:02:44 +08:00
Shawn 1e14a6086e fix(dialyzer): invalid type specs 2021-06-16 16:02:44 +08:00
Shawn 134970e7b7 fix(data_bridge): comment out all the connector-config 2021-06-16 16:02:44 +08:00
turtleDeng 0515ef6e45
feat(connector): add more connector (#4985) 2021-06-16 11:28:26 +08:00
Shawn 8b0a6d955b fix(test): ci failed due to existing subscriptions 2021-06-16 11:27:34 +08:00
Shawn 444c721f93 fix(config): change handler name to emqx_data_bridge_config_handler 2021-06-16 11:27:34 +08:00
Shawn b11afc6997 fix(config): start the top level config handler at emqx bootup 2021-06-16 11:27:34 +08:00
Shawn 378a2b7b9e feat(config): update config to the sub config handler 2021-06-16 11:27:34 +08:00
Shawn ccba714cd6 feat(config): add emqx_config_handler 2021-06-16 11:27:34 +08:00
zhanghongtong 4505607c51 chore(tests): update acl mysql test case 2021-06-16 09:42:07 +08:00
zhanghongtong 949e8348fc chore(connector): ensure alllication start in mysql connector 2021-06-16 09:41:52 +08:00
William Yang 68844cefd9 feat(quic): update emqx_schema for quic 2021-06-15 15:36:04 +02:00
William Yang bb6459ba3a build: add quic dep in app/emqx/rebar.config 2021-06-15 15:36:04 +02:00
William Yang 14614fbe33 feat(quic): adapt to new quicer API. 2021-06-15 15:36:04 +02:00
William Yang 5356668eac feat(quic): adapt to hocon schema 2021-06-15 15:36:04 +02:00
William Yang 1ffd2cf245 chore(config): adapt to new config format 2021-06-15 15:36:04 +02:00
William Yang f9a113477e feat(quic): use quicer:getstat instead. 2021-06-15 15:36:04 +02:00
William Yang e062be2b0e feat(quic): reload quicer lib before start listener 2021-06-15 15:36:04 +02:00
William Yang 14057c033d feat(quic): support stop/start quic listeners. 2021-06-15 15:36:03 +02:00
William Yang 06f9674ce3 feat(quic): add quicer to application deps list. 2021-06-15 15:36:03 +02:00
William Yang 9570d01792 fix(quic): error handling for getstats.
- return {error, closed} instead
- quicer demo/3 branch.
2021-06-15 15:36:03 +02:00
William Yang 570e096b56 fix(quic): return empty list for dead 'Socket' 2021-06-15 15:36:03 +02:00
William Yang 087aa1dd53 feat(quic): handle stream close. 2021-06-15 15:36:03 +02:00
William Yang 70f22d2c1b feat(quic): reuse emqx_connection module for quic. 2021-06-15 15:36:03 +02:00
William Yang 899ba579fc feat(quic): compile and start quicer listener. 2021-06-15 15:36:03 +02:00
Zaiming Shi c84af95190 chore: ensure new env override prefix variable 2021-06-15 12:35:08 +02:00
Zaiming Shi 9a78f812e1 fix(emqx_resource): fix schema schema definition 2021-06-15 12:35:08 +02:00
Zaiming Shi bde5d11078 fix(hocon): call new schema definition functions 2021-06-15 12:35:07 +02:00
Zaiming Shi 909814a34d fix(hocon): pin hocon 0.5.1 2021-06-15 12:35:07 +02:00
zhanghongtong 8a368efb95 chore: move lib-ce to apps
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-06-15 17:31:54 +08:00
k32 06dd83c171
Merge pull request #4991 from k32/dev/rlog0
feat(rlog): Add RLOG to EMQX
2021-06-15 10:46:45 +02:00
zhanghongtong c94d4d9a28 chore(data bridge): comment example config
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-06-15 16:45:41 +08:00
k32 13803f9159 feat(rlog): Add RLOG to EMQX 2021-06-14 15:05:36 +02:00
zhanghongtong 496d30be6a chore(appup): add appup for plugin libs 2021-06-11 11:33:57 +08:00
tigercl 55cf74f23a
Merge pull request #4844 from tigercl/feat/new-authentication
feat(new authentication): implement new auth design
2021-06-11 10:59:45 +08:00
zhouzb cbc5c64a16 chore(dialyzer): make code pass dialyzer 2021-06-10 16:18:50 +08:00
zhouzb bb62b44554 feat(auth): support bcrypt 2021-06-09 18:57:08 +08:00
zhouzb ae8be5d66f feat(authentication): add a 16-byte salt in front of the password before hashing 2021-06-09 16:53:40 +08:00
zhouzb d838206a56 chore(code): add type spec 2021-06-09 11:10:03 +08:00
zhouzb 2bfb7f74df fix(jwt): fix chain interruption 2021-06-09 10:36:06 +08:00
Shawn 1de2f5cb2f fix(emqx_data_bridge): update bridge failed 2021-06-08 21:46:52 +08:00
Shawn fdd0233103 feat(emqx_resource): update the demo.md 2021-06-08 21:46:52 +08:00
Shawn 65dc2f2be8 feat(emqx_resource): remove the schema sugar from parse transformed code 2021-06-08 21:46:52 +08:00
zhouzb 0c237bf797 feat(jwt): support based encoded secret 2021-06-08 15:56:13 +08:00
zhouzb f297c36929 feat(jwt auth): support JWT auth 2021-06-08 11:40:46 +08:00
Shawn 2f720f4a17 feat(emqx_data_bridge): add license headers 2021-06-07 22:15:23 +08:00
Shawn bdf6374414 fix(emqx_resource): disable the debug print for parse-transformed code 2021-06-07 22:11:05 +08:00
Shawn 149a54cef4 fix(emqx_resource): dialyzer issues 2021-06-07 22:08:21 +08:00
Shawn 3c1c457697 fix(emqx_resource): call to undefined function hocon:richmap_to_map/1 2021-06-07 21:54:17 +08:00
Shawn 16c0a5b80a fix(emqx_resource): merge conflict 2021-06-07 21:25:19 +08:00
Shawn a37b3957e3
Merge branch 'master' into emqx_connector 2021-06-07 21:12:00 +08:00
Shawn dddab31326 fix(emqx_data_bridge): resource type to bridge type 2021-06-07 20:01:28 +08:00
Shawn e9fe345ac8 fix(emqx_data_bridge): correct the format of HTTP responses 2021-06-07 19:52:08 +08:00
Shawn 4914b003ac feat(emqx_resource): update the unused APIs 2021-06-07 17:20:34 +08:00
Shawn 2ff92d2880 feat(emqx_data_bridge): add HTTP APIs for data bridge 2021-06-07 16:12:06 +08:00
Zaiming Shi 4ee6c82714 test(emqx_rule_engine_SUITE): delegate app start to ct-helper (2.0.0) 2021-06-07 09:09:28 +02:00
Zaiming Shi b92a6837d7 build(emqx): fix emqx standalone dialyzer 2021-06-07 09:09:28 +02:00
Zaiming Shi 7da34b80e5 chore(emqx): bump app version to 5.0.0 2021-06-07 09:09:28 +02:00
Zaiming Shi 13b7dcef4b chore(emqx): emqtt as test dependency 2021-06-07 09:09:28 +02:00
Zaiming Shi 045a944192 chore(ci): check emqx app standalone 2021-06-07 09:09:28 +02:00
Zaiming Shi 36e3675d54 test(emqx_listeners_SUITE): fix etc dir path 2021-06-07 09:09:28 +02:00
Zaiming Shi 311cb7b659 build: relocate BUILT_ON template 2021-06-07 09:09:28 +02:00
Zaiming Shi 1715b87dce chore: move root level src, test, include, priv and etc to apps/emqx 2021-06-07 09:09:28 +02:00
Zaiming (Stone) Shi 729e9697cd
Merge pull request #4943 from emqx/master
Auto-pull-request-on-2021-06-05
2021-06-07 09:05:42 +02:00
Zaiming Shi 536c2ddc0e test(emqx_sn): an attempt to fix flaky tests
Some flaky tests such as t_asleep_test06_to_awake_qos2_dl_msg
and t_asleep_test07_to_connected are likely due to test cases
interfering each other.
This changes the cases to use a unique client ID
2021-06-06 09:03:52 +02:00
Zaiming Shi b6b144fa31 test: expect unsupported_version for now 2021-06-05 15:04:11 +02:00
Zaiming Shi 5ccaff5a86 fix: app versions emqx_auth_jwt and emqx_sn 2021-06-05 13:21:59 +02:00
Zaiming (Stone) Shi 5dab6985c1
Merge branch 'dev/v5.0' into resolve-master-dev/v5.0-conflict-release-version 2021-06-05 11:51:02 +02:00
Zaiming Shi 5795bcca6a chore: fix app versions and check script 2021-06-05 11:09:13 +02:00
Shawn 4f451ee862 feat(emqx_resource): delete API generation from parse transfrom 2021-06-05 15:30:21 +08:00
Shawn f1552f4f4f feat(emqx_data_bridge): create emqx_data_bridge 2021-06-04 23:47:16 +08:00
Turtle f682bfe6e0 fix(api): fix ee call module api 404 2021-06-04 19:47:52 +08:00
Turtle 6f2407d5d9 fix(mqtt-sn): fix mqtt-sn test cases 2021-06-04 10:39:14 +08:00
JianBo He 72602df511
fix(svr): avoid crashed on undefined remote jwks server (#4916) 2021-06-03 14:16:58 +08:00
Shawn 9617b65d52 fix(dialyzer): incorrect function spec 2021-06-03 13:35:57 +08:00
Shawn 03519d7e61 fix(emqx_resource): HTTP APIs for emqx_resource not working 2021-06-03 13:35:57 +08:00
Turtle bfb02fe8c3 fix(mqtt-sn): fix clean session false reconnect topic-id badmatch 2021-06-03 10:08:05 +08:00
Shawn 3da62e59d6 fix(emqx_connector): the HTTP API for emqx_connector_mysql 2021-06-03 01:24:30 +08:00
Shawn bea5966ac8 fix(emqx_connector): remove unrelated files and add license headers 2021-06-02 19:10:24 +08:00
Shawn ebe1228b2c fix(emqx_connector): don't return error when stopping a non-existing pool 2021-06-02 18:41:48 +08:00
Shawn 49c5edce2e fix(emqx_connector): start emqx_connector_mysql failed 2021-06-02 17:28:47 +08:00
zhouzb 661f2de01e feat(authentication): require header in csv file and use new json format 2021-06-02 14:04:38 +08:00
zhouzb 443b83624c fix(webhook): fix bad ssl options 2021-06-02 09:31:28 +08:00
Shawn 5d52ce044d feat(emqx_resource): read and save configs from and to file 2021-06-02 01:58:32 +08:00
z8674558 9cb2facfe1 chore(emqx_resource): unify dependency hocon to root rebar.config 2021-06-01 21:05:04 +09:00
JianBo He 665a9d1dee fix(mgmt): return type conversion error 2021-06-01 17:24:53 +08:00
Turtle 5068678eea fix(mqtt-sn): fix clean session false reconnect topic-id badmatch 2021-06-01 16:22:37 +08:00
zhouzb 72c4696584 chore(newline): insert final newline 2021-06-01 16:11:28 +08:00
z8674558 a9efdaeacd fix(emqx_rule_engine_SUITE): use emqx_ct_helpers:read_schema_configs 2021-06-01 17:06:09 +09:00
Shawn e7ffa07a1a feat(emqx_connector): load connectors from emqx_connector.conf 2021-05-31 22:49:42 +08:00
k32 7dde77bb8a feat(emqx_management): Import content of the HTTP request
Fixes: #4063
2021-05-31 12:06:33 +02:00
Shawn f4bb589079 feat(emqx_mysql_connector): implement the on_query callback 2021-05-31 15:41:22 +08:00
Zaiming (Stone) Shi 913420588d
Merge branch 'dev/v5.0' into resolve-conflict-to-5.0 2021-05-31 09:17:21 +02:00
Shawn 6b33172095 feat(emqx_connector): add first emqx_connector for mysql 2021-05-31 15:14:07 +08:00
JianBo He 3a89b1f00b
chore(action): fix syntax error (#4885) 2021-05-31 15:08:52 +08:00
Rory Z 7040fb7835
Merge pull request #4893 from terry-xiaoyu/emqx_resource
feat(emqx_resource): add behaviour emqx_resource
2021-05-31 14:17:01 +08:00
Shawn 696d4a4e58 fix(emqx_resource): some dialyzer complaints 2021-05-31 12:14:25 +08:00
Shawn d7755df48b feat(emqx_resource): make with emqx 2021-05-31 10:51:27 +08:00
Turtle cf4cbc1677 fix(API): fix get used memory error 2021-05-29 11:42:50 +08:00
zhouzb 9d4af87eb7 feat(authentication): implement http api and change external apis 2021-05-29 09:58:27 +08:00
Shawn bc83bed7e8 feat(emqx_resource): add licence headers to source code files 2021-05-28 22:02:33 +08:00
Shawn 2a31c43e0d feat(emqx_resource): add behaviour emqx_resource 2021-05-28 21:43:54 +08:00
JianBo He 78cdfdf0df fix(exhook): change default value to CONTINUE 2021-05-28 19:28:03 +08:00
Turtle c02a9f0101 fix(appup): update appup 2021-05-27 13:55:07 +08:00
zhouzb 54106790c7 feat(authentication): add new apis 2021-05-27 10:19:38 +08:00
zhouzb c323113068 fix(authentication): fix unhook 2021-05-25 15:02:31 +08:00
zhouzb 3a96aa3db2 test(authentication): add test case and fix some errors 2021-05-25 15:00:34 +08:00
z8674558 31cbb7aa97 Merge branch 'master' of github.com:emqx/emqx into merge-master 2021-05-25 12:50:50 +09:00
Zaiming Shi 4ec1046160 fix: bad test case 2021-05-24 10:45:56 +02:00
Zaiming Shi 8443aa5e21 chore(typo): sepecial -> special 2021-05-24 10:45:56 +02:00
zhouzb c2f14c745b chore(app vsn): update app vsn 2021-05-24 11:38:32 +08:00
k32 1e562d4bc6 chore(rule_engine): Don't import alias/1 BIF
Fixes: #4847
2021-05-22 01:40:07 +02:00
Turtle e8790f6e11 fix(mqtt-sn): Fix stop due to keepAlive at sleep mode 2021-05-21 19:22:32 +08:00
zhouzb 4ad032f25e feat(new authentication): implement new auth design
- Implement auth chain
- Implement Mnesia auth service
- Support importing user credentials from JSON or CSV file to Mnesia
2021-05-21 18:10:33 +08:00
Zaiming Shi ce2739ef3d chore(emqx_management): update appup 2021-05-21 10:38:39 +02:00
Zaiming Shi 5fe395cee5 test: fix emqx_ctl printout test 2021-05-21 10:25:04 +02:00
Zaiming Shi 48c1d0983d chore(emqx_ctl): do not print application 2021-05-21 09:24:39 +02:00
Zaiming Shi c07fe0696b fix(appup): ensure version bump for emqx_management 2021-05-20 09:03:40 +02:00
JianBo He cace9341a0 test(auth-jwt): fix verify_claims not being covered 2021-05-19 10:56:35 +08:00
Shawn 4cd056cab5
fix(rule_engine): update status to false when refresh resource failed (#4821)
* fix(rule_engine): update status to false when refresh resource failed

* fix(dialyzer): ignore import_modules/1 created fun has no local return

* fix(appup): update appup for rule engine
2021-05-17 17:59:01 +08:00
Turtle a7d2f44a5b chore(optimize): optimize MGMT test cases 2021-05-17 14:28:17 +08:00
Szymon Skirgajłło f21ef50938 chore: add missing parameter in available variables 2021-05-17 13:15:04 +08:00
zhouzb 3984f8cd2f chore(log): update log content 2021-05-14 19:27:04 +08:00
zhouzb c6771a57b6 chore(update dep): update dep of ehttpc 2021-05-14 19:27:04 +08:00
Turtle 35c38e7d21 fix(lwm2m): fix check emqx-lwm2m version 2021-05-14 05:41:00 +09:00
Turtle 3e3819905d fix(import): fix import bridge mqtt test cases 2021-05-14 05:41:00 +09:00
JianBo He 7dd107a7cd chore(prom): update grafana templates 2021-05-14 05:41:00 +09:00
JianBo He 13257be6b6 chore(appup): supply the appup instructions 2021-05-14 05:41:00 +09:00
JianBo He 02d9740d14 feat(lwm2m): observe specified object lists 2021-05-14 05:41:00 +09:00
JianBo He 793c813d02 feat(delayed): record the delayed table size by emqx_stats
There are three indictors about delayed module:
- 'messages.delayed': shows the number of delayed msg received
- 'emqx_delayed_count': shows the delayed table size now
- 'emqx_delayed_max': shows the maximum size that the delayed table has reached
2021-05-14 05:41:00 +09:00
JianBo He d317d57f3f fix(metric): incr the messages.retained counter 2021-05-14 05:41:00 +09:00
wwhai 72e9453293 fix(mgmt): fix diylazer warning for function return (#4786) 2021-05-14 05:41:00 +09:00
Zaiming Shi 4577f6653c fix(emqx_rule_engine): add appup 2021-05-14 05:41:00 +09:00
Turtle a58357cfe3 feat(rule_engine): rule sql add null function 2021-05-14 05:41:00 +09:00
Turtle cc6f43aea7 fix(import): fix import bridge mqtt test cases 2021-05-14 05:41:00 +09:00
Turtle 6ba1a525e0 fix(lwm2m): fix check emqx-lwm2m version 2021-05-13 11:20:23 +08:00
Turtle 85937e0007 fix(import): fix import bridge mqtt test cases 2021-05-12 22:46:48 +08:00
JianBo He e0068f6ebe chore(prom): update grafana templates 2021-05-12 22:24:37 +08:00
JianBo He fcf046eec1 chore(appup): supply the appup instructions 2021-05-12 22:23:21 +08:00
JianBo He 36c7258337 feat(lwm2m): observe specified object lists 2021-05-12 22:23:21 +08:00
JianBo He 82330ffa00 feat(delayed): record the delayed table size by emqx_stats
There are three indictors about delayed module:
- 'messages.delayed': shows the number of delayed msg received
- 'emqx_delayed_count': shows the delayed table size now
- 'emqx_delayed_max': shows the maximum size that the delayed table has reached
2021-05-12 22:16:14 +08:00
JianBo He e7252eee81 fix(metric): incr the messages.retained counter 2021-05-12 22:16:14 +08:00
wwhai 09fb1461b7
fix(mgmt): fix diylazer warning for function return (#4786) 2021-05-12 22:13:26 +08:00
Zaiming Shi ded494f544 fix(emqx_rule_engine): add appup 2021-05-11 14:25:46 +02:00
Turtle 80ef076cee feat(rule_engine): rule sql add null function 2021-05-08 17:15:07 +08:00
Turtle c5aeeb3b40 fix(import): fix import bridge mqtt test cases 2021-05-08 15:28:26 +08:00
Zaiming (Stone) Shi 0d9a9fc966
Merge branch 'dev/v5.0' into resolve-conflict-master-to-v5.0 2021-05-07 08:43:26 +02:00
Zaiming Shi f68a89c9ba fix(auth-http): support content-type header env variable override 2021-05-07 10:14:19 +08:00
k32 7cd31028cb fix(dialyzer): Omit `value is unmatched` warning 2021-05-06 23:28:12 +08:00
Turtle 9dc1e162fa fix(sn): fix clean_session=false willmsgs not sent 2021-05-06 19:15:49 +08:00
Zaiming Shi b8e271a588 chore: add more info in test log 2021-05-06 11:03:02 +02:00
Zaiming Shi d904a1048b Merge remote-tracking branch 'origin/master' into merge-master-to-dev/v5.0 2021-04-30 15:09:31 +02:00
wwhai a9b674c587 fix(deps): fix ee430 problem when remove resources 2021-04-30 06:41:37 -05:00
Zaiming Shi 171933301a fix(dashboard): display full Erlang/OTP version 2021-04-30 12:26:59 +02:00
JianBo He 01696ce595 chore(coap): use ~0p to print peername 2021-04-30 15:32:04 +08:00
Shawn cb31d66bf2
Cache publishes before receiving the REGACK (#4695)
* refactor(emqx_sn): return new state from send_message

* fix(emqx_sn): send publish only after regack received
2021-04-30 15:31:34 +08:00
wwhai 54dc75ed79 fix(deps): fix function clause at apply_new_config 2021-04-28 20:39:16 +08:00
Zaiming Shi fbe15859f5 fix(emqx_rule_utils): http connectivity check ipv6 support 2021-04-28 10:43:36 +02:00
Zaiming Shi 078ca67268 test(emqx_auth_http): test ipv6 + hostname resolution 2021-04-28 10:43:36 +02:00
Zaiming Shi a37f47887a fix(ipv6): add ipv6_probe socket option only when supported
ipv6_probe is a socket option supported in EMQ's otp.git fork.
If the target hostname has a ipv6 DNS resolution, gen_tcp
tries to establish a connection on ipv6.
If it fails, then a fallback to default gen_tcp:connection
2021-04-28 10:43:36 +02:00
zhouzb d9c7c72612 feat(ipv6 probe): automatically probe whether it is IPv6 2021-04-28 10:43:36 +02:00
JianBo He 7ae06590de test(auth-mnesia): test the password_hash option 2021-04-27 21:10:33 +08:00
JianBo He d5abfd0caa fix(auth-mnesia): fix env name typos 2021-04-27 21:10:33 +08:00
wwhai 773b8eef2f fix(deps): increase time sleep 2021-04-27 21:04:24 +08:00
Shawn bea28d887c fix(rule_engine): refresh rules and then re-enable it 2021-04-27 15:45:25 +08:00
Shawn 6557b132a2 fix(rule_engine): only refresh enabled rules at bootup 2021-04-27 11:17:12 +08:00
Shawn 7198c018e2 fix(rule_engine): change the rule state when force enabled/disabled 2021-04-27 11:17:12 +08:00
Shawn 18688da0c1 fix(rule_engine): only auto re-enable the rule when it was force disabled 2021-04-27 11:17:12 +08:00
Shawn da81ab7988 fix(rule_engine): remove sleep before refresh rules 2021-04-27 11:17:12 +08:00
Shawn e3501acc02 fix(rule_engine): delete resource crashes when dependent rule exists 2021-04-27 11:17:12 +08:00
Shawn 3646e76a7a fix(rule_engine): re-enable rules after resource started 2021-04-27 11:17:12 +08:00
Shawn 9fd43ef882 fix(rule_engine): reformat some code for dependent rules discovery 2021-04-27 11:17:12 +08:00
Ertan Deniz 07d5c0f9df feat(exhook): add ssl cert info to ClientInfo 2021-04-27 09:20:38 +08:00
JianBo He 910449e67b fix(exhook): allow certificate options absent 2021-04-26 20:27:17 +08:00
Zaiming Shi b97b36d077 test(emqx_coap): publish to non-wildcard topic 2021-04-26 14:18:40 +02:00
DDDHuang 29592fe1b4
Fix rule engine build fail (#4673)
* fix: add rule engine resources time
2021-04-26 15:32:54 +08:00
Shawn dc95c1476a fix(emqx_sn): willmsgs not sent 2021-04-25 09:45:16 +08:00
Zaiming Shi d61b100cc9 chore: more copyright updates 2021-04-23 20:43:00 +02:00
Zaiming Shi 6354e75626 chore: update copyrights 2021-04-23 20:43:00 +02:00
DDDHuang 4178e1a023 fix: disable rule if build fail 2021-04-22 14:46:28 +08:00
Shawn 19a9bab3a4 feat(rule_engine): add rule sql functions for datetime rfc3339 2021-04-22 10:32:44 +08:00
wwhai 73e563c883 test(mgmt): remove macro switch 2021-04-21 09:35:04 +08:00
Zaiming Shi 2ffa71abde test(emqx_bridge_mqtt): fix race condition 2021-04-20 23:17:39 +02:00
Zaiming Shi 186dfd04a7 test(webhook): ignore messages from other clients 2021-04-20 18:29:50 +02:00
Zaiming Shi e59eacb891 test(webhook): test ipv6 for real 2021-04-20 08:13:23 +02:00
zhanghongtong daa3d70ec3 chore(tests): delete enterprise json file 2021-04-19 19:07:49 +08:00
Zaiming Shi 97f2e5d544 test(auth_http): test unset acl_req app env 2021-04-19 08:39:26 +02:00
Zaiming Shi 8eed34c939 chore(auth_http): fix typo 2021-04-19 08:39:26 +02:00
Zaiming Shi e02eb5f939 docs(auth_http): Update config doc 2021-04-19 08:39:26 +02:00
zhanghongtong 8ef4df4592 chore(web hook): fix tests error 2021-04-16 23:27:20 +08:00
zhouzb 3ae8bae9f3 feat(uri): update urldecode/1 2021-04-16 20:19:45 +08:00
Turtle 5009ec0c34 fix(tests): fix ee import auth mnesia fail 2021-04-16 19:47:49 +08:00
Shawn 5896e90235 fix(export): Mod:call/3 not exported 2021-04-16 18:44:28 +08:00
Karol Kaczmarek 7b5422dbae feat: cluster info available in metrics 2021-04-16 11:28:35 +02:00
tigercl 1a630a308a
fix(backup): support minimum version number when import (#4582) 2021-04-16 15:51:36 +08:00
Shawn a09434acd2 fix(emqx_sn): dialyzer problems 2021-04-16 14:04:34 +08:00
Shawn 98edbc39af fix(emqx_sn): race_condition when discarding 2021-04-16 12:38:13 +08:00
zhanghongtong 53992ba138 chore(tests): fix tests error for web hook 2021-04-15 23:07:00 +08:00
zhanghongtong 0090295a17 chore(tests): fix import and export test cases for auth mnesia 2021-04-15 23:05:12 +08:00
wwhai b48c437f97 test(mgmt): add data im/export tests for EE 2021-04-15 21:59:37 +08:00
JianBo He 50f6ff4151 test(proper): avoid to generate any term 2021-04-15 21:49:25 +08:00
JianBo He 36663b9cb1 test(exhook): add tests for exhook cli 2021-04-15 21:48:32 +08:00
JianBo He 6710a508df fix(exhook): correct the exhook server anme 2021-04-15 21:48:32 +08:00
JianBo He 373532f9e4 fix(exhook): fix the match pattern 2021-04-15 21:48:32 +08:00
zhouzb 9bedd1bb4f chore(ehttpc): update tag of ehttpc 2021-04-15 21:47:20 +08:00
Shawn 45626bf96d fix(emqx_coap): return unauthorized when username/password error 2021-04-15 21:47:00 +08:00
JianBo He 9f088bcb7f test(proper): test message hooks 2021-04-15 11:07:55 +08:00
JianBo He b7a8884d4a chore(exhook): add a comment to bool type 2021-04-15 11:07:55 +08:00
zhanghongtong eda783efd0 chore: delete needless ct print 2021-04-14 23:06:34 +08:00
JianBo He c413af5c35 test(proper): track to the lastest code
- use limited atom type
- keep webhook confs testing to lastest schema
2021-04-14 19:38:56 +08:00
JianBo He 1d241bc39c fix(webhook): convert atom to binary to avoid jiffy encoding failure 2021-04-14 19:38:56 +08:00
k32 9ead5c8cfd chore(test): fix shutting down of applications in web hooks suite 2021-04-14 19:18:35 +08:00
k32 8304a96e1d fix(emqx_management): Don't fix broken emqx_auth_mnesia data 2021-04-14 19:18:35 +08:00
Zaiming (Stone) Shi 24fdd7aef5
Merge pull request #4526 from zmstone/fix-mqtt-bridge-retry
fix(emqx_bridge_mqtt): fix retry_inflight
2021-04-13 12:04:14 +02:00
zhanghongtong be36e51f6e feat(redis): redis sentinel support ssl connect 2021-04-13 14:42:08 +08:00
JianBo He 658ed81cfa fix(exhook): fix bad variable name 2021-04-13 10:28:07 +08:00
JianBo He da80343108 fix(exhook): fix module name to emqx_exhook_handler 2021-04-13 10:28:07 +08:00
wwhai 8a6f26d170 test(mgmt): remove unused ct log 2021-04-13 09:54:49 +08:00
z8674558 b0c3c713b5 Merge branch 'master' of github.com:emqx/emqx into merge-master-to-v5 2021-04-13 00:09:17 +09:00
JianBo He 16c999ed9b
Start emqx-modules application by default (#4518)
* fix(modules): start emqx_modules by default

* chore(test): eliminate some compile warnings
2021-04-12 09:45:31 +08:00
Shawn b5edba7729 fix(rule_engine): load hooks to all the nodes in cluster 2021-04-12 09:41:28 +08:00
Shawn f8fbd3e3db fix(lwm2m): decode/encode data as signed integer 2021-04-12 09:34:49 +08:00
wwhai 765d84ef48
test(mgmt): add data import tests (#4481) 2021-04-12 09:06:22 +08:00
zhouzb a712606121 fix(http api): fix badarg caused by acl cache api 2021-04-12 09:05:49 +08:00
Zaiming Shi d8e410e770 fix(emqx_rule_engine): missing calls
some calls are for enterprise only
2021-04-11 22:55:39 +02:00
Zaiming Shi d66f67d411 fix(emqx_bridge_mqtt): fix retry_inflight
The Inflight list should not be used to update State.inflight
2021-04-10 14:16:08 +02:00
Shawn 327b0c0995 fix(mqtt_sn): send pingresp until all pubacks received 2021-04-10 09:36:56 +08:00
Zaiming Shi e4242814f6 fix(emqx_bridge_worker_SUITE): ensure snabbkaffe start stop 2021-04-09 10:18:25 +02:00
Zaiming Shi ae9278a409 fix(bridge_mqtt): push to max-inflight limit
the old pop_and_send implementation may leave inflight queue starving
2021-04-09 10:18:25 +02:00
Zaiming Shi ae688e2c90 fix(bridge_mqtt): fix inflight reference booking
Prior to this change, the inflight batches are referenced
by the last packet ID for non-QoS-0 messages, other packet
IDs sent back from downstream causes an error log:
"Can't be found from the inflight"

Even worse, the batch is appended back to the queue for retry.
2021-04-09 10:18:25 +02:00
Shawn 2b8c1efd1d fix(mqtt_sn): refactor the log using logger.hrl 2021-04-09 16:02:29 +08:00
Shawn 6c57da31cb fix(mqtt_sn): update the testcase for disconn in awake state 2021-04-09 16:02:29 +08:00
Shawn e63b47bd7a fix(mqtt_sn): remove the shutdown/2,3 2021-04-09 16:02:29 +08:00
Shawn b8cb930c89 fix(mqtt_sn): handle disconnect msg in asleep state 2021-04-09 16:02:29 +08:00
Shawn a925395814 fix(mqtt_sn): reformat some code 2021-04-09 16:02:29 +08:00
k32 df3565e23d fix(emqx_management): Import ACLs from the enterprise version 2021-04-08 18:15:43 +08:00
k32 664b9c79fc fix(emqx_management): Add clientid data to the migration suite 2021-04-08 18:15:43 +08:00
Zaiming Shi b3b821e8c4 fix(flase): false 2021-04-08 00:34:43 +02:00
Zaiming Shi a914b191b6 chore(build): Pin poolboy 1.5.2
mongodb-erlang uses a special fork:
https://github.com/comtihon/poolboy.git
(which has overflow_ttl feature added).
However, it references `{branch, "master}`
should be `{ref, "9c06a9a"}` (2021-04-07).
By accident, We have always been using the upstream fork due to
eredis_cluster's dependency getting resolved earlier.
Here we pin 1.5.2 to avoid surprises in the future.
2021-04-08 00:02:27 +02:00
z8674558 490e6198ba fix(apps): typos on schema 2021-04-07 20:51:30 +09:00
z8674558 971e6ca90e Merge branch 'master' of github.com:emqx/emqx into merge-master-to-v5 2021-04-07 20:29:08 +09:00
zhanghongtong d1284cdcbb chore(mgmt import cases): import cases support enterprise 2021-04-07 18:40:42 +08:00
JianBo He 61c677423e test(coap): take a nap for cast operation 2021-04-07 10:48:05 +08:00
zhanghongtong ada36f5d23 chore(mgmt export): use new create time in export data 2021-04-07 10:35:08 +08:00
k32 d54643e9e1
Merge pull request #4453 from k32/fix-auth-mnesia
fix(emqx_auth_mnesia): add missing combinations of permissions
2021-04-06 21:37:50 +02:00
zhanghongtong 15627643e2 chore(mgmt): delete assert in emqx_mgmt_cli 2021-04-06 16:35:44 +08:00
zhanghongtong 0015520a6a chore(mgmt): fix test case failure caused by slow kick 2021-04-06 15:41:59 +08:00
JianBo He cff21ba16e fix(mgmt): exclude telemetry related lines from enterprise 2021-04-06 13:22:23 +08:00
JianBo He bb2033be13 refactor(exhook): remove hook registray 2021-04-06 11:22:30 +08:00
k32 017a07617d fix(emqx_auth_mnesia): Add tests for migrating pubsub access 2021-04-01 18:01:34 +02:00
zhanghongtong ffbc11aeef chore(lua_hook): fix test error for lua_hook 2021-04-01 22:56:21 +08:00
k32 61ad5d718f fix(emqx_acl_mnesia): split pubsub into two different capabilities 2021-04-01 15:08:10 +02:00
zhanghongtong 5e0dfe250d chore: move emqx_telemetry from apps to lib-ce 2021-04-01 14:05:03 +02:00
k32 2c029c0607 fix(emqx_management): Allow to specify credential type during import 2021-03-31 14:45:11 +02:00
k32 830cdffe16 fix(emqx_auth_mnesia): add missing combinations of permissions
Allow to define different access for pub and sub actions
2021-03-31 10:30:08 +02:00
Shawn d19eb05234 fix(emqx_coap): dialyzer failures 2021-03-31 11:23:03 +08:00
Shawn 83b0d444de fix(emqx_coap): return error code forbidden on ACL denied #4456 2021-03-31 11:23:03 +08:00
Shawn 7bf6ee0f4b
fix(mqtt-sn): sleep mode not working #4434 (#4435) 2021-03-29 17:51:49 +08:00
Shawn 583382b8ce refactor(emqx_coap): rename ps to pubsub 2021-03-29 17:43:56 +08:00
wwhai abf26f01d8 fix(mgmt): expose 2 functions to ce 2021-03-25 18:53:17 +08:00
JianBo He 496e5381fb chore(rule-engine): compatible with the lower case hash string 2021-03-25 09:10:05 +08:00
wwhai 3ea8039d90 fix(import): fix import error 2021-03-23 21:57:39 +08:00
wwhai 83b99c09a4 fix(import): add bridge_mqtt compatible <4.2.x 2021-03-23 20:22:22 +08:00
JianBo He f08ddec296
Add server_name_indication and verify option (#4349)
Add server_name_indication and verify option
2021-03-23 19:48:04 +08:00
JianBo He 277cab86d3 refactor: improve the speed of hexstr and binary conversions 2021-03-23 18:25:19 +08:00
Zaiming Shi dcfde3861f feat(ssl): Export a lib function to save key/cert file 2021-03-22 21:15:34 +01:00
Zaiming Shi 5b126d60ad style(elvis): force spaces around | and || 2021-03-22 21:15:16 +01:00
Zaiming Shi 71559dd001 refactor(ssl): Move data dir for ssl certs upload down to lib module 2021-03-22 16:41:01 +01:00
Zaiming Shi 8a41a4ee00 fix(ssl): Fix dir name for uploaded certificates
The dir is "rules" not "rule" in the original code
ref: f1eba1c648/src/emqx_rule_actions_utils.erl
2021-03-22 16:41:01 +01:00
Shawn 817abd7e93 fix(lwm2m): export functions for starting and stopping listeners 2021-03-22 21:13:56 +08:00
Karol Kaczmarek 844a1ba0af feat(acl): cache drain cr fixes 2021-03-20 15:21:31 +01:00
Karol Kaczmarek 87ce9d666f feat(acl): working cache drain cli/rest handlers 2021-03-20 15:21:31 +01:00
Karol Kaczmarek 71a0901c92 feat(acl): CLI and REST handlers for removing acl cache 2021-03-20 15:21:31 +01:00
zhanghongtong 99843e7b4b chore(auth plugins): remove emqx_modules in test case 2021-03-20 09:33:15 +08:00
zhanghongtong beac1f5f59 fix(test cases): fix test case error
ensure emqx_modues loaded before emqx_management in test cases
2021-03-19 17:02:06 +01:00
wwhai 3f2204fb5c fix(backup): add compatible for more lower version 2021-03-19 16:24:13 +08:00
wwhai 109b2f4e90 fix(backup): fix data import/export problem 2021-03-19 16:24:13 +08:00
Karol Kaczmarek 796c071af5 style(api): proplists imports removed 2021-03-19 09:20:25 +08:00
Karol Kaczmarek ea384ec6b5 style(api): minirest imports removed 2021-03-19 09:20:25 +08:00
wwhai 0d75ea874b fix(rule-engine): add 'undefined' type for create time 2021-03-19 08:57:19 +08:00
Zaiming Shi a5f0ed0356 fix(test): Ensure emqx_modules loaded for emqx_management test 2021-03-17 11:46:45 +01:00
zhanghongtong 7a1993f13b chore(auth-mnesia): update cli 2021-03-17 16:29:44 +08:00
Zaiming Shi a1f78b5083 refactor(cli): Print node name version and app name version
So not to confuse application version with node release version
2021-03-16 11:26:17 +01:00
zhanghongtong 98c62df2e4 fix(log): fix web hook print error 2021-03-16 10:22:07 +01:00
Zaiming Shi 3438a0ebca fix(telemetry): get release version, not emqx app version 2021-03-15 16:10:56 +08:00
wwhai f7b34cb098 feat(rule-engine): list rule support order by timestrap 2021-03-12 17:35:13 +08:00
Zaiming Shi 6c106207ff
Merge pull request #4293 from emqx/master
Auto-pull-request-on-2021-03-05
2021-03-10 20:57:45 +01:00
wwhai 1ddb300a56
feat(mgmt): add http listener restart support (#4301) 2021-03-10 17:29:37 +01:00
JianBo He 6bf15c6a2f chore(exhook): deinit registray after application stopped 2021-03-09 11:37:30 +08:00
JianBo He ebffdafe86 fix(exproto): ignore undefined clientid 2021-03-09 11:37:30 +08:00
JianBo He f9d5d3523d chore(exhook): add more option for protobuff 2021-03-09 11:37:30 +08:00
JianBo He 0d8c137cb5 refactor(exhook): load only the necessary hooks 2021-03-09 11:37:30 +08:00
JianBo He 4585306774 chore(exhook): upgrade to 0.6.2 2021-03-09 11:37:30 +08:00
Zaiming Shi c752f3bec5
Refactor http lib add uri parse (#4292)
* feat(http_lib): Add uri parse to emqx_http_lib

* fix(webhook): call emqx_http_lib to parse uri

* fix(auth-http): Call emqx_http_lib to parse uri

* fix(rule-engine): call emqx_http_lib to parse uri
2021-03-06 13:35:02 +08:00
z8674558 efd4ef8091 Merge branch 'dev/v5.0' of private:emqx/emqx into fix-merge-conflict-master-to-5.0 2021-03-04 22:12:09 +09:00
Zaiming Shi 63c001a7aa refactor(http-lib): Add emqx_http_lib
So far only uri_encode and uri_decode APIs
2021-03-03 21:38:10 +01:00
Zaiming Shi eb03c343bc fix(mgmt): Wrong ifdef EMQX_ENTERPRISE compile scope 2021-03-03 19:06:12 +01:00
Zaiming Shi a368453768 fix(mgmt): typo in ifdef macro 2021-03-03 15:15:33 +01:00
z8674558 119bbc4881 chore(emqx_bridge_msg): add empty props 2021-03-03 20:06:31 +09:00
z8674558 71ca1e4d78 chore(emqx_lwm2m_coap_resource): ignore coap_discover/2 from dialyzer 2021-03-03 20:06:31 +09:00
z8674558 117c0cf252 chore(emqx_lwm2m_message): pass integer from list 2021-03-03 20:06:31 +09:00
z8674558 7edd66e9d6 chore(emqx_lwm2m_message): comment out unused clause 2021-03-03 20:06:31 +09:00
z8674558 467569d5ac chore(emqx_lwm2m_protocol): rm unused clause 2021-03-03 20:06:31 +09:00
z8674558 43fc842057 chore(emqx_lwm2m_protocol): default username, password is null -> undefined 2021-03-03 20:06:31 +09:00
z8674558 1f238f4c26 chore(emqx_retainer): avoid race condition 2021-03-03 20:06:31 +09:00
z8674558 70625b1942 chore(emqx_sn_gateway): rm unused clauses 2021-03-03 20:06:31 +09:00
z8674558 1504164933 chore(src): fix dialyzer warnings (match values) 2021-03-03 20:06:31 +09:00
Zaiming Shi 2c5f2a8cdc
Merge pull request #4269 from zmstone/chore-replayq-upgrade-to-0.3.2
chore(deps): upgrade replayq to version 0.3.2
2021-03-03 06:19:52 +01:00
Zaiming Shi 8316f8cc34 fix(rule-engin-api): transform input config for update requests 2021-03-03 09:19:07 +08:00
Zaiming Shi e3407b9556 chore(build): fix rebar dependency and add a script to ensure integrity 2021-03-02 20:30:55 +01:00
JianBo He 2fb5dbd546 revert(bridge-mqtt): remove the mqtt_sub resource
We have several reasons to remove this feature:

1. The design does not make sense. A rule engine resource should
not have an impact on the system's messages directly after it is created.
This mqtt_sub actually conflicts with any design concept of the rules engine.

2. The implementation is incorrect. mqtt_sub uses a client pool to establish
a subscription relationship to an MQTT Broker. This causes a message to be
sent repeatedly to EMQ X. Unless a shared subscription is used,
or a Pool Size of 1 is configured.

3. The emqx-bridge-mqtt supports all the features of mqtt_sub.

This feature introduced by https://github.com/emqx/emqx-bridge-mqtt/pull/78.
And it released to v4.2.0 (NOT WORK), v4.2.1-v4.2.7 (FIXED)
2021-03-02 18:56:21 +08:00
zhanghongtong db92f79713 chore(emqx_modules): add emqx_modules api path 2021-03-02 18:47:09 +08:00
JianBo He 8477780e2b fix(mgmt): remove the useless match
Currently, the `{topic, Topic}` pattern is not used for management.
Moreover it will casue a `function_caluse` while the previous caluse not
matched
2021-03-02 17:06:34 +08:00
JianBo He 9076af1c06 chore(coap): upgrade gen_coap to v0.3.2
The 0.3.2 fixes some redundant log printing in a DTLS
connection
2021-03-02 16:31:18 +08:00
z8674558 2e199126dc fix(emqx_bridge_mqtt_actions): string -> file 2021-03-02 15:00:42 +09:00
z8674558 829a39eade fix(emqx_bridge_mqtt_actions): string -> password 2021-03-02 15:00:42 +09:00
zhanghongtong f548888af9 chore(emqx_management): judge the version for import and export acl mnesia and auth mnesia 2021-03-02 09:35:47 +08:00
zhanghongtong b53bdd1450 chore(emqx_management): remove emqx_modules dependency on emqx_management 2021-03-02 09:35:47 +08:00
zhanghongtong 28653bb457 chore(emqx_management): format code 2021-03-02 09:35:47 +08:00
zhanghongtong baa9fd8255 chore(emqx_management): move emqx management to apps 2021-03-02 09:35:47 +08:00
Zaiming Shi dd06d70bce refactor(build): Move parse_transform module to root app
So we do not have to workaround the compile order issue
2021-03-02 08:40:19 +08:00
Zaiming Shi 5edef84332
Merge branch 'dev/v5.0' into fix-merge-conflict-master-to-5.0 2021-03-01 19:58:16 +01:00
Shawn 990b7bd494 fix(bridge_mqtt): typos 2021-03-01 21:00:17 +08:00
Zaiming Shi 16c27663cd refactor(webhook): transport options refine 2021-03-01 21:00:17 +08:00
Turtle 801b3d6daf style: remove spaces at the end of lines 2021-03-01 21:00:17 +08:00
Turtle db13f18cbe fix(webhook): transport options 2021-03-01 21:00:17 +08:00
Zaiming Shi 026e1494fb fix(webhook): fix config entry web.hook.api.url -> web.hook.url 2021-03-01 21:00:17 +08:00
JianBo He 319d44d1bf chore(webhook): remove needless files 2021-03-01 21:00:17 +08:00
Zaiming Shi 4aca2c294f fix(webhook): transport options 2021-03-01 21:00:17 +08:00
Zaiming Shi 675603fd73 fix(bridge-mqtt): no ssl-option at all (empty list) when ssl is disabled 2021-03-01 21:00:17 +08:00
Zaiming Shi 0a51bd4c2f fix(webhook): Call common lib for ssl options 2021-03-01 21:00:17 +08:00
Zaiming Shi 700fa71754 refactor(tls): abstract lib for tls options parsing 2021-03-01 21:00:17 +08:00
Zaiming Shi 812c57dee9 refactor(plubin_libs): Add emqx_plugin_libs app 2021-03-01 21:00:17 +08:00
Zaiming Shi da6f1104dc chore(bridge-mqtt): sync enterprise code 2021-03-01 21:00:17 +08:00
Zaiming Shi 219eeed6d7 fix(webhook): Explicit default tls version and cipher 2021-03-01 21:00:17 +08:00
Zaiming Shi fcfcbf139d chore(webhook): merge enterprise to opensource 2021-03-01 21:00:17 +08:00
Shawn 6081d45d81
fix(rule): reformat some code
* fix(rule): reformat some code for rule-engine

* fix(lwm2m): change publish_update_when to publish_update_msg_when

Change the option name publish_update_when -> publish_update_msg_when.

Also change the object_list_changed to contains_object_list, as the
the later describes the default behavior correctly.

* fix(lwm2m): publish_update_msg_when -> update_msg_publish_condition
2021-03-01 20:15:12 +08:00
Zaiming Shi d8ad7a0edb chore(emqx_exhook): Ensure semver app vsn 2021-02-26 20:58:38 +01:00
z8674558 3e9abbe95a chore(emqx_exproto): tell dialyzer exit functions do not return 2021-02-24 21:32:48 +09:00
z8674558 a6b5e0707d chore(emqx_exproto): match emqx_misc:tune_heap_size 2021-02-24 21:32:48 +09:00
z8674558 02a755fbea chore(emqx_exproto): fix dialyzer warinings on default_conninfo 2021-02-24 21:32:48 +09:00
z8674558 fb8133b998 chore(emqx_auth_http): match emqx:hook with ok 2021-02-24 21:32:48 +09:00
Zaiming Shi 23269c13bc
Merge pull request #4229 from emqx/master
Auto-pull-request-on-2021-02-23
2021-02-24 09:57:51 +01:00
Shawn 6d83bc3e9b
fix(rule): destroy the actions when disabling the rule (#4232)
Merge the following PR from enterprise version:
https://github.com/emqx/emqx-rule-engine/pull/231
2021-02-24 13:24:23 +08:00
Zaiming Shi 13e8093583 Merge remote-tracking branch 'origin/dev/v4.3.0' into merge-dev-v4.3.0 2021-02-22 21:08:08 +01:00
Zaiming Shi 1b0b742919
Merge pull request #4163 from tigercl/fix/telemetry
fix(telemtry): report only in official version
2021-02-22 21:01:32 +01:00
Zaiming Shi db72b6ae26
Merge pull request #4221 from zmstone/chore-build-move-emqx-telemetry-back-to-apps
chore(build): move emqx-telemetry back to apps
2021-02-22 20:59:48 +01:00
Zaiming Shi 61c5069766 chore(build): Move emqx_telemetry back to apps 2021-02-22 20:29:27 +01:00
Zaiming Shi d7540dc794
Merge pull request #4216 from terry-xiaoyu/enterprise-dev/e4.3.0
chore(rule): migrate rule-engine from enterprise version
2021-02-22 20:27:28 +01:00
Zaiming Shi 505ae24ded
Merge branch 'dev/v5.0' into resolve-dev/v4.3.0-to-dev/v5.0-conflict 2021-02-22 15:20:34 +01:00
Shawn e201484163 fix(rule): incorrect merge for map_get/2,3 and map_put/3 2021-02-22 18:16:24 +08:00
JianBo He 2c9ea3c29e chore(jwt): clearer explanation for verify_claims 2021-02-22 13:58:16 +08:00
Shawn 196fef0255 chore(rule): migrate rule-engine from enterprise version 2021-02-22 13:53:51 +08:00
Shawn 7778cd8623
Add hooks only when creating the rules (#4160)
* refactor(rules): add hook only when creating rules

* fix(rule): update hooks after application restarted

* fix(rule): remove the extra guard
2021-02-22 11:16:47 +08:00
Shawn 1be62b7cbb
feat(lwm2m): always publish update message (#4201)
* feat(lwm2m): always publish update message

* fix(lwm2m): change the publish_update_when to enum
2021-02-20 17:14:14 +08:00
Shawn 1e047e84c2
feat(resource): keep restart disconnected resources after emqx bootup (#4125)
* feat(resource): keep restart disconnected resources after emqx bootup

* feat(resource): improve the restart monitor

* fix(test): improve emqx_rule_monitor_SUITE

* fix(resource): refresh resource should be only applied on local node

* fix(test): improve the test case for restart_resource

* fix(resource): rename some functions
2021-02-20 17:10:50 +08:00
Shawn c2e1bc039b
feat(rule): add more sql functions #4143 (#4144) 2021-02-20 17:10:10 +08:00
Zaiming Shi c2cd2fd231 Merge remote-tracking branch 'origin/dev/v4.3.0' into dev/v5.0 2021-02-19 21:13:33 +01:00
Zaiming Shi 4a877a3a69 chore(apps): relocate some apps
emqx_telemetry is for opensource onlyh
emqx_rule_engiune is common
2021-02-19 11:24:41 +01:00
Zaiming Shi 3dfa9f45c4
Merge pull request #4183 from zmstone/merge-e4.2.4-to-dev-4.3.0
Merge e4.2.4 to dev 4.3.0
2021-02-19 10:26:47 +01:00
Zaiming Shi 3353a2f402
Merge pull request #4206 from z8674558/fix-dialyzer
fix dialyzer warnings
2021-02-19 09:57:14 +01:00
z8674558 5a960fdabc chore(emqx_auth_mnesia): fix dialyzer warnings (match returned values) 2021-02-19 16:52:38 +09:00
z8674558 91d00b2586 chore(emqx_auth_mnesia): fix dialyzer warnings (return error tuple to minirest) 2021-02-19 16:52:38 +09:00
z8674558 e341387837 chore(emqx_auth_mnesia): fix dialyzer warnings (do_update_user only receives Login and NewPassword)' 2021-02-19 16:52:31 +09:00
z8674558 706e272410 chore(emqx_auth_http): fix dialyzer warnings (match returned values) 2021-02-19 16:23:18 +09:00
Zaiming Shi 64cfaf4385 improve(print): io:format error message without indentation
Avoid squeezing lines to the right.
2021-02-19 07:45:37 +01:00
Zaiming Shi f9465dda16 Merge branch 'dev/v4.3.0' into merge-e4.2.4-to-dev-4.3.0 2021-02-14 21:41:23 +01:00
Zaiming Shi 9b82112b7c Merge remote-tracking branch 'origin/dev/e4.3.0' into merge-e4.2.4-to-dev-4.3.0 2021-02-13 11:10:08 +01:00
Zaiming Shi 3863b7f116 fix(config): Quote config string values 2021-02-12 11:16:45 +01:00
Zaiming Shi d11487268e Merge remote-tracking branch 'origin/dev/v4.3.0' into resolve-conflict-v4.3.0-to-v5.0 2021-02-12 10:36:16 +01:00
Zaiming Shi 8f477e8411 refactor(proj): Move opensource apps to lib-opensource
One step closer for better code abstraction for opensorce vs enterprise
So far this relocation is to make opensource to enterprise merges
conflict free.
2021-02-11 16:45:05 +01:00
Zaiming Shi 507759b9f1 Revert "refactor(emqx_modules): Move modules config to app dir"
This reverts commit 9cae8784c0.
Because the reverted change broke compatibility with 4.2.x
configuration.
2021-02-11 16:44:12 +01:00
JianBo He 2b4906b47d
Merge branch 'dev/v4.3.0' into unify_pgsql_conf 2021-02-11 15:50:43 +08:00
Zaiming Shi 514c2c0af5
Merge pull request #4169 from zmstone/refactor-move-modules-config-to-emqx-modules-app
refactor(emqx_modules): Move modules config to app dir
2021-02-10 09:03:04 +01:00
Zaiming Shi 9cae8784c0 refactor(emqx_modules): Move modules config to app dir 2021-02-10 00:02:52 +01:00
Zaiming Shi f000b6583c fix(tls): Ensure tls config integrity
For default tsl version and ciphers, we try to use otp release number
to determin if we want to use tlsv1.3

For default configs, we try to porivde both tlsv1.3 and
ciphers in config (even for commented out configs)
2021-02-09 22:56:28 +01:00
Zaiming Shi 2fa1d9d10b
Merge pull request #4168 from emqx/dev/v4.3.0
Auto-pull-request-on-2021-02-09
2021-02-09 21:28:09 +01:00
Zaiming Shi 4756eb7e5f
Merge branch 'dev/v5.0' into v4.3.0-to-v5.0-resolve-tls-config-conflicts 2021-02-09 09:37:19 +01:00
zhouzb 353ceafbb6 fix(telemtry): report only in official version 2021-02-09 10:46:48 +08:00
Zaiming Shi e4d3702f15 feat(apps): Ensure emqx_modules started before dependent apps
emqx_management and emqx_telemetry calls emqx_modules APIs
2021-02-08 22:07:13 +01:00
Zaiming Shi 7aff861f9b refactor(emqx_modules): Move emqx_modules to lib-opensource
emqx_moduels for enterprise is refactored as a lib/plugin
in order to avoid merge conflicts, we make sure they can
co-exist in the same branch, because lib-opensource is compiled
in opensource project and lib-enterprise (to be added) is
compiled in enterprise project
2021-02-08 21:35:44 +01:00
Zaiming Shi 7c94a02bdd
Merge pull request #4134 from jovdipp/tlsv1.3-as-default
Tlsv1.3 as default
2021-02-05 21:33:03 +01:00
Shawn 70a490114d fix(rulesql): proc cassandra cql with apostrophes failed 2021-02-05 15:30:16 +08:00
Jóvan S. Dippenaar 90c02f1116 test(emqx_exporto): refactored ssl ciphers call for ct_helpers update 2021-02-05 16:21:28 +13:00
Jóvan S. Dippenaar 5e15e3add8 fix(default-config-tls-ciphers): TLS1.3 exclusive ciphers prepended to TLS1.1+TLS1.2 ciphers 2021-02-05 16:21:28 +13:00
Shawn a2fa84255f
fix(rulesql): proc_sql_param_str incorrect with apostrophes #4135 (#4137) 2021-02-05 10:41:54 +08:00
Zaiming Shi 55253f914c
Merge pull request #4149 from emqx/dev/v4.3.0
Auto-pull-request-on-2021-02-04
2021-02-04 23:17:10 +01:00
wwhai c30666ee26
fix(rule-engine): remove plugin_template (#4146)
chore(build): remove template plugin

The template plugin is intended to work as a standalone plugin
development template repo. Should not be in the umbrella
project.
2021-02-04 10:01:37 +01:00
JianBo He c3642c5c83 refactor(pgsql): set the default ssl version to tlsv1.3,tlsv1.2,tlsv1.1 2021-02-04 15:32:08 +08:00
JianBo He 045bc02ec9 test(ci): add proptests chekcing to the makefile 2021-02-04 14:22:17 +08:00
Zaiming Shi 3e1b6394f2
Merge pull request #4131 from emqx/dev/v4.3.0
Auto-pull-request-on-2021-02-01
2021-02-02 20:05:43 +01:00
wwhai 6eff70a646
fix(rule-engine): reply 500 when update resource failed (#4120) 2021-02-01 09:47:08 +08:00
Jóvan Dippenaar c3c28f4b72 feat(tls.13): tls1.3 ciphers set in .conf's 2021-01-31 18:38:34 +13:00
Jóvan Dippenaar 94e8a69a48 docs(typos): vefify -> verify 2021-01-31 17:27:08 +13:00
Zaiming Shi 4e19e99ec4 Merge tag 'v4.3-alpha.1' into merge-4.3-alpha.1-to-5.0 2021-01-29 15:12:37 +01:00
wwhai a3206f5e0b fix(rule-engine): reformat code style 2021-01-29 19:32:05 +08:00
JianBo He 38eb849ef0 fix(mysql): upgrade mysql to 1.7.1 for TLS supporting 2021-01-29 19:31:02 +08:00
JianBo He 1aefee01c2 chore(mgmt): remove needless lines 2021-01-29 18:50:29 +08:00
z8674558 a6e532779b chore(mongo): quote example 2021-01-29 18:21:34 +09:00
z8674558 fd1a53b45e fix(cts): fix config file path in sed 2021-01-29 18:21:29 +09:00
wwhai 3973c93534 fix(rule-engine): remove unused code 2021-01-29 17:16:00 +08:00
z8674558 e8729fb00e Merge branch 'dev/v5.0' of private:emqx/emqx into merge430 2021-01-29 17:11:12 +09:00
wwhai 7072355bc1 fix(rule-engine): fix test failure 2021-01-29 15:24:07 +08:00
wwhai 73655369af fix(rule-engine): reformat some code 2021-01-29 11:52:32 +08:00
tigercl 730d09f874
fix(http): upgrade ehttpc to 0.1.2 (#4093)
For fix the connection closed by keepalive
2021-01-29 09:35:08 +08:00
wwhai f0993c6b0f
chore(style): improve the codes style 2021-01-28 20:01:59 +08:00
zhanghongtong 6a83cf3f35 chore(format): format some code 2021-01-28 19:18:18 +08:00
JianBo He 456e3e5faa chore(bridge-mqtt): fix styles 2021-01-28 16:24:42 +08:00
JianBo He d98d26942c fix(bridge-mqtt): add max_inflight_size option back
For compatibility with versions below 4.2, we still
use the `max_inflight_size` option, but generate it
as the `max_inflight`

Previous PR: https://github.com/emqx/emqx/pull/3938
2021-01-28 16:24:42 +08:00
Zaiming Shi e96d03dc1b
Merge pull request #4087 from zmstone/fix-auth-ldap
fix(auth_ldap): do not load plugin when no params configured
2021-01-28 08:51:08 +01:00
Zaiming Shi c422b200be
Merge pull request #4088 from emqx/dev/v4.3.0
Auto-pull-request-on-2021-01-27
2021-01-27 22:02:52 +01:00
Zaiming Shi d38b626579 fix(emqx_coap_ps_resource): Copy uri decode code from OTP-22 2021-01-27 19:19:38 +01:00
zhouzb e6235d3bc9 fix(scheme): fix default scheme 2021-01-27 19:11:41 +01:00
zhouzb 92d307b1b3 fix(scheme): update test case 2021-01-27 19:11:41 +01:00
zhouzb 45aafc75dd fix(scheme): using uri_string:normalize/1 2021-01-27 19:11:41 +01:00
zhouzb 311df2f8a6 fix(scheme): fix scheme parsing 2021-01-27 19:11:41 +01:00
zhouzb a631a2d64f fix(ssl): fix ssl option 2021-01-27 19:11:41 +01:00
Zaiming Shi f42e52e84e fix(auth_pgsql): Add back econnrefused error clause 2021-01-27 19:10:47 +01:00
wwhai b5c435e211 fix(rule-engine): add format space 2021-01-27 19:01:11 +01:00
Zaiming Shi fc71285c3f fix(auth_ldap): do not load plugin when no params configured 2021-01-27 12:56:13 +01:00
zhanghongtong 689b530b4f chore(auth-http): remove needless test case 2021-01-27 19:55:21 +08:00
JianBo He b77ac247eb chore(auth-http): remove needless lines 2021-01-27 19:55:21 +08:00
zhanghongtong eaa7394554 chore(ldap): delete uesless dir 2021-01-27 18:58:35 +08:00
JianBo He 02cb8d0211 chore(style): set warnings_as_errors compile option 2021-01-27 18:02:12 +08:00
wwhai 001a89a396
Merge pull request #4070 from wwhai/fix-update-problem
feat(rule-engine): change init resource to test resource
2021-01-27 17:09:37 +08:00
wwhai e7153c4266 fix(rule-engine): add cluster init callback 2021-01-27 15:06:12 +08:00
JianBo He 7919f08e03
Merge pull request #4067 from HJianBo/fix/webhook_certs
fix(webhook): fix bad https confs
2021-01-27 10:44:28 +08:00
Zaiming Shi fa7d96dd4a Merge remote-tracking branch 'origin/dev/v4.3.0' into dev/v5.0 2021-01-26 19:32:55 +01:00
Zaiming Shi 937390fe0f
Merge pull request #4072 from emqx/dev/v4.3.0
Auto-pull-request-on-2021-01-25
2021-01-25 22:05:03 +01:00
Zaiming Shi 5477457c7e fix(emqx_recon): fix badarg for remote module load 2021-01-25 19:09:41 +01:00
wwhai 81da182e1b feat(rule-engine): change init resource to test resource 2021-01-25 19:44:32 +08:00
JianBo He 8d56371465
Merge branch 'dev/v4.3.0' into fix/webhook_certs 2021-01-25 19:22:14 +08:00
Zaiming Shi 6a6a94f99e
Merge pull request #4057 from zmstone/fix-emqx_vm-allocator-info-otp-23-compatibility
fix emqx_vm allocator info otp 23 compatibility
2021-01-25 11:36:47 +01:00
JianBo He 86942ffa14 fix(webhook): fix bad https confs 2021-01-25 18:20:12 +08:00
JianBo He 670c3894fb chore(redis): upgrade eredis_cluster to 0.6.4 2021-01-25 17:29:56 +08:00
zhouzb b25dedccc9 refactor(inet parse): refactor inet parse 2021-01-25 15:59:23 +08:00
JianBo He 67e56658a7 fix(bridge-mqtt): fix bad time unit 2021-01-25 15:35:04 +08:00
JianBo He 3de8fea435 fix(bridge-mqtt): fix bad received metrics counting 2021-01-25 15:35:04 +08:00
wwhai f3420e8810 fix(rule-engine): fix update resource maybe remove resource 2021-01-25 10:56:58 +08:00
JianBo He 3322bb60c3 fix(exproto): fix the bad return type for auth 2021-01-25 09:24:03 +08:00
Zaiming Shi 20c37609af
Merge pull request #4062 from emqx/dev/v4.3.0
Auto-pull-request-on-2021-01-24
2021-01-24 22:29:09 +01:00
Zaiming Shi 8a05380388 refactor(emqx_coap): use url_string module to decode url encoded topic 2021-01-24 10:28:37 +01:00
Zaiming Shi 17d70772a8 refactor(emqx_recon): Use latest version recon
Moved recon dependency from emqx_recon to root
2021-01-23 11:42:28 +01:00
Zaiming Shi c1b1ddbb6f
Merge pull request #4032 from zmstone/chore-sync-apps-resync-4.2.6
chore(sync-apps): resync plugin apps from their 4.2.6 tag
2021-01-23 11:15:46 +01:00
Zaiming Shi 84e922205b
Merge pull request #4056 from emqx/dev/v4.3.0
Auto-pull-request-on-2021-01-22
2021-01-22 21:41:06 +01:00
Zaiming Shi 2c03bca6ae chore(auth_jwt): Upgrade to jose 1.11.1 prepare for OTP 23 2021-01-22 20:31:27 +01:00
Zaiming Shi 51050f702a chore(config): Insert a space after config comment '#' and key 2021-01-22 15:07:35 +01:00
Zaiming Shi 7bb590f1c7 refactor(auth_redis): delete backward-compatible code in config schema 2021-01-22 14:20:47 +01:00
Zaiming Shi 5d45325cb8 fix(conf): quote config values 2021-01-22 14:20:47 +01:00
Zaiming Shi b9071394c4 Merge remote-tracking branch 'origin/dev/v4.3.0' into chore-merge-v430-to-v50 2021-01-21 23:53:12 +01:00
Yudai Kiyofuji c6785b1a34
test(coap): add test on acl and connection discarding (#4039) 2021-01-21 11:03:06 +09:00
Yudai Kiyofuji 455f210b4c
feat(cuttlefish): use hocon as a parsing function (#4008)
* chore(conf): add quotation for hocon

* chore(conf): fix paths incompatible with hocon

* chore(conf): use hocon as parsing function

* chore(docker): add quotation to some env variables for hocon
2021-01-19 19:52:17 +09:00
Zaiming Shi 4103a7292a Merge branch 'resync-apps-from-426' into chore-sync-apps-resync-4.2.6 2021-01-18 20:37:45 +01:00
Zaiming Shi be771f6cd9 fix(auth_pgsql): Make ssl_opts.versions backward compatible 2021-01-18 20:37:45 +01:00
Zaiming Shi 14ca914068 Merge branch 'resync-apps-from-426' into chore-sync-apps-resync-4.2.6 2021-01-18 20:37:26 +01:00
Zaiming Shi 86895ddc24 chore(sync-apps): sync emqx_auth_mnesia e4.2.3 2021-01-18 20:05:08 +01:00
Zaiming Shi a2b4e50a8d chore(sync-apps): re-sync apps from dev/v4.3.0 branch 2021-01-18 19:24:08 +01:00
Zaiming Shi fc0b912cde refactor(emqx_dashboard): www dir is to be downloaded at build time 2021-01-18 19:20:49 +01:00
tigercl fd2e9f147b
fix(auth http): using ehttpc (#4021)
* fix(auth http): using ehttpc

* chore(ehttpc): update tag of ehttpc

* fix(config): update comment
2021-01-16 23:10:53 +08:00
wwhai a6de90c3f9
fix(test): add two way ssl test (#4025) 2021-01-16 22:28:15 +08:00
turtleDeng 2751fa6a41 fix(scheme): update emqx_web_hook_actions.erl 2021-01-16 22:25:12 +08:00
zhouzb bf84686b76 chore(ehttpc): update tag of ehttpc 2021-01-16 22:25:12 +08:00
zhouzb 9f0dbeff29 fix(webhook): fix ipv6 in ip and hostname 2021-01-16 22:25:12 +08:00
zhouzb 114bf8e048 fix(webhook): only POST and PUT requests carry Content-Type header and using the original URL as host header 2021-01-16 22:25:12 +08:00
zhanghongtong 9e03d6fea1 chore(auth): configuration format of unified authentication plug-in 2021-01-15 20:25:09 +08:00
bignullnull 981482d707
fix(test): fix test cases (#4012)
* fix(test): fix test cases
2021-01-15 09:48:57 +08:00
JianBo He aed801d6fd test(exproto): refine test cases 2021-01-15 09:47:56 +08:00
JianBo He d360e7ead1 feat(exproto): use client streaming APIs for handler
- Use the gRPC client streaming APIs to improve the
  ConnectionHandler server performance.
- Change the 'conn' field type to term binary
2021-01-15 09:47:56 +08:00
zhouzb 42f95bba09 fix(alarms): add duration field for alarms 2021-01-15 09:27:15 +08:00
bignullnull 67bfb4f10a
fix(rule_engine): resource update problem and add cli (#3991) 2021-01-15 09:12:24 +08:00
JianBo He 32b23b9181 Revert "feat(auth_http): support for getting websocket cookies"
This reverts commit 5427057c2c.
2021-01-14 15:10:48 +01:00
JianBo He f2190dd5b5 chore(mnesia): explicitly specify the copy type for table 2021-01-14 15:46:16 +08:00
JianBo He 2a029b71c9 perf(mnesia): unify the copy types of all nodes 2021-01-14 15:46:16 +08:00
tigercl 372687d79d
improve(http): replace httpc with gun, improve performance and fix httpc unresponsiveness (#3940) 2021-01-13 13:47:23 +08:00
JianBo He 5427057c2c feat(auth_http): support for getting websocket cookies
see: https://github.com/emqx/emqx-auth-http/pull/225
2021-01-11 09:21:16 +08:00
Ayodele 2b481dabe7
Fix some dialyzer warnings (#3988) 2021-01-05 20:49:50 +01:00
zhanghongtong ca1e78677e chore(dashboard): delete static files
delete static files of dashboard and download them during build
2021-01-05 17:22:19 +08:00
Zaiming Shi b9661cddfa
fix(emqx_lwm2m_message): Path is built from binary format (#3987) 2021-01-04 17:31:21 +01:00
ayodele.akingbule 9b6b762f1c fix(emqx_retainer): fix dialyzer warnings 2021-01-04 14:14:55 +01:00
ayodele.akingbule 30588ac666 fix(emqx_mgmt): fix dialyzer warnings 2021-01-04 14:14:55 +01:00
ayodele.akingbule 990be9c198 fix(emqx_rule_engine_api): fix dialyzer warnings 2021-01-04 14:14:55 +01:00
Shawn e518828d8f
fix(rule_engine): mechanism of restarting resources (#3980) 2021-01-04 11:52:57 +08:00
Ayodele 26021b37b3
Umbrella fix build (#3969)
* fix(dialyzer): dialyzer warning.
2021-01-04 09:10:22 +08:00
Shawn d86b5ef210 fix(rule_engine): compile warnings on the macro RAISE 2020-12-31 17:03:39 +08:00
Shawn a747cf16bd
fix(resource_cli): update the CLIs for resources (#3978) 2020-12-31 13:41:33 +08:00
bignullnull 37974f7376
fix(rule_engine): add resource reconnect check (#3974)
* fix(rule_engine): add resource reconnect check
* fix(rule_engine): add reason for RAISE macro
2020-12-31 12:51:01 +08:00
wwhai 903ce29ce0 fix(rule_engine): fix resource update maybe failure 2020-12-31 11:43:03 +08:00
zhanghongtong 41afcde964 chore(ssl conf): update the ssl configuration format for mongo, pgsql, and redis plug-ins 2020-12-29 00:03:12 +08:00
zhanghongtong 6989c7a83d test(CI): add cts 2020-12-29 00:03:12 +08:00
bignullnull efb32e9903
test(rule_engine): add update resource unit test case (#3964)
* test(rule_engine): add update resource unit test case

* feat(rule_engine): add update resource support

Co-authored-by: wwhai <cnwwhai@gmail.com>
2020-12-28 14:59:28 +08:00
Yudai Kiyofuji 56920b6ca6
fix(bridge_mqtt): max_inflight_size -> max_inflight; this enables emqtt.erl to use the value (#3938)
* fix(bridge_mqtt): max_inflight_size -> max_inflight; this enables emqtt.erl to use the value

* chore(bridge_mqtt): fix elvis

* fix(worker): max_inflight_batches -> max_inflight
2020-12-28 13:43:13 +08:00
JianBo He 739e49218f
fix(cm): fix the problem of registering a channel twice (#3831) 2020-12-28 11:03:29 +08:00
JianBo He 9e22f492c7 refactor(rule-engine): add proc_sql_param_str/2 to handle sql params 2020-12-28 10:51:13 +08:00
JianBo He d628c49f16 fix(management): make client format function durable 2020-12-28 10:51:13 +08:00
ayodele.akingbule b68a0b3730 fix(emqx_lua_hook): fix dialyzer warnings. 2020-12-25 07:42:01 +08:00
ayodele.akingbule 2126129aee fix(emqx_prometheus): fix Dialyzer warnings 2020-12-25 07:42:01 +08:00
ayodele.akingbule 80cca940c2 fix(emqx_http_client): fix Dialyzer warnings 2020-12-25 07:42:01 +08:00
Shawn 02245aeb7a chore(test): provisionally delete the testcase for SASL
The SASL feature in emqtt is not ready, delete the testcases for now.
2020-12-23 16:42:49 +08:00
Shawn 865c63d82e fix(emqx_mgmt): data export failed on generating the exported filename 2020-12-23 16:41:18 +08:00
Shawn 6b5878cdd0 fix(test): solve verification issue when verify the resource numbers 2020-12-23 16:39:40 +08:00
Shawn ec8cfecdc0 fix(test): typos in emqx_mgmt_api_SUITE 2020-12-23 13:47:22 +08:00
Shawn 60f1b64ad9 fix(test): delete extra emqx_lua_hook:stop() 2020-12-22 22:05:24 +08:00
Shawn 9e3b6da9ca fix(test): delete extra verfication for 'max_age' 2020-12-22 18:22:17 +08:00
Shawn 54ff20ec0e fix(build): remove the extra cowlib deps from emqx_auth_http 2020-12-22 17:50:10 +08:00
zhanghongtong a364758e2a test(emqx_recon): stop emqx correctly in the test case 2020-12-22 13:39:49 +08:00
zhanghongtong 3ef08f9ce3 test(meck): add meck unload after meck load 2020-12-22 13:39:49 +08:00
zhanghongtong 26758d48d1 test(auth mnesia): the initial environment is restored at the end of the test case 2020-12-22 13:39:49 +08:00
Shawn 443ff737ed fix(rule_engine): use rpc in emqx_rule_engine_api 2020-12-22 11:18:16 +08:00
Shawn e15c0c325e fix(rule_engine): nested_get value from binary was supported in 4.1 2020-12-22 11:18:16 +08:00
Shawn 86d20b060c fix(metrics): counters not created before incr 'rule.matched' 2020-12-22 11:18:16 +08:00
Shawn c3159420bb feat(funcs): add bitsize/1 and subbits/2,3,6 functions 2020-12-22 11:18:16 +08:00
Yudai Kiyofuji 8a50c70ca3
Merge pull request #3929 from z8674558/feat/coap-acl
feat(coap): use emqx_access_control:check_acl before pub/sub
2020-12-21 16:38:49 +09:00
zhanghongtong 0ef84d2722 fix(auth mnesia): remove the duplicate cli command
style(auth mnesia): fix elvis check failurex

style(auth mnesia): remove the extra symbol
2020-12-19 15:20:46 +08:00
Shawn e72cbd22c4 fix(rule_validator): fill default values when validating the params 2020-12-18 11:08:17 +08:00
z8674558 a564670863 fix(coap): fix the issue the connection with same clientid is not discarded 2020-12-17 15:57:38 +09:00
zhanghongtong fd6cc1a848 test(CI): update actions
add fvt tests

update test cases
2020-12-17 14:23:33 +08:00
Shawn 0a44270932
* fix(dialyzer): remove the dialyzer errors 2020-12-17 10:04:49 +08:00
z8674558 f06ec6baaa chore(lint): fix elvis 2020-12-17 10:55:57 +09:00
z8674558 c89dad559e feat(coap): use emqx_access_control:check_acl before pub/sub 2020-12-17 10:36:51 +09:00
Zaiming Shi d4e7a87807 fix(emqx_stomp): Fix emqx_stomp_protocol xref 2020-12-16 18:39:18 +08:00
Zaiming Shi ab57c19e7a
Merge pull request #3917
Fix dialyzer warnings
2020-12-15 13:50:31 +01:00
ayodele.akingbule 893301db6a fix(emqx_stomp_protocol): fix Dialyzer warnings 2020-12-15 12:45:47 +01:00
ayodele.akingbule ec79523ea5 fix(emqx_rule_actions): fix Dialyzer warnings 2020-12-15 11:39:52 +01:00
ayodele.akingbule 51c62dfe65 fix(emqx_auth_mnesia_api): fix Dialyzer warnings 2020-12-15 11:31:55 +01:00
ayodele.akingbule 8ee98e3f20 fix(emqx_rule_utils): fix Dialyzer warnings 2020-12-15 11:31:55 +01:00
z8674558 66ebcfa301 test(emqx_auth_redis): add test cases for sentinel 2020-12-15 10:35:13 +08:00
JianBo He bddacf5284 test(management): refine the tests 2020-12-14 11:35:05 +08:00
JianBo He 5d98944c94 feat(management): implement the auth-mnesia import/export
All codes picks from emqx-management:dev/e4.2.3
2020-12-14 11:35:05 +08:00
JianBo He 1b016b16f4
Merge branch 'dev/v4.3.0' into refact/avoid_anonymous_funcs 2020-12-14 11:23:13 +08:00
JianBo He 1be1757bbd fix(mongo): avoid function_caluse while query returned other types 2020-12-14 11:13:36 +08:00
JianBo He 27d6b73c37 refactor(mqttsn): avoid saving anonymous functions 2020-12-14 11:13:04 +08:00
Zaiming Shi d60212787b chore(build): remove emqx from app's applications list 2020-12-12 23:02:26 +01:00
Shawn 10dbb5bc96
Fix testcases warns (#3906) 2020-12-11 18:54:48 +08:00
Zaiming Shi 7bdd093ef5 Merge remote-tracking branch 'origin/dev/v4.3.0' into umbrella-fix-build 2020-12-11 08:55:57 +01:00
Zaiming Shi d75b89eadb chore(proj): sync .ci directories 2020-12-11 08:37:14 +01:00
Zaiming Shi 0237abd3d2 chore(emqx_lwm2m): Ensure xml dir copied to build dir 2020-12-11 08:29:45 +01:00
Zaiming Shi 3a91ff8a7b chore(proj): resync apps 2020-12-11 08:19:26 +01:00
ayodele.akingbule b2efcef4b4 fix(emqx_rule_runtime): Dialyzer warnings 2020-12-10 23:34:36 +01:00
ayodele.akingbule 6ffb20e1d4 fix(emqx_auth_mnesia_api): Dialyzer warnings 2020-12-10 23:34:36 +01:00
ayodele.akingbule 7998ea1703 fix(emqx_auth_mnesia): Dialyzer warnings 2020-12-10 23:34:36 +01:00
ayodele.akingbule 5644fdc1f0 fix(emqx_acl_mnesia): Dialyzer warnings 2020-12-10 23:34:36 +01:00
ayodele.akingbule b08d9d5d9b fix(emqx_auth_jwt_svr): Dialyzer warnings 2020-12-10 23:34:36 +01:00
Shawn ed510936fe fix(test): revert the code committed by mistake 2020-12-10 21:37:29 +08:00
Ayodele 56d7b3deb1 Umbrella fix build (#8) 2020-12-10 11:25:25 +01:00
Zaiming Shi fb5ad0559f fix(emqx_exproto_conn): dialyzer warning 2020-12-10 11:22:38 +01:00
Zaiming Shi d3fda0f944 refactor(emqx_coap): pin gen_coap 0.3.1 for dialyzer warning fix 2020-12-10 11:22:38 +01:00
Zaiming Shi 19edda4136 fix(emqx_lwm2m): bump to lwm2m_coap 1.1.2 2020-12-10 11:22:38 +01:00
Ayodele ff99bc10ad Umbrella fix build (#7)
* fix(emqx_auth_mongo): Dialyzer warnings

* fix(emqx_auth_mnesia_api): Dialyzer warnings

* fix(emqx_exhook): Dialyzer warnings
2020-12-10 11:22:38 +01:00
Ayodele 0cb9cbce71 Umbrella fix build (#6)
* fix(emqx_bridge_rpc): Dialyzer warnings

* fix(emqx_coap_app): Dialyzer warnings

* fix(emqx_coap_mqtt_adapter): Dialyzer warnings

* fix(emqx_lwm2m_json): Dialyzer warnings

* fix(emqx_lwm2m_message): Dialyzer warnings

* fix(emqx_mgmt): Dialyzer warnings

* fix(emqx_mgmt_cli): Dialyzer warnings

* fix(emqx_mgmt): Dialyzer warnings

* fix(emqx_bridge_rpc): Dialyzer warnings

* fix(emqx_mgmt): Dialyzer warnings

* fix(emqx_exproto_gcli): Dialyzer warnings
2020-12-10 11:22:38 +01:00
Ayodele 13b67c0d19 Umbrella fix build (#5)
* fix(emqx_auth_jwt): Dialyzer warnings

* fix(emqx_auth_mnesia_cli): Dialyzer warnings

* fix(emqx_bridge_mqtt_cli): Dialyzer warnings

* fix(emqx_bridge_mqtt_cli): Dialyzer warnings

* fix(emqx_auth_redis_sup): Dialyzer warnings

* fix(emqx_bridge_mqtt): Dialyzer warnings

* fix(emqx_auth_pgsql_cli): Dialyzer warnings

* fix(emqx_bridge_mqtt_cli): Dialyzer warnings

* fix(emqx_auth_mnesia_cli): Dialyzer warnings
2020-12-10 11:22:38 +01:00
ayodele.akingbule 18ddde0174 fix(emqx_lwm2m_app): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule a03d7045cf fix(emqx_lwm2m_protocol): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule 80f56654e2 fix(emqx_psk_file): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule 01fe9d3ee7 fix(emqx_psk_file_app): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule 7116a22fa5 fix(emqx_psk_file): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule 1a8baa9d8a fix(emqx_management): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule 37e3b11263 fix(emqx_mgmt_api_alarms): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule 8ed5dc0b78 fix(emqx_lwm2m_timer): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule a94b70a95e fix(emqx_lua_hook): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule 31c6292008 fix(emqx_exproto_conn): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule b0ea0e2ddb fix(emqx_exhook_app): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule cb4892b8c4 fix(emqx_dashboard_admin): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule d54a5300fc fix(emqx_coap_registry): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule 950430d5da fix(emqx_coap_ps_topics): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule 822460377c fix(emqx_auth_redis_cli): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule b5e0386c98 fix(emqx_auth_redis_app): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule 0e24e59366 fix(emqx_auth_mysql_app): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule 7ba5c1787b fix(emqx_auth_mnesia_cli): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule 4905b98c26 fix(emqx_auth_ldap_app): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule dc27900260 fix(emqx_auth_jwt_app): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule d8c9547a5e fix(emqx_auth_http): Dialyzer warnings 2020-12-10 11:22:38 +01:00
Zaiming Shi c8b866dc63 fix(emqx_rule_engine): Dialyzer warnings 2020-12-10 11:22:38 +01:00
Zaiming Shi 5bb1da5896 fix(emqx_rule_engine_sup): discard ets:new return value 2020-12-10 11:22:38 +01:00
ayodele.akingbule 9db6b3b430 fix(emqx_auth_mnesia_app): Dialyzer warnings 2020-12-10 11:22:38 +01:00
ayodele.akingbule db25660497 fix(emqx_auth_http_app): Dialyzer warnings 2020-12-10 11:22:38 +01:00
Zaiming Shi 39883bdab1 fix(emqx_retainer): Dialyzer warnings 2020-12-10 11:22:38 +01:00
Zaiming Shi 8bb8dc5363 fix(emqx_rule_engine): Dialyzer warnings 2020-12-10 11:22:38 +01:00
Zaiming Shi 692f59afaf fix(emqx_rule_events): Dialyzer warnings 2020-12-10 11:22:38 +01:00
Zaiming Shi 3dc11bc9e1 fix(emqx_rule_funcs): Fix strng:pad calls 2020-12-10 11:22:38 +01:00
Zaiming Shi 526d6f74bb fix(emqx_rule_metrics): Fix type specs 2020-12-10 11:22:38 +01:00
Zaiming Shi a504539097 fix(emqx_rule_registry): Dialyzer warning 2020-12-10 11:22:38 +01:00
Zaiming Shi e58abd916c fix(rule_engine.hrl): Type spec, args map is keyed by binary 2020-12-10 11:22:38 +01:00
Zaiming Shi a59218d008 fix(emqx_plugin_template): Dialyzer wanrings 2020-12-10 11:22:38 +01:00
Zaiming Shi bdfcc2da0e fix(emqx_rule_engine_api): Dialyzer warnings for no_match 2020-12-10 11:22:38 +01:00
Zaiming Shi ff55b0ff45 fix(emqx_rule_runtime): Dialyzer warnings 2020-12-10 11:22:38 +01:00
Zaiming Shi 42ed274ec3 fix(emqx_rule_runtime): Dialyzer warnings 2020-12-10 11:22:38 +01:00
Zaiming Shi 764d5977c1 fix(emqx_rule_engine): Dialyzer warning related to generated code 2020-12-10 11:22:38 +01:00
Zaiming Shi 6a1aae52eb fix(emqx_rule_validator): Dialyzer warning 2020-12-10 11:22:38 +01:00
Zaiming Shi 4cfe4e9940 fix(eqmx_sasl): Dialyzer warning 2020-12-10 11:22:38 +01:00
Shawn 02afda2f3b chore(test): testing the github action 2020-12-10 16:49:32 +08:00
Zaiming Shi baaa4e847d fix(emqx_sn_gateway): Dialyzer warnings 2020-12-10 09:49:24 +01:00
Zaiming Shi 8d853a3445 fix(dialyzer/emqx_sn): Fix unmatched return value warning 2020-12-10 09:37:23 +01:00
Zaiming Shi 2e5a0b799d fix(sn): Fix dialyzer warnings 2020-12-10 09:35:35 +01:00
Zaiming Shi 760ef9210a fix(stomp): Fix dialyzer warnings 2020-12-10 09:35:35 +01:00
Zaiming Shi bcae92ae6d fix(telemetry): Fix dialyzer warning about mnesia dirty op race 2020-12-10 09:35:35 +01:00
Zaiming Shi 996b205299 fix(telemetry): Fix dialyzer warning in emqx_telemetry_api 2020-12-10 09:35:35 +01:00
Shawn 12e0028b77 fix(mgmt): remove schema_registry calls from opensource code 2020-12-10 16:30:48 +08:00
Zaiming Shi ecf69b3464 chore(emqx_lwm2m): Add TEST compiler condition for test code 2020-12-10 09:29:46 +01:00
JianBo He 2b1429fe03 test(stomp): cover the emqx_stom_heartbeat:interval/2 2020-12-10 13:08:03 +08:00
JianBo He 713b4c7804 refactor(stomp): remove transaction module 2020-12-10 12:33:55 +08:00
JianBo He 1263a05bbc refactor(stomp): improve code form naming 2020-12-10 12:33:55 +08:00
JianBo He 9e47d31f79 refactor(stomp): avoid anonymous functions 2020-12-10 12:33:52 +08:00
Shawn 15d048d8ec feat(funcs): add bitsize/1 and subbits/2,3,6 functions
Given following Rule SQL:

```
select
  subbits(payload, 1, 8) as firstByte,
  case
    when firstByte = 123 then 't/{'
    when firstByte = 125 then 't/}'
    else 't/' + str(firstByte)
  end as tp
from "t/#"
```

Input Payload: `{x}`
Output: `{"tp": "t/{", "firstByte": 123}`

Input Payload: `}x`
Output: `{"tp": "t/}", "firstByte": 125}`

Input Payload: `a`
Output: `{"tp": "t/97", "firstByte": 97}`
2020-12-10 11:26:07 +08:00
Shawn 573a4b2df8 chore(rule_engine): sync the code from rule-engine/dev/v4.3.0 2020-12-09 17:58:26 +08:00
JianBo He 49d15d974a build(make): add xref, dialyzer command 2020-12-09 14:21:54 +08:00
Zaiming Shi aac3d79b7d fix(build): pre-compile parse_transform modules 2020-12-09 00:28:39 +01:00
Zaiming Shi 80e1d6cc9d chore(apps): delete LICENSE files for apps 2020-12-08 22:28:46 +01:00
Zaiming Shi 6d1cd6b7ea refactor(emqx_password): move the module to emqx application
Future plugins will require emqx as a dependency.
This commit also brings back bcrypt to the system which was temporary
removed when converting to umbrella project
2020-12-08 22:09:59 +01:00
Zaiming Shi 7fdbfba06a Merge branch 'umbrella-for-430-auto-sync' into umbrella-for-430 2020-12-08 22:09:59 +01:00
Zaiming Shi 2fda0a1565 chore(apps): Sync again all apps 2020-12-07 21:30:21 +01:00
Zaiming Shi 036eda27f6 chore(rebar): Delete profiles from apps' rebar.config
otherwise rebar3 crashes
2020-12-05 13:36:56 +01:00
Zaiming Shi 9dc68bc18d chore(emqx_exhook): Delete old app.src file 2020-12-05 03:04:33 +01:00
Zaiming Shi db792ec577 chore(apps): Sync again with 4.3.0 2020-12-05 03:02:35 +01:00
Zaiming Shi 8a12018863 Add more cleanups 2020-12-05 02:45:01 +01:00
Zaiming Shi 0fb5fb31a5 refactor(proj) sync 4.3.0 plugins with tracked files 2020-12-05 02:43:04 +01:00
Zaiming Shi 686c006d6e refactor(proj): Add apps 2020-12-04 22:11:53 +01:00
Zaiming Shi 73d02beace refactor(apps): Merge emqx_libs back to emqx
And move emqx app back to root level

After realising the challenges of developing plugins in standalone
rebar projects. it is perhaps more smooth to keep using emqx as
a rebar dependency
2020-12-04 19:58:58 +01:00
Zaiming Shi 2cbd2bc800 chore(app.src): use semver 4.3.0 for apps version base 2020-12-03 19:59:41 +01:00
Zaiming Shi 9382bed9f5 refactor(proj): Move etc and data dir to apps/emqx/ 2020-12-03 12:53:02 +01:00
Zaiming Shi e236196fa6 refactor(emqx_auth_mnesia): use tag e4.2.2
Removed emqx_auth_clientid and emqx_auth_username
because the new version emqx_auth_mnesia has all the features included
2020-12-03 12:52:59 +01:00
Zaiming Shi 5f0f91bb15 Merge branch 'dev/v5.0' into umbrella-for-430 2020-12-02 17:37:34 +01:00
Zaiming Shi 5bb0cccb53 refactor(build): Clean up app version management
Starting from 5.0.0, all apps in apps dir should follow semver
strictly. Do not use the umbrella project's release tags.

The universal tags made sense when we have applications scattered
in different repos. Now since this is an umbrella project, it is
enough to have a single package level version number corelated with
git tag.
2020-12-01 23:22:33 +01:00
Zaiming Shi 2dce1883d5 refactor(build): Deterministic code generation
The rebar plugin grpcbox_plugin always re-generates modules with a
timestamp, which makes the stamping script to always result in a
new stamp after each build.

Issue has been sent
https://github.com/tsloughter/grpcbox_plugin/issues/12
2020-11-26 21:13:30 +01:00
ayodele.akingbule 4eef9f691e refactor(metrics): Add short, medium and long windowsize and expose stats 2020-11-12 12:43:31 +01:00
Zaiming Shi abb74056bd refactor(metrics): Use modified moving average for topic metrics speed 2020-11-12 12:40:36 +01:00
terry-xiaoyu e586119752 fix(project): point the hrl files to emqx_lib 2020-10-31 12:34:52 +08:00
terry-xiaoyu 0cd1c57a54 Migrate plugins from tag 4.2.2 2020-10-31 12:10:19 +08:00
terry-xiaoyu 4108662ba1 feature(project): add util app emqx_libs 2020-10-31 12:06:44 +08:00
terry-xiaoyu 7bea9920b5 feature(project): point header to emqx_libs 2020-10-31 11:00:12 +08:00
JianBo He 485bffadd6 refactor(exhook): improve the exhook implementation 2020-10-31 10:24:28 +08:00
JianBo He d1a87d38ba refactor(exproto): improve the exproto implementation 2020-10-31 10:21:53 +08:00
terry-xiaoyu 18d6647b03 feature(project): move test to apps/emqx/test 2020-10-31 10:17:47 +08:00
terry-xiaoyu 496a805aef feature(project): move priv to apps/emqx/priv 2020-10-31 10:15:25 +08:00
terry-xiaoyu d90c0dacb1 feature(project): move hrl files and emqx_logger.erl to apps/emqx_libs 2020-10-31 09:33:50 +08:00
terry-xiaoyu 5a8efd9d20 feature(project): move src to apps/emqx/src 2020-10-31 09:19:28 +08:00
Feng Lee 8702ab838c 0.9 project structure 2015-06-22 16:18:33 +08:00
Feng Lee 986bf5d911 0.9.0 project structure 2015-06-22 16:03:05 +08:00
Feng f37de3a4a7 willmsg 2015-06-17 13:30:34 +08:00
Feng Lee 02c773bb3f drop 2015-06-17 11:32:12 +08:00
Feng Lee 38e0ba08d2 session, finally count down 2015-06-17 01:25:08 +08:00
Feng Lee 08a64ee97b session 2015-06-16 02:41:03 +08:00
Feng Lee 470ac34a6d merge emqtt to emqttd app 2015-06-15 22:28:34 +08:00
Feng Lee d255a98c09 0.9 2015-06-15 19:55:59 +08:00
Feng Lee c487348c2a merge master, send willmsg when normal terminate 2015-06-15 00:08:27 +08:00
Feng Lee afa0c1819b fix issue #175 2015-06-14 23:56:19 +08:00
Feng Lee 7bfc673c28 publish willmsg when normal exit 2015-06-14 23:51:07 +08:00
Feng Lee a0f90b3ac6 upgrade session 2015-06-14 19:24:03 +08:00
Feng Lee 985fbde26f fix issue #174 - add 'from' field to mqtt_message record 2015-06-14 08:24:17 +08:00
Feng a1d778b081 sync 2015-06-14 07:13:08 +08:00
Feng Lee 9c666cef70 merge session 2015-06-13 12:09:08 +08:00
Feng 30ff3b3f4e SESSION_TAB 2015-06-12 22:47:16 +08:00
Feng 5e0bf3d831 sync with imac 2015-06-12 21:59:37 +08:00
Feng Lee c293ccab13 sync 2015-06-12 18:38:26 +08:00
Feng ddf831f361 session 2015-06-12 17:24:08 +08:00
Feng Lee 882fbb83ca out 2015-06-12 10:37:30 +08:00
Feng Lee 04c2772859 seperate session api and process 2015-06-11 23:40:57 +08:00
Feng Lee 517c7eb7b6 session upgrade 2015-06-11 23:34:53 +08:00
Feng 4313ed0cf3 comment 2015-06-11 13:57:00 +08:00
Feng f857f1ec19 new session 2015-06-11 12:15:20 +08:00
Feng f69b6270fb zenmq 2015-06-11 12:08:18 +08:00
Feng 4c906b19ae new session 2015-06-11 12:07:44 +08:00
Feng Lee 53099f2536 0.9.0 2015-06-11 10:23:13 +08:00
Feng Lee 63933d891a Merge branch 'master' into dev 2015-06-11 00:06:01 +08:00
Feng Lee 051b8604e8 g/2, g/3 2015-06-11 00:05:44 +08:00
Feng Lee c4027dfc16 new queue 2015-06-11 00:05:20 +08:00
Feng Lee db2cc7ba0b git 2015-06-11 00:03:03 +08:00
Feng Lee 5559cd7f58 add alarm 2015-06-11 00:01:25 +08:00
Feng 553fb394f3 vsn 'git' 2015-06-09 11:57:44 +08:00
Feng 2954094619 fix issue #53 - client will receive duplicate messages when overlapping subscription 2015-06-09 11:50:53 +08:00
Feng Lee f0583a1c29 0.8.4 2015-06-08 23:34:09 +08:00
Feng Lee 9d5223dd1a contributors 2015-06-08 23:31:20 +08:00
Feng 789e482a30 inflight, queued 2015-06-06 19:04:02 +08:00
Feng 0407d902d6 Merge branch 'master' into dev 2015-06-05 18:35:10 +08:00
Feng Lee b544bdc10b queue:in new message after old one dropped 2015-06-04 23:13:59 +08:00
Feng Lee 7bbd7bb524 fix doc 2015-06-04 21:18:44 +08:00
Feng Lee ead7b23330 0.8.3 2015-06-03 23:50:31 +08:00
Feng Lee 053ddf6113 fix issue #155 2015-06-03 23:50:02 +08:00
Feng Lee ebad80d690 Merge branch 'master' into dev 2015-06-02 12:56:13 +08:00
Feng Lee 5a75e59dd1 fix mysql auth error 2015-06-02 12:52:40 +08:00
Feng Lee f3dbb7ba54 0.8.2 2015-06-01 17:45:45 +08:00
Feng Lee 391dacee19 Merge branch 'master' of github.com:emqtt/emqtt 2015-06-01 16:42:21 +08:00
Feng Lee 8aa2b8fbed fix the issue that websocket client cannot subscribe '/queue/#' 2015-06-01 16:41:59 +08:00
Feng Lee 5c376b8511 Merge branch 'master' of github.com:emqtt/emqtt 2015-06-01 12:38:11 +08:00
Feng Lee 253717d5a1 ordered_set 2015-05-31 11:40:07 +08:00
Feng Lee 73cb2389d9 add 'sys' flag for mqtt_message 2015-05-31 11:38:26 +08:00
Feng Lee d1ae443650 0.8.1 2015-05-29 16:05:17 +08:00
Feng Lee 5a2dfd2a10 presence and misc fix 2015-05-29 09:54:51 +08:00
Feng Lee 230a348f51 0.9.0 2015-05-29 00:53:47 +08:00
Feng Lee e0bbc72f91 client manager 2015-05-29 00:52:05 +08:00
Feng Lee 0476b6874a Merge branch 'dev' of github.com:emqtt/emqtt into dev 2015-05-28 21:55:48 +08:00
Feng Lee d3616a2701 client presence management 2015-05-28 21:55:20 +08:00
huangdan 2ee3010319 vm ports 2015-05-28 21:04:22 +08:00
Feng Lee 5b36d1b677 Merge branch 'master' into dev 2015-05-28 10:07:18 +08:00
Feng Lee 3ed65b419c fix websocket url 2015-05-28 09:45:37 +08:00
Feng Lee 500b9cb4f8 rm plguins/emqttd_auth_plugins 2015-05-28 01:11:36 +08:00
Feng Lee 750fb939b1 mod presence 2015-05-27 15:32:04 +08:00
Feng Lee 954d46cab3 timestamp/0 2015-05-27 13:14:26 +08:00
Feng Lee aa3f882edf protect from empty clientid 2015-05-26 15:39:02 +08:00
Feng Lee b524cf7806 fix issue #138 2015-05-26 14:50:45 +08:00
Feng Lee 07b9cfa722 shutdown... 2015-05-26 13:21:55 +08:00
Feng Lee 5b16368408 Merge branch 'dev-hd' into dev 2015-05-25 11:41:26 +08:00
Feng Lee 73dbc98068 rewrite 2015-05-25 11:16:06 +08:00
huangdan 379426fa82 Merge branch 'dev' into dev-hd 2015-05-25 10:40:20 +08:00
Feng Lee 46545be9d0 rewrite 2015-05-24 21:54:57 +08:00
Feng Lee c2d4a60dec is_mod_enabled 2015-05-24 21:54:36 +08:00
Feng Lee d19805b68c mod rewrite 2015-05-24 18:33:53 +08:00
Feng Lee 74024acd01 broker hooks 2015-05-24 15:28:56 +08:00
Feng Lee 01bfb830f5 forced subscriptions 2015-05-23 00:20:58 +08:00
Feng Lee f75c807aaf fix pool, table 2015-05-22 18:39:35 +08:00
huangdan bd0c49329b access test 2015-05-20 12:48:34 +08:00
huangdan e674d00330 access get_env 2015-05-20 10:59:57 +08:00
huangdan 54d29160f6 access_control test 2015-05-20 10:43:34 +08:00
Feng Lee e911025811 emqttd_sm_sup 2015-05-19 00:14:20 +08:00
Feng Lee aa703dea36 id 2015-05-19 00:14:10 +08:00
Feng Lee eea6d220d5 0.8.0 2015-05-06 11:59:05 +08:00
Feng Lee 1a883faef2 trace to print payload 2015-05-06 10:23:06 +08:00
Feng Lee dd053a4336 Merge branch 'issue#111' into dev 2015-05-06 02:13:53 +08:00
Feng Lee 955d9c4ef8 fixe issue #111 - forced subscriptions 2015-05-06 01:58:17 +08:00
Feng Lee 0dd046840d add feed_var/3, join/1 2015-05-06 01:00:07 +08:00
Feng Lee 201b7c414a queue support... 2015-05-05 16:41:45 +08:00
Feng Lee 38051426fa user 2015-05-05 12:15:06 +08:00
Feng Lee aae3258beb 0.7.1 2015-05-04 23:31:39 +08:00
Feng Lee 71751960aa fix errors found by dialyzer 2015-05-04 23:27:41 +08:00
Feng Lee a7344248e4 fix issue #121, unload plugins, stop/start gproc app when clustering... 2015-05-04 20:05:16 +08:00
Feng Lee 14421dae5b prep_stop to close listeners 2015-05-04 20:02:51 +08:00
Feng Lee f0b544369b fix issue #123 2015-05-04 19:58:54 +08:00
Feng Lee ac3a17e0e7 env 2015-05-02 00:04:58 +08:00
Feng Lee 2d600711c9 add env/1, merge_sockopts 2015-05-02 00:01:36 +08:00
Feng Lee 27f0b43e90 fix edoc 2015-04-30 12:37:56 +08:00
Feng Lee 914fa668b7 fix issues #118 - protect from empty sub/unsub topic list 2015-04-29 17:11:42 +08:00
Feng Lee 5a43afd07f start_tick, stop_tick 2015-04-29 16:23:26 +08:00
Feng Lee 69611b234d websocket support 2015-04-29 02:19:46 +08:00
Feng Lee 46a273b161 websocket support 2015-04-29 00:43:59 +08:00
Feng Lee 5afe4a62b4 sync with air 2015-04-28 12:25:11 +08:00
Feng Lee 1b96f93ab7 websocket test 2015-04-28 00:14:21 +08:00
Feng Lee 9343a7c419 websocket 2015-04-27 22:37:00 +08:00
Feng Lee 153f8c2dba rm tick 2015-04-27 21:13:29 +08:00
Feng Lee 547f192cae fix stats bug 2015-04-27 12:39:43 +08:00
Feng Lee d99dac81a4 start stats before broker 2015-04-27 12:12:49 +08:00
Feng Lee b4298f2b05 fix options, stats 2015-04-27 12:02:44 +08:00
Feng Lee e88875d2af tick 2015-04-27 10:03:46 +08:00
Feng Lee eb84783d4a sync with imac 2015-04-27 09:14:04 +08:00
Feng Lee 7e63e179da stats 2015-04-25 23:57:38 +08:00
Feng Lee ada53f8b68 merge master 2015-04-25 23:26:56 +08:00
Feng Lee 9f59d86b23 add emqttd_stats 2015-04-25 23:04:12 +08:00
Feng Lee e86f9ac6aa fix duplicated session 2015-04-24 00:55:56 +08:00
Feng Lee 77a26ded12 lookup_session 2015-04-23 23:36:31 +08:00
Feng Lee 70a20591bf 0.6.2 2015-04-23 23:23:08 +08:00
Feng Lee f1632ef2df fix issues #54 2015-04-23 23:20:19 +08:00
Feng Lee cec8ab6b4a rm emqttd_plugin_manager, emqttd.erl to support plugins management 2015-04-23 00:49:53 +08:00
Feng Lee bb2940cfb6 simple plugin mechanism 2015-04-22 16:57:47 +08:00
Feng Lee 504fe99570 code review 2015-04-22 01:31:42 +08:00
Feng Lee f7d44f88f1 close listeners 2015-04-22 00:14:52 +08:00
Feng Lee a9e4414d3c fix issues#93, support trace. 2015-04-21 18:10:02 +08:00
Feng Lee 6907d4feed misc fix 2015-04-21 14:38:18 +08:00
Ery Lee aab6dcf8d1 fix issues#101 - access_control for PUBLISH packet should be optimized 2015-04-21 12:14:27 +08:00
Ery Lee c4c0be44f3 align 2015-04-20 04:47:56 +08:00
Ery Lee fb8833bb86 TAB 2015-04-20 04:31:52 +08:00
Ery Lee eff6bed994 disc copies 2015-04-20 04:31:19 +08:00
Ery Lee 50e033c71d TAB 2015-04-20 04:29:56 +08:00
Ery Lee 02614e8ae4 fix issue#95 - Topic filters in ACL rule should support 'eq' tag 2015-04-20 04:26:01 +08:00
Ery Lee cf0068c2b3 ignore_lib_apps(Apps) 2015-04-20 04:23:54 +08:00
Ery Lee 229bcb6873 retain message when publish 2015-04-20 03:26:09 +08:00
Ery Lee ab84b6ff09 integrate gproc 2015-04-19 19:35:09 +08:00
Feng Lee fd8024821b gproc pool 2015-04-19 12:49:13 +08:00
Ery Lee 8694a825d3 route 2015-04-18 18:36:57 +08:00
Ery Lee 189a16d55e Merge branch 'dev' of github.com:emqtt/emqtt into dev 2015-04-17 01:47:37 +08:00
Ery Lee 843a0be61c comment log 2015-04-17 01:47:24 +08:00
Feng Lee 7956b6d309 acl_mod behaviour 2015-04-17 01:08:32 +08:00
Feng Lee 4bda2c5a43 fix issue #85 2015-04-17 00:48:57 +08:00
Feng Lee 94dd3b042d fix check_acl 2015-04-16 23:51:37 +08:00
Feng Lee 2ed2426a33 access_control 2015-04-16 23:24:07 +08:00
Feng Lee ec48b186c6 access_control to replace acl, auth 2015-04-16 23:08:32 +08:00
Feng Lee f21da05992 Merge branch 'dev' of github.com:emqtt/emqtt into dev 2015-04-16 19:44:57 +08:00
Feng Lee 67c5b08064 misc 2015-04-16 19:44:48 +08:00
Ery Lee 889675e710 acl, auth 2015-04-16 15:50:23 +08:00
Feng Lee 50f2162968 login 2015-04-16 11:43:59 +08:00
Feng Lee 6fedab1e12 fix emqttd_parser, emqttd_serialiser 2015-04-16 11:16:45 +08:00
Feng Lee 684c562cc7 emqttd_utils 2015-04-16 11:07:10 +08:00
Ery Lee a899dada12 msg store 2015-04-16 09:29:53 +08:00
Feng Lee b7a2b66db0 route with clientid 2015-04-15 22:20:19 +08:00
Feng Lee 2d05d1044a mqtt_clientid() 2015-04-15 21:17:25 +08:00
Feng Lee 4fe72445fd route with From 2015-04-15 21:15:09 +08:00
Ery Lee 95652c77d0 trace 2015-04-15 20:47:28 +08:00
Ery Lee 9325c31be6 dump to format 2015-04-15 20:27:46 +08:00
Ery Lee d50507475a emqtt/include/emqtt.hrl 2015-04-15 17:25:34 +08:00
Ery Lee 99633fb815 emqtt.hrl 2015-04-15 17:21:02 +08:00
Ery Lee 8c28bbcc7a refactor records 2015-04-15 12:37:44 +08:00
Feng Lee c54fb8c0ba emqtt app 2015-04-15 01:12:06 +08:00
Ery Lee 2ce7683da0 fix tests 2015-04-14 15:53:44 +08:00
Ery Lee 47f99c5cca fix pubsub 2015-04-14 15:35:41 +08:00
Ery Lee d311a058cc rewrite pubsub 2015-04-14 13:31:25 +08:00
Ery Lee e47e3c1fa8 topic, subscriber 2015-04-13 22:57:09 +08:00
Ery Lee 9b6cb812df rm emqttd_topic.hrl 2015-04-13 21:52:12 +08:00
Ery Lee 6c9fc41c3b rewrite emqttd_pubsub 2015-04-13 21:46:47 +08:00
Ery Lee f2b0449117 upstats 2015-04-13 01:47:04 +08:00
Ery Lee 5d4704acc2 monitor -> sysmon 2015-04-12 23:23:53 +08:00
Ery Lee de7ffc6bca will handle cluster later 2015-04-12 22:55:59 +08:00
Ery Lee 761a3b2a2c redesign retained message store and deliver 2015-04-12 22:52:29 +08:00
Ery Lee 4fb90d1e19 cluster 2015-04-12 21:04:17 +08:00
Ery Lee 16bff40b72 cluster, and fix broker stats 2015-04-12 20:36:07 +08:00
Ery Lee 37fcb85bd4 single bottleneck? 2015-04-11 21:11:32 +08:00
Ery Lee cb6967cd46 TAB -> TABLE 2015-04-10 20:26:40 +08:00
Ery Lee 1a81a4cc68 read_concurrency 2015-04-10 20:24:26 +08:00
Ery Lee c0a42b4288 copy topic_subscriber 2015-04-09 11:40:05 +08:00
Ery Lee 7a979e2c57 cluster 2015-04-08 19:40:22 +08:00
Ery Lee 03806557ef retained messages 2015-04-08 16:02:55 +08:00
Ery Lee 826ca7afca integrate with acl 2015-04-08 02:36:16 +08:00
Feng Lee fa24100514 redesign acl 2015-04-08 00:45:46 +08:00
Ery Lee 8ee3433315 syn with imac 2015-04-07 23:05:27 +08:00
Ery Lee 33be1a87e6 fix issue #75 2015-04-07 17:19:51 +08:00
Ery Lee 174226c0b0 authentication with clientid 2015-04-07 17:12:12 +08:00
Feng Lee 920547b9c5 fix authmod 2015-04-07 13:39:41 +08:00
Feng Lee c864944051 auth 2015-04-07 13:33:05 +08:00
Ery Lee 925b45bb47 auth modules 2015-04-06 22:50:19 +08:00
Ery Lee c49ac06322 acl tests 2015-04-06 14:11:33 +08:00
Ery Lee 088aa5c804 start acl 2015-04-06 12:00:26 +08:00
Ery Lee 18f18fc1a1 acl 2015-04-06 11:52:35 +08:00
Feng Lee 1148451a46 sync with air 2015-04-06 10:15:54 +08:00
Ery Lee 139a58112e tmp 2015-04-06 08:56:27 +08:00
Ery Lee e742d73f70 support acl mods 2015-04-05 23:17:46 +08:00
Ery Lee e4e33c2d5d acl... 2015-03-31 21:33:19 +08:00
Ery Lee 26e296a8f5 {matched, AllowDeny} 2015-03-31 10:40:28 +08:00
Ery Lee d9e60faa24 fix ipaddr match 2015-03-31 10:22:27 +08:00
Ery Lee a791d31490 access test 2015-03-28 00:01:36 +08:00
Ery Lee cd24af6768 acl 2015-03-27 21:05:30 +08:00
Ery Lee e6db7c7854 add spec 2015-03-27 14:30:07 +08:00
Ery Lee db161a2025 access rule 2015-03-27 01:15:25 +08:00
Ery Lee 1428223a2b trace 2015-03-25 23:23:25 +08:00
Ery Lee 5df03ba938 access test 2015-03-25 23:03:03 +08:00
Ery Lee 6aa724ef31 acl 2015-03-25 22:46:47 +08:00
Feng Lee de87edac83 sync 2015-03-25 00:45:04 +08:00
Feng Lee ed69b7c5e4 acl 2015-03-24 23:34:35 +08:00
Ery Lee 3c0c394621 acl doc 2015-03-24 20:46:14 +08:00
Ery Lee 2a9653f8a8 emqttd_ctl vm 2015-03-23 21:35:16 +08:00
Ery Lee d0eb5cddb4 gen_server 2015-03-23 20:57:31 +08:00
Ery Lee a864fda201 mqtt_user with clientid, peername 2015-03-23 19:43:29 +08:00
Feng Lee 40b07c5e4c 0.5.4 2015-03-23 01:42:53 +08:00
Feng Lee 3a7103a728 control commands 2015-03-23 00:06:31 +08:00
Feng Lee 18a5da6691 0.5.3 2015-03-22 23:06:31 +08:00
Feng Lee 21d456fd1f rewrite pubsub 2015-03-22 22:35:50 +08:00
Feng Lee a72fccf28d rewrite 2015-03-22 21:13:40 +08:00
Ery Lee 3b84e5c982 todo 2015-03-22 18:06:40 +08:00
Ery Lee 7a9c30c2d1 infinity 2015-03-20 14:44:07 +08:00
feng 9c2640c8e4 log error -> warning 2015-03-19 23:00:31 +08:00
Ery Lee 87e94f89c8 fix issue#72 2015-03-19 13:15:27 +08:00
Ery Lee 98a69089c5 'acceptor_pool' option to 'acceptors' 2015-03-13 20:18:01 +08:00
Ery Lee 25de5ee94d plugin 2015-03-13 11:52:50 +08:00
Feng Lee 7f12562871 fix issue #67 2015-03-12 23:32:55 +08:00
Ery Lee 557c341106 lager:info -> lager:debug 2015-03-12 21:35:35 +08:00
Ery Lee 77a0e9a85b add # match cases 2015-03-12 21:30:53 +08:00
Ery Lee 399d9e08dc emqtt -> emqttd 2015-03-12 21:16:20 +08:00
Ery Lee 43e1b7e966 support to configure max packet size, fix issue#57 2015-03-12 15:53:52 +08:00
Ery Lee 92d91bd3f2 acl 2015-03-12 12:43:18 +08:00
Ery Lee 31c8ea3b73 add broker, bridges, listeners commands. fix issue #63 2015-03-12 12:17:13 +08:00
Ery Lee c52857f398 add broker, bridges, listeners commands 2015-03-12 12:16:37 +08:00
Ery Lee c5a72bd1fb event manager 2015-03-12 01:13:06 +08:00
Ery Lee bcd354f77d event manager 2015-03-12 00:38:56 +08:00
Ery Lee e61d8b5595 bridge options... 2015-03-11 13:59:50 +08:00
Feng Lee b466b8778b pub_interval = 0 2015-03-11 00:15:27 +08:00
Feng Lee d315b5e22a don't wait for mqtt_user 2015-03-10 22:56:06 +08:00
Ery Lee aca536cd8a rename project name from 'emqtt' to 'emqttd' 2015-03-10 20:09:13 +08:00
Feng Lee 665e7cb26d 0.4.0 2015-03-10 00:21:01 +08:00
Feng Lee 81494e0aa0 format 2015-03-09 23:02:36 +08:00
Ery Lee 9a05181844 retained messages statistics 2015-03-09 16:53:35 +08:00
Ery Lee a5573d0c50 messages statistics 2015-03-09 16:41:39 +08:00
Ery Lee f2293c118a ets:new first 2015-03-09 14:07:54 +08:00
Ery Lee a8a7fd0299 TABLE -> METRIC_TAB 2015-03-09 14:05:40 +08:00
Ery Lee e2c1eda808 client -> clients 2015-03-09 14:05:02 +08:00
Ery Lee 9162e57707 add sessions Topics 2015-03-09 13:37:22 +08:00
Ery Lee 778c34f11d client, session, topics, subscribers statatistics 2015-03-09 13:36:00 +08:00
Ery Lee b26f6f1b1d random tick 2015-03-08 19:19:32 +08:00
Ery Lee 00f39607f1 format 2015-03-08 18:15:30 +08:00
Ery Lee 292b178678 serialise tests 2015-03-08 17:37:04 +08:00
Ery Lee 5e9d2886ff Merge branch 'master' into dev 2015-03-08 17:19:02 +08:00
Ery Lee 3581c149bf Merge branch 'master' of github.com:emqtt/emqtt 2015-03-08 17:18:23 +08:00
Ery Lee 2972b1ee52 fix serialise unsuback 2015-03-08 17:17:57 +08:00
Ery Lee 2aaf5741ca fix all() 2015-03-08 17:06:31 +08:00
Ery Lee a04d127d01 emqtt_pubsub:stats() 2015-03-08 15:39:20 +08:00
Ery Lee ca19a4e9e8 fix systops 2015-03-08 15:34:27 +08:00
Ery Lee dc8b7f032e clients/total, clients/max 2015-03-08 15:34:02 +08:00
Ery Lee 6f67127d77 systopics 2015-03-08 15:04:38 +08:00
Feng Lee c7c7b597c5 getstats 2015-03-08 13:38:59 +08:00
Feng Lee 1fc9eb287d packets stats 2015-03-08 13:22:47 +08:00
Feng Lee 8f81048302 list_to_binary 2015-03-08 12:35:30 +08:00
Feng Lee cff100f706 system topics 2015-03-08 12:23:44 +08:00
Feng Lee e00288f9ce fix issue #60 2015-03-07 22:50:29 +08:00
Feng Lee db39ea7745 metrics, broker test 2015-03-07 22:47:06 +08:00
Ery Lee 82772e4e38 broker metrics 2015-03-07 21:44:17 +08:00
Ery Lee 818d4741a6 broker, metrics 2015-03-07 01:32:21 +08:00
Ery Lee a53cc60573 systop 2015-03-07 01:17:52 +08:00
Feng Lee 7c49abf1db Merge branch 'dev' of github.com:emqtt/emqtt into dev 2015-03-06 23:48:53 +08:00
Feng Lee b842ad69bf Topics 2015-03-06 23:48:22 +08:00
Ery Lee dcda44cff6 add 2015-03-06 21:45:36 +08:00
Ery Lee cc86c95951 fix issue #58, add emqtt_opts:merge/2 2015-03-05 14:43:32 +08:00
Ery Lee b11026788a merge emqttc packet header 2015-03-05 14:42:50 +08:00
Ery Lee c6668c6dc9 comment 2015-03-05 12:09:29 +08:00
Ery Lee e8133366e1 fix format 2015-03-05 02:56:50 +08:00
Feng Lee fb6e3dc066 new -> init 2015-03-05 02:26:22 +08:00
Feng Lee ebd056f60b merge emqttc code 2015-03-05 02:09:32 +08:00
Feng Lee e80a78b66e merge emqttc parser 2015-03-05 01:38:47 +08:00
Ery Lee 9512b18c53 merge emqttc 2015-03-04 22:11:17 +08:00
Ery Lee b84b3e5614 merge emqttc parser, serialiser 2015-03-04 16:49:17 +08:00
Feng Lee bb2e8c9653 fix conflict 2015-03-02 21:26:59 +08:00
Feng Lee a7f4563050 misc fix 2015-03-02 21:25:58 +08:00
Ery Lee 4865afcda9 fix issue #55 2015-03-02 12:01:19 +08:00
Ery Lee cc8aeb6a1f fix sslsocket 2015-03-02 01:57:54 +08:00
Ery Lee 2d2aa2f79a upgrade esockd, mochiweb 2015-03-02 01:40:22 +08:00
Feng Lee 89553dff69 Merge branch 'dev' of github.com:emqtt/emqtt into dev 2015-01-30 20:49:37 +08:00
Feng Lee 601f21182d fix issue #52 2015-01-30 20:48:23 +08:00
Ery Lee 3c44aeecb8 topic type: dynamic or static 2015-01-20 15:48:26 +08:00
Ery Lee 1e93f5f513 bridge 2015-01-20 15:42:05 +08:00
Ery Lee 41471da2e8 0.3.1 fix topic match 2015-01-19 22:08:53 +08:00
Ery Lee 537e18b376 rm oldtopic 2015-01-19 21:51:36 +08:00
Ery Lee c83d6d0e01 topic tests 2015-01-19 21:27:47 +08:00
Ery Lee 04c87c06cc rewrite topic functions 2015-01-19 17:36:54 +08:00
Ery Lee 3ae463960f ok\n 2015-01-18 16:34:01 +08:00
Ery Lee 9afa7c9787 fix route dump 2015-01-18 16:26:44 +08:00
Ery Lee 0b09d8a695 fix bool, and route 2015-01-18 16:22:46 +08:00
Ery Lee e7a4be9669 fix get_value 2015-01-18 16:17:41 +08:00
Ery Lee f637aa45c8 fix issue#44: HTTP API should add Qos parameter 2015-01-18 16:11:53 +08:00
Feng Lee f3057c08e4 0.3.0 changes 2015-01-18 12:57:33 +08:00
Feng Lee 52abcef341 fix retained 2015-01-18 12:12:52 +08:00
Feng Lee f16d56c8b9 retained messages 2015-01-18 11:36:21 +08:00
Ery Lee c803ce0d7a fix function clause 2015-01-17 23:24:53 +08:00
Ery Lee fdfdf494f5 match retained topics 2015-01-17 23:21:54 +08:00
Ery Lee 0ae4a0f1af supervisor_spec 2015-01-17 23:08:59 +08:00
Ery Lee 2f5d7634d2 add gen_event 2015-01-17 22:48:44 +08:00
Ery Lee eedfd41a45 retained messages 2015-01-16 15:48:33 +08:00
Ery Lee 953df5f9f7 retained messages 2015-01-16 15:45:15 +08:00
Ery Lee b68a325301 retained 2015-01-16 12:36:27 +08:00
Ery Lee 75d7e65672 set_flag, unset_flag 2015-01-16 12:35:12 +08:00
Ery Lee 760d6954b3 3.3.1.1 dup: reset dup when route message 2015-01-16 01:54:33 +08:00
Ery Lee e31068787b fix issue#42: Redelivery on reconnect 2015-01-16 01:13:02 +08:00
Ery Lee 46d1749120 fix emqtt_messsage 2015-01-16 00:38:30 +08:00