From 4bafcfa7a2264c6bda7d61e88ad57ac721e389f5 Mon Sep 17 00:00:00 2001 From: Feng Lee Date: Tue, 8 Nov 2016 13:49:59 +0800 Subject: [PATCH 1/4] open https port: 8084 --- etc/emq.conf | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/etc/emq.conf b/etc/emq.conf index e4434283a..eda64ec2b 100644 --- a/etc/emq.conf +++ b/etc/emq.conf @@ -11,6 +11,10 @@ node.cookie = emq_dist_cookie ## SMP support: enable, auto, disable node.smp = auto +## TODO: -heart Heartbeat monitoring of an Erlang runtime system +## Values: on | off +## node.heartbeat = off + ## Enable kernel poll node.kernel_poll = on @@ -219,12 +223,12 @@ mqtt.listener.http.acceptors = 4 mqtt.listener.http.max_clients = 64 ## HTTP(SSL) Listener -## mqtt.listener.https = 8084 -## mqtt.listener.https.acceptors = 4 -## mqtt.listener.https.max_clients = 64 -## mqtt.listener.https.handshake_timeout = 15 -## mqtt.listener.https.certfile = etc/certs/cert.pem -## mqtt.listener.https.keyfile = etc/certs/key.pem +mqtt.listener.https = 8084 +mqtt.listener.https.acceptors = 4 +mqtt.listener.https.max_clients = 64 +mqtt.listener.https.handshake_timeout = 15 +mqtt.listener.https.certfile = etc/certs/cert.pem +mqtt.listener.https.keyfile = etc/certs/key.pem ## mqtt.listener.https.cacertfile = etc/certs/cacert.pem ## mqtt.listener.https.verify = verify_peer ## mqtt.listener.https.fail_if_no_peer_cert = true From 39837d3a9391e93cc091fe69d609a23b4059bcd5 Mon Sep 17 00:00:00 2001 From: Feng Lee Date: Tue, 8 Nov 2016 17:35:29 +0800 Subject: [PATCH 2/4] fix queue.max_length --- priv/emq.schema | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/priv/emq.schema b/priv/emq.schema index 2c73482ed..6af3e306d 100644 --- a/priv/emq.schema +++ b/priv/emq.schema @@ -338,7 +338,7 @@ end}. %% @doc Max queue length. Enqueued messages when persistent client disconnected, or inflight window is full. {mapping, "mqtt.queue.max_length", "emqttd.queue", [ {default, infinity}, - {datatype, [atom, integer]} + {datatype, [integer, atom]} ]}. %% @doc Low-water mark of queued messages From a908c0b9d8a384bf5461c655bfcd21fbff1d16da Mon Sep 17 00:00:00 2001 From: Feng Lee Date: Wed, 9 Nov 2016 09:28:39 +0800 Subject: [PATCH 3/4] mqtt.queue.max_length: [integer, {atom, infinity}] --- priv/emq.schema | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/priv/emq.schema b/priv/emq.schema index 6af3e306d..71306e6e2 100644 --- a/priv/emq.schema +++ b/priv/emq.schema @@ -22,6 +22,12 @@ hidden ]}. +%% @doc http://erlang.org/doc/man/heart.html +{mapping, "node.heartbeat", "vm_args.-heart", [ + {datatype, {enum, [enable, auto, disable]}}, + hidden +]}. + %% @doc Enable Kernel Poll {mapping, "node.kernel_poll", "vm_args.+K", [ {default, on}, @@ -338,7 +344,7 @@ end}. %% @doc Max queue length. Enqueued messages when persistent client disconnected, or inflight window is full. {mapping, "mqtt.queue.max_length", "emqttd.queue", [ {default, infinity}, - {datatype, [integer, atom]} + {datatype, [integer, {atom, infinity}]} ]}. %% @doc Low-water mark of queued messages From 06f5c8e2b7ca1fdeb472de53de91dd153c959a7c Mon Sep 17 00:00:00 2001 From: Feng Lee Date: Wed, 9 Nov 2016 09:53:29 +0800 Subject: [PATCH 4/4] Fix #754 - "-heart" option for EMQ 2.0 --- etc/emq.conf | 7 ++++--- priv/emq.schema | 9 ++++++++- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/etc/emq.conf b/etc/emq.conf index eda64ec2b..fd615c227 100644 --- a/etc/emq.conf +++ b/etc/emq.conf @@ -11,9 +11,10 @@ node.cookie = emq_dist_cookie ## SMP support: enable, auto, disable node.smp = auto -## TODO: -heart Heartbeat monitoring of an Erlang runtime system -## Values: on | off -## node.heartbeat = off +## vm.args: -heart +## Heartbeat monitoring of an Erlang runtime system +## Value should be 'on' or comment the line +## node.heartbeat = on ## Enable kernel poll node.kernel_poll = on diff --git a/priv/emq.schema b/priv/emq.schema index 71306e6e2..12113f14b 100644 --- a/priv/emq.schema +++ b/priv/emq.schema @@ -24,10 +24,17 @@ %% @doc http://erlang.org/doc/man/heart.html {mapping, "node.heartbeat", "vm_args.-heart", [ - {datatype, {enum, [enable, auto, disable]}}, + {datatype, flag}, hidden ]}. +{translation, "vm_args.-heart", fun(Conf) -> + case cuttlefish:conf_get("node.heartbeat", Conf) of + true -> ""; + false -> cuttlefish:invalid("should be 'on' or comment the line!") + end +end}. + %% @doc Enable Kernel Poll {mapping, "node.kernel_poll", "vm_args.+K", [ {default, on},