Skip to content

Commit

Permalink
Merge branch 'live' into stable
Browse files Browse the repository at this point in the history
  • Loading branch information
michaelklishin committed Nov 2, 2017
2 parents a984524 + 89e4763 commit 3cd07b1
Show file tree
Hide file tree
Showing 3 changed files with 92 additions and 0 deletions.
11 changes: 11 additions & 0 deletions site/confirms.xml
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,17 @@ limitations under the License.
a message was successfully processed while their negative counterpart
suggests that a delivery wasn't processed but still should be deleted.
</p>

<p>
In automatic acknowledgement mode, a message is considered
to be successfully delivered immediately after it is
sent. This mode trades off higher throughput (as long as the
consumers can keep up) for reduced safety of delivery and
consumer processing. This mode is often referred to as
"fire-and-forget". Unlike with manual acknowledgement
model, if consumers's TCP connection or channel is closed
before successful delivery, it will be lost.
</p>
</doc:subsection>

<doc:subsection name="consumer-acks-multiple-parameter">
Expand Down
76 changes: 76 additions & 0 deletions site/networking.xml
Original file line number Diff line number Diff line change
Expand Up @@ -408,8 +408,13 @@ RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS="+A 128"
in our <a href="/install-debian.html#kernel-resource-limits">Debian</a> and <a href="/install-rpm.html#kernel-resource-limits">RPM</a>
installation guides provides. Linux kernel limit management is covered by many resources on the Web,
including the <a href="https://ro-che.info/articles/2017-03-26-increase-open-files-limit">open file handle limit</a>.
</p>
<p>
MacOS uses a <a href="https://superuser.com/questions/433746/is-there-a-fix-for-the-too-many-open-files-in-system-error-on-os-x-10-7-1">similar system</a>.
</p>
<p>
On Windows, the limit for the Erlang runtime is controlled using the <code>ERL_MAX_PORTS</code> environment variable.
</p>

<p>
When optimising for the number of concurrent connections,
Expand Down Expand Up @@ -903,5 +908,76 @@ net.ipv4.tcp_keepalive_probes=4
</p>
</doc:subsection>
</doc:section>

<doc:section name="logging">
<doc:heading>Connection Event Logging</doc:heading>

<p>
Successful TCP connections that send at least 1 byte of data will be logged. Connections
that do not send any data, such as health checks of certain load balancer products, will
not be logged.

Here's an example:

<pre class="sourcecode ini">
=INFO REPORT==== 30-Oct-2017::21:40:32 ===
accepting AMQP connection &lt;0.24990.164&gt; (127.0.0.1:57919 -> 127.0.0.1:5672)
</pre>

The entry includes client IP address and port (<code>127.0.0.1:57919</code>) as well as the target
IP address and port of the server (<code>127.0.0.1:5672</code>). This information can be useful
when troubleshooting client connections.
</p>

<p>
Once a connection successfully authenticates and is granted access to a <a href="">virtual host</a>,
that is also logged:

<pre class="sourcecode ini">
=INFO REPORT==== 30-Oct-2017::21:40:32 ===
connection &lt;0.24990.164&gt; (127.0.0.1:57919 -> 127.0.0.1:5672): user 'guest' authenticated and granted access to vhost '/'
</pre>
</p>

<p>
The examples above include two values that can be used as connection identifiers
in various scenarios: a connection PID (<code>&lt;0.24990.164&gt;</code>) and connection name (<code>127.0.0.1:57919 -> 127.0.0.1:5672</code>). The former is used
by <a href="/man/rabbitmqctl.1.man.html">rabbitmqctl</a> and the latter is used
by the <a href="/management.html">HTTP API</a>.
</p>

<p>
A connection can be closed cleanly or abnormally. In the
former case the client closes AMQP 0-9-1 (or 1.0, or STOMP, or
MQTT) connection gracefully using a dedicated library function
(method). In the latter case the client closes TCP connection
or TCP connection is lost. Both cases will be logged by the broker.
</p>

<p>
Below is an example entry for a successfully closed connection:

<pre class="sourcecode ini">
=INFO REPORT==== 30-Oct-2017::21:40:32 ===
closing AMQP connection &lt;0.24990.164&gt; (127.0.0.1:57919 -> 127.0.0.1:5672, vhost: '/', user: 'guest')
</pre>
</p>

<p>
Abruptly closed connections will be logged as warnings:

<pre class="sourcecode ini">
=WARNING REPORT==== 1-Nov-2017::16:58:58 ===
closing AMQP connection &lt;0.601.0&gt; (127.0.0.1:60471 -> 127.0.0.1:5672, vhost: '/', user: 'guest'):
client unexpectedly closed TCP connection
</pre>
</p>

<p>
Abruptly closed connections could be harmless (e.g. a short lived program has naturally terminated
and didn't have a chance to close its connection properly) or indicate a genuine issue such as
a failed application process or a proxy that eagerly closes TCP connections it considers to be idle.
</p>
</doc:section>
</body>
</html>
5 changes: 5 additions & 0 deletions site/ssl.xml
Original file line number Diff line number Diff line change
Expand Up @@ -752,6 +752,11 @@ rabbitmqctl eval 'ssl:cipher_suites().'
rabbitmqctl eval 'ssl:cipher_suites(openssl).'
</pre>

<p>
An <a href="https://github.com/erlang/otp/wiki/Cipher-suite-correspondence-table">IANA and Erlang/OTP cipher suite correspondence table</a>
can be used to find corresponding values in both formats.
</p>

<p>
When overriding cipher suites, it is highly recommended
that server-preferred cipher suite ordering is enforced
Expand Down

0 comments on commit 3cd07b1

Please sign in to comment.