http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/f77f92cb/doc/new-book/logging.adoc
----------------------------------------------------------------------
diff --git a/doc/new-book/logging.adoc b/doc/new-book/logging.adoc
deleted file mode 100644
index 32b7e93..0000000
--- a/doc/new-book/logging.adoc
+++ /dev/null
@@ -1,346 +0,0 @@
-////
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License
-////
-
-[id='logging']
-= Logging
-
-Logging enables you to diagnose error and performance issues with {RouterName}.
-
-{RouterName} consists of internal modules that provide important information 
about the router. For each module, you can specify logging levels, the format 
of the log file, and the location to which the logs should be written.
-
-[id='logging-modules-you-can-configure']
-== Logging Modules
-
-{RouterName} logs are broken into different categories called _logging 
modules_. Each module provides important information about a particular aspect 
of {RouterName}.
-
-=== The `DEFAULT` Logging Module
-
-The default module. This module applies defaults to all of the other logging 
modules.
-
-=== The `ROUTER` Logging Module
-
-This module provides information and statistics about the local router. This 
includes how the router connects to other routers in the network, and 
information about the remote destinations that are directly reachable from the 
router (link routes, waypoints, autolinks, and so on).
-
-In this example, on `Router.A`, the `ROUTER` log shows that `Router.B` is the 
next hop. It also shows the cost for `Router.A` to reach the other routers on 
the network:
-
-[options="nowrap"]
-----
-Tue Jun  7 13:28:27 2016 ROUTER (trace) Node Router.C next hop set: Router.B
-Tue Jun  7 13:28:27 2016 ROUTER (trace) Node Router.C valid origins: []
-Tue Jun  7 13:28:27 2016 ROUTER (trace) Node Router.C cost: 2
-Tue Jun  7 13:28:27 2016 ROUTER (trace) Node Router.B valid origins: []
-Tue Jun  7 13:28:27 2016 ROUTER (trace) Node Router.B cost: 1
-----
-
-On `Router.B`, the `ROUTER` log provides more information about valid origins:
-
-[options="nowrap"]
-----
-Tue Jun  7 13:28:25 2016 ROUTER (trace) Node Router.C cost: 1
-Tue Jun  7 13:28:26 2016 ROUTER (trace) Node Router.A created: maskbit=2
-Tue Jun  7 13:28:26 2016 ROUTER (trace) Node Router.A link set: link_id=1
-Tue Jun  7 13:28:26 2016 ROUTER (trace) Node Router.A valid origins: 
['Router.C']
-Tue Jun  7 13:28:26 2016 ROUTER (trace) Node Router.A cost: 1
-Tue Jun  7 13:28:27 2016 ROUTER (trace) Node Router.C valid origins: 
['Router.A']
-----
-
-=== The `ROUTER_CORE` Logging Module
-
-This module provides information about the local router's operations on active 
connections and links. This includes operations related to opened and closed 
connections, messages sent, deliveries, and flow control.
-
-[options="nowrap"]
-----
-Tue Jun  7 13:42:07 2016 ROUTER_CORE (trace) Core action 'link_flow'
-Tue Jun  7 13:42:08 2016 ROUTER_CORE (trace) Core action 'link_deliver'
-Tue Jun  7 13:42:08 2016 ROUTER_CORE (trace) Core action 'send_to'
-Tue Jun  7 13:42:08 2016 ROUTER_CORE (trace) Core action 'link_flow'
-----
-
-=== The `ROUTER_HELLO` Logging Module
-
-This module provides information about the _Hello_ protocol used by interior 
routers to exchange Hello messages, which include information about the 
router's ID and a list of its reachable neighbors (the other routers with which 
this router has bidirectional connectivity).
-
-The logs for this module are helpful for monitoring or resolving issues in the 
network topology, and for determining to which other routers a router is 
connected, and the hop-cost for each of those connections.
-
-In this example, on `Router.A`, the `ROUTER_HELLO` log shows that it is 
connected to `Router.B`, and that `Router.B` is connected to `Router.A` and 
`Router.C`:
-
-[options="nowrap"]
-----
-Tue Jun  7 13:50:21 2016 ROUTER_HELLO (trace) RCVD: HELLO(id=Router.B area=0 
inst=1465307413 seen=['Router.A', 'Router.C']) // <1>
-Tue Jun  7 13:50:21 2016 ROUTER_HELLO (trace) SENT: HELLO(id=Router.A area=0 
inst=1465307416 seen=['Router.B']) // <2>
-Tue Jun  7 13:50:22 2016 ROUTER_HELLO (trace) RCVD: HELLO(id=Router.B area=0 
inst=1465307413 seen=['Router.A', 'Router.C'])
-Tue Jun  7 13:50:22 2016 ROUTER_HELLO (trace) SENT: HELLO(id=Router.A area=0 
inst=1465307416 seen=['Router.B'])
-----
-<1> `Router.A` received a Hello message from `Router.B`, which can see 
`Router.A` and `Router.C`.
-<2> `Router.A` sent a Hello message to `Router.B`, which is the only router it 
can see.
-
-On `Router.B`, the `ROUTER_HELLO` log shows the same router topology from a 
different perspective:
-
-[options="nowrap"]
-----
-Tue Jun  7 13:50:18 2016 ROUTER_HELLO (trace) SENT: HELLO(id=Router.B area=0 
inst=1465307413 seen=['Router.A', 'Router.C']) // <1>
-Tue Jun  7 13:50:18 2016 ROUTER_HELLO (trace) RCVD: HELLO(id=Router.A area=0 
inst=1465307416 seen=['Router.B']) // <2>
-Tue Jun  7 13:50:19 2016 ROUTER_HELLO (trace) RCVD: HELLO(id=Router.C area=0 
inst=1465307411 seen=['Router.B']) // <3>
-----
-<1> `Router.B` sent a Hello message to `Router.A` and `Router.C`.
-<2> `Router.B` received a Hello message from `Router.A`, which can only see 
`Router.B`.
-<3> `Router.B` received a Hello message from `Router.C`, which can only see 
`Router.B`.
-
-=== The `ROUTER_LS` Logging Module 
-
-This module provides information about link-state data between routers, 
including Router Advertisement (RA), Link State Request (LSR), and Link State 
Update (LSU) messages. 
-
-Periodically, each router sends an LSR to the other routers and receives an 
LSU with the requested information. Exchanging the above information, each 
router can compute the next hops in the topology, and the related costs.
-
-This example shows the RA, LSR, and LSU messages sent between three routers:
-
-[options="nowrap"]
-----
-Tue Jun  7 14:10:02 2016 ROUTER_LS (trace) SENT: LSR(id=Router.A area=0) to: 
Router.C //
-Tue Jun  7 14:10:02 2016 ROUTER_LS (trace) SENT: LSR(id=Router.A area=0) to: 
Router.B //
-Tue Jun  7 14:10:02 2016 ROUTER_LS (trace) SENT: RA(id=Router.A area=0 
inst=1465308600 ls_seq=1 mobile_seq=1) // <1>
-Tue Jun  7 14:10:02 2016 ROUTER_LS (trace) RCVD: LSU(id=Router.B area=0 
inst=1465308595 ls_seq=2 ls=LS(id=Router.B area=0 ls_seq=2 peers={'Router.A': 
1L, 'Router.C': 1L})) // <2>
-Tue Jun  7 14:10:02 2016 ROUTER_LS (trace) RCVD: LSR(id=Router.B area=0)
-Tue Jun  7 14:10:02 2016 ROUTER_LS (trace) SENT: LSU(id=Router.A area=0 
inst=1465308600 ls_seq=1 ls=LS(id=Router.A area=0 ls_seq=1 peers={'Router.B': 
1}))
-Tue Jun  7 14:10:02 2016 ROUTER_LS (trace) RCVD: RA(id=Router.C area=0 
inst=1465308592 ls_seq=1 mobile_seq=0)
-Tue Jun  7 14:10:02 2016 ROUTER_LS (trace) SENT: LSR(id=Router.A area=0) to: 
Router.C
-Tue Jun  7 14:10:02 2016 ROUTER_LS (trace) RCVD: LSR(id=Router.C area=0) // <3>
-Tue Jun  7 14:10:02 2016 ROUTER_LS (trace) SENT: LSU(id=Router.A area=0 // 
inst=1465308600 ls_seq=1 ls=LS(id=Router.A area=0 ls_seq=1 peers={'Router.B': 
1}))
-Tue Jun  7 14:10:02 2016 ROUTER_LS (trace) RCVD: LSU(id=Router.C area=0 
inst=1465308592 ls_seq=1 ls=LS(id=Router.C area=0 ls_seq=1 peers={'Router.B': 
1L})) // <4>
-Tue Jun  7 14:10:03 2016 ROUTER_LS (trace) Computed next hops: {'Router.C': 
'Router.B', 'Router.B': 'Router.B'} // <5>
-Tue Jun  7 14:10:03 2016 ROUTER_LS (trace) Computed costs: {'Router.C': 2L, 
'Router.B': 1}
-Tue Jun  7 14:10:03 2016 ROUTER_LS (trace) Computed valid origins: 
{'Router.C': [], 'Router.B': []}
-----
-<1> `Router.A` sent LSR requests and an RA advertisement to the other routers 
on the network.
-<2> `Router.A` received an LSU from `Router.B`, which has two peers: 
`Router.A`, and `Router.C` (with a cost of `1`).
-<3> `Router.A` received an LSR from both `Router.B` and `Router.C`, and  
replied with an LSU.
-<4> `Router.A` received an LSU from `Router.C`, which only has one peer: 
`Router.B` (with a cost of `1`).
-<5> After the LSR and LSU messages are exchanged, `Router.A` computed the 
router topology with the related costs.
-
-=== The `ROUTER_MA` Logging Module
-
-This module provides information about the exchange of mobile address 
information between routers, including Mobile Address Request (MAR) and Mobile 
Address Update (MAU) messages exchanged between routers. You can use this log 
to monitor the state of mobile addresses attached to each router.
-
-This example shows the MAR and MAU messages sent between three routers:
-
-[options="nowrap"]
-----
-Tue Jun  7 14:27:20 2016 ROUTER_MA (trace) SENT: MAU(id=Router.A area=0 
mobile_seq=1 add=['Cmy_queue', 'Dmy_queue', 'M0my_queue_wp'] del=[]) // <1>
-Tue Jun  7 14:27:21 2016 ROUTER_MA (trace) RCVD: MAR(id=Router.C area=0 
have_seq=0) // <2>
-Tue Jun  7 14:27:21 2016 ROUTER_MA (trace) SENT: MAU(id=Router.A area=0 
mobile_seq=1 add=['Cmy_queue', 'Dmy_queue', 'M0my_queue_wp'] del=[])
-Tue Jun  7 14:27:22 2016 ROUTER_MA (trace) RCVD: MAR(id=Router.B area=0 
have_seq=0) // <3>
-Tue Jun  7 14:27:22 2016 ROUTER_MA (trace) SENT: MAU(id=Router.A area=0 
mobile_seq=1 add=['Cmy_queue', 'Dmy_queue', 'M0my_queue_wp'] del=[])
-Tue Jun  7 14:27:39 2016 ROUTER_MA (trace) RCVD: MAU(id=Router.C area=0 
mobile_seq=1 add=['M0my_test'] del=[]) // <4>
-Tue Jun  7 14:27:51 2016 ROUTER_MA (trace) RCVD: MAU(id=Router.C area=0 
mobile_seq=2 add=[] del=['M0my_test']) // <5>
-----
-<1> `Router.A` sent MAU messages to the other routers in the network to notify 
them about the addresses added for `my_queue` and `my_queue_wp`.
-<2> `Router.A` received a MAR message in response from `Router.C`.
-<3> `Router.A` received another MAR message in response from `Router.B`.
-<4> `Router.C` sent a MAU message to notify the other routers that it added 
and address for `my_test`.
-<5> `Router.C` sent another MAU message to notify the other routers that it 
deleted the address for `my_test` (because the receiver is detached).
-
-=== The `MESSAGE` Logging Module
-
-This module provides information about AMQP messages sent and received by the 
router, including information about the address, body, and link. You can use 
this log to find high-level information about messages on a particular router.
-
-In this example, `Router.A` has sent and received some messages related to the 
Hello protocol, and sent and received some other messages on a link for a 
mobile address:
-
-[options="nowrap"]
-----
-Tue Jun  7 14:36:54 2016 MESSAGE (trace) Sending 
Message{to='amqp:/_topo/0/Router.B/qdrouter' 
body='\d1\00\00\00\1b\00\00\00\04\a1\02id\a1\08R'} on link 
qdlink.p9XmBm19uDqx50R
-Tue Jun  7 14:36:54 2016 MESSAGE (trace) Received 
Message{to='amqp:/_topo/0/Router.A/qdrouter' body='\d1\00\00\00\8e\00\00\00
-\a1\06ls_se'} on link qdlink.phMsJOq7YaFsGAG
-Tue Jun  7 14:36:54 2016 MESSAGE (trace) Received Message{ 
body='\d1\00\00\00\10\00\00\00\02\a1\08seque'} on link qdlink.FYHqBX+TtwXZHfV
-Tue Jun  7 14:36:54 2016 MESSAGE (trace) Sending Message{ 
body='\d1\00\00\00\10\00\00\00\02\a1\08seque'} on link qdlink.yU1tnPs5KbMlieM
-Tue Jun  7 14:36:54 2016 MESSAGE (trace) Sending 
Message{to='amqp:/_local/qdhello' 
body='\d1\00\00\00G\00\00\00\08\a1\04seen\d0'} on link qdlink.p9XmBm19uDqx50R
-Tue Jun  7 14:36:54 2016 MESSAGE (trace) Sending 
Message{to='amqp:/_topo/0/Router.C/qdrouter' 
body='\d1\00\00\00\1b\00\00\00\04\a1\02id\a1\08R'} on link 
qdlink.p9XmBm19uDqx50R
-----
-
-=== The `SERVER` Logging Module
-
-This module provides information about how the router is listening for and 
connecting to other containers in the network (such as clients, routers, and 
brokers). This includes the state of AMQP messages sent and received by the 
broker (open, begin, attach, transfer, flow, and so on), and the related 
content of those messages. 
-
-For example, this log shows details about how the router handled a link 
attachment:
-
-[options="nowrap"]
-----
-Tue Jun  7 14:39:52 2016 SERVER (trace) [2]:  <- AMQP
-Tue Jun  7 14:39:52 2016 SERVER (trace) [1]:  <- AMQP
-Tue Jun  7 14:39:52 2016 SERVER (trace) [1]:0 <- @open(16) 
[container-id="Router.B", max-frame-size=16384, channel-max=32767, 
idle-time-out=8000, offered-capabilities=:"ANONYMOUS-RELAY", 
properties={:product="qpid-dispatch-router", :version="0.6.0"}]
-Tue Jun  7 14:39:52 2016 SERVER (trace) [1]:0 -> @begin(17) 
[next-outgoing-id=0, incoming-window=15, outgoing-window=2147483647]
-Tue Jun  7 14:39:52 2016 SERVER (trace) [1]:RAW: 
"\x00\x00\x00\x1e\x02\x00\x00\x00\x00S\x11\xd0\x00\x00\x00\x0e\x00\x00\x00\x04@R\x00R\x0fp\x7f\xff\xff\xff"
-Tue Jun  7 14:39:52 2016 SERVER (trace) [1]:1 -> @begin(17) 
[next-outgoing-id=0, incoming-window=15, outgoing-window=2147483647]
-Tue Jun  7 14:39:52 2016 SERVER (trace) [1]:RAW: 
"\x00\x00\x00\x1e\x02\x00\x00\x01\x00S\x11\xd0\x00\x00\x00\x0e\x00\x00\x00\x04@R\x00R\x0fp\x7f\xff\xff\xff"
-Tue Jun  7 14:39:52 2016 SERVER (trace) [1]:0 -> @attach(18) 
[name="qdlink.uSSeXPSfTHhxo8d", handle=0, role=true, snd-settle-mode=2, 
rcv-settle-mode=0, source=@source(40) [durable=0, expiry-policy=:"link-detach", 
timeout=0, dynamic=false, capabilities=:"qd.router"], target=@target(41) 
[durable=0, expiry-policy=:"link-detach", timeout=0, dynamic=false, 
capabilities=:"qd.router"], initial-delivery-count=0]
-Tue Jun  7 14:39:52 2016 SERVER (trace) [1]:RAW: 
"\x00\x00\x00\x91\x02\x00\x00\x00\x00S\x12\xd0\x00\x00\x00\x81\x00\x00\x00\x0a\xa1\x16qdlink.uSSeXPSfTHhxo8dR\x00AP\x02P\x00\x00S(\xd0\x00\x00\x00'\x00\x00\x00\x0b@R\x00\xa3\x0blink-detachR\x00B@@@@@\xa3\x09qd.router\x00S)\xd0\x00\x00\x00#\x00\x00\x00\x07@R\x00\xa3\x0blink-detachR\x00B@\xa3\x09qd.router@@R\x00"
-----
-
-=== The `AGENT` Logging Module
-
-This module provides information about configuration changes made to the 
router from either editing the router's configuration file or using `qdmanage`.
-
-In this example, on `Router.A`, `address`, `linkRoute`, and `autoLink` 
entities were added to the router's configuration file. When the router was 
started, the `AGENT` module applied these changes, and they are now viewable in 
the log:
-
-[options="nowrap"]
-----
-Tue Jun  7 15:07:32 2016 AGENT (debug) Add entity: 
ConnectorEntity(addr=127.0.0.1, allowRedirect=True, cost=1, host=127.0.0.1, 
identity=connector/127.0.0.1:5672:BROKER, idleTimeoutSeconds=16, 
maxFrameSize=65536, name=BROKER, port=5672, role=route-container, 
stripAnnotations=both, type=org.apache.qpid.dispatch.connector, 
verifyHostname=True)
-Tue Jun  7 15:07:32 2016 AGENT (debug) Add entity: 
RouterConfigAddressEntity(distribution=closest, 
identity=router.config.address/0, name=router.config.address/0, 
prefix=my_address, type=org.apache.qpid.dispatch.router.config.address, 
waypoint=False)
-Tue Jun  7 15:07:32 2016 AGENT (debug) Add entity: 
RouterConfigAddressEntity(distribution=balanced, 
identity=router.config.address/1, name=router.config.address/1, 
prefix=my_queue_wp, type=org.apache.qpid.dispatch.router.config.address, 
waypoint=True)
-Tue Jun  7 15:07:32 2016 AGENT (debug) Add entity: 
RouterConfigLinkrouteEntity(connection=BROKER, direction=in, 
distribution=linkBalanced, identity=router.config.linkRoute/0, 
name=router.config.linkRoute/0, prefix=my_queue, 
type=org.apache.qpid.dispatch.router.config.linkRoute)
-Tue Jun  7 15:07:32 2016 AGENT (debug) Add entity: 
RouterConfigLinkrouteEntity(connection=BROKER, direction=out, 
distribution=linkBalanced, identity=router.config.linkRoute/1, 
name=router.config.linkRoute/1, prefix=my_queue, 
type=org.apache.qpid.dispatch.router.config.linkRoute)
-Tue Jun  7 15:07:32 2016 AGENT (debug) Add entity: 
RouterConfigAutolinkEntity(addr=my_queue_wp, connection=BROKER, direction=in, 
identity=router.config.autoLink/0, name=router.config.autoLink/0, 
type=org.apache.qpid.dispatch.router.config.autoLink)
-Tue Jun  7 15:07:32 2016 AGENT (debug) Add entity: 
RouterConfigAutolinkEntity(addr=my_queue_wp, connection=BROKER, direction=out, 
identity=router.config.autoLink/1, name=router.config.autoLink/1, 
type=org.apache.qpid.dispatch.router.config.autoLink)
-----
-
-=== The `CONTAINER` Logging Module
-
-This module provides information about the nodes related to the router. This 
includes only the AMQP relay node.
-
-[options="nowrap"]
-----
-Tue Jun  7 14:46:18 2016 CONTAINER (trace) Container Initialized
-Tue Jun  7 14:46:18 2016 CONTAINER (trace) Node Type Registered - router
-Tue Jun  7 14:46:18 2016 CONTAINER (trace) Node of type 'router' installed as 
default node
-----
-
-=== The `ERROR` Logging Module
-
-This module provides detailed information about error conditions encountered 
during execution.
-
-In this example, `Router.A` failed to start when an incorrect path was 
specified for the router's configuration file:
-
-[options="nowrap"]
-----
-$ sudo qdrouterd --conf xxx
-Wed Jun 15 09:53:28 2016 ERROR (error) Python: Exception: Cannot load 
configuration file xxx: [Errno 2] No such file or directory: 'xxx'
-Wed Jun 15 09:53:28 2016 ERROR (error) Traceback (most recent call last):
-  File 
"/usr/lib/qpid-dispatch/python/qpid_dispatch_internal/management/config.py", 
line 155, in configure_dispatch
-    config = Config(filename)
-  File 
"/usr/lib/qpid-dispatch/python/qpid_dispatch_internal/management/config.py", 
line 41, in __init__
-    self.load(filename, raw_json)
-  File 
"/usr/lib/qpid-dispatch/python/qpid_dispatch_internal/management/config.py", 
line 123, in load
-    with open(source) as f:
-Exception: Cannot load configuration file xxx: [Errno 2] No such file or 
directory: 'xxx'
-
-Wed Jun 15 09:53:28 2016 MAIN (critical) Router start-up failed: Python: 
Exception: Cannot load configuration file xxx: [Errno 2] No such file or 
directory: 'xxx'
-qdrouterd: Python: Exception: Cannot load configuration file xxx: [Errno 2] No 
such file or directory: 'xxx'
-----
-
-=== The `POLICY` Logging Module
-
-This module provides information about policies that have been configured for 
the router.
-
-In this example, `Router.A` has no limits on maximum connections, and the 
default application policy is disabled:
-
-[options="nowrap"]
-----
-Tue Jun  7 15:07:32 2016 POLICY (info) Policy configured maximumConnections: 
0, policyFolder: '', access rules enabled: 'false'
-Tue Jun  7 15:07:32 2016 POLICY (info) Policy fallback defaultApplication is 
disabled
-----
-
-[id='configure-default-logging']
-== Configuring Logging
-
-You can specify the types of events that should be logged, the format of the 
log entries, and where those entries should be sent.
-
-.Procedure
-
-. In the router's configuration file, add a `log` section to set the default 
logging properties:
-+
---
-[options="nowrap",subs="+quotes"]
-----
-log {
-    module: DEFAULT
-    enable: _LOGGING_LEVEL_
-    includeTimestamp: yes
-    ...
-}
-----
-
-`module`:: Specify `DEFAULT`.
-`enable`:: The logging level. You can specify any of the following levels 
(from lowest to highest):
-+
-//tag::logging-levels[]
-* `trace` - provides the most information, but significantly affects system 
performance
-* `debug` - useful for debugging, but affects system performance
-* `info` - provides general information without affecting system performance
-* `notice` - provides general information, but is less verbose than `info`
-* `warning` - provides information about issues you should be aware of, but 
which are not errors
-* `error` - error conditions that you should address
-* `critical` - critical system issues that you must address immediately
-
-+
-To specify multiple levels, use a comma-separated list. You can also use `+` 
to specify a level and all levels above it. For example, `trace,debug,warning+` 
enables trace, debug, warning, error, and critical levels. For default logging, 
you should typically use the `info+` or `notice+` level. These levels will 
provide general information, warnings, and errors for all modules without 
affecting the performance of {RouterName}.
-//end::logging-levels[]
-`includeTimestamp`:: Set this to `yes` to include the timestamp in all logs.
-
-For information about additional log attributes, see 
link:{qdrouterdConfManPageUrl}#_log[log] in the `qdrouterd.conf` man page.
---
-
-. Add an additional `log` section for each logging module that should not 
follow the default logging configuration:
-+
---
-
-[options="nowrap",subs="+quotes"]
-----
-log {
-    module: _MODULE_NAME_
-    enable: _LOGGING_LEVEL_
-    ...
-}
-----
-
-`module`:: The name of the module for which you are configuring logging. For a 
list of valid modules, see xref:logging-modules-you-can-configure[].
-`enable`:: The logging level. You can specify any of the following levels 
(from lowest to highest):
-+
-include::logging.adoc[tags=logging-levels]
-
-For information about additional log attributes, see 
link:{qdrouterdConfManPageUrl}#_log[log] in the `qdrouterd.conf` man page.
---
-
-== Viewing Log Entries
-
-You may need to view log entries to diagnose errors, performance problems, and 
other important issues. A log entry consists of an optional timestamp, the 
logging module, the logging level, and the log message.
-
-=== Viewing Log Entries on the Console
-
-By default, log entries are logged to the console, and you can view them 
there. However, if the `output` attribute is set for a particular logging 
module, then you can find those log entries in the specified location 
(`stderr`, `syslog`, or a file).
-
-=== Viewing Log Entries on the CLI
-
-You can use the `qdstat` tool to view a list of recent log entries.
-
-.Procedure
-
-* Use the *`qdstat --log`* command to view recent log entries.
-+
---
-You can use the `--limit` parameter to limit the number of log entries that 
are displayed. For more information about `qdstat`, see {qdstatManPageLink}.
-
-This example displays the last three log entries for `Router.A`:
-
-[options="nowrap",subs="+quotes"]
-----
-$ qdstat --log --limit=3 -r ROUTER.A
-Wed Jun  7 17:49:32 2017 ROUTER_CORE (none) Core action 'link_deliver'
-Wed Jun  7 17:49:32 2017 ROUTER_CORE (none) Core action 'send_to'
-Wed Jun  7 17:49:32 2017 SERVER (none) [2]:0 -> @flow(19) [next-incoming-id=1, 
incoming-window=61, next-outgoing-id=0, outgoing-window=2147483647, handle=0, 
delivery-count=1, link-credit=250, drain=false]
-----
---

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/f77f92cb/doc/new-book/management-entities.adoc
----------------------------------------------------------------------
diff --git a/doc/new-book/management-entities.adoc 
b/doc/new-book/management-entities.adoc
deleted file mode 100644
index 3f677e3..0000000
--- a/doc/new-book/management-entities.adoc
+++ /dev/null
@@ -1,24 +0,0 @@
-////
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License
-////
-
-= Management Entities
-
-The {RouterName} management schema provides a set of management entities that 
you can use to configure and operate a router.
-
-For details about the management entities, see {ManagementEntitiesLink}.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/f77f92cb/doc/new-book/management.adoc
----------------------------------------------------------------------
diff --git a/doc/new-book/management.adoc b/doc/new-book/management.adoc
deleted file mode 100644
index fa933de..0000000
--- a/doc/new-book/management.adoc
+++ /dev/null
@@ -1,38 +0,0 @@
-////
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License
-////
-
-= Management
-
-You can manage {RouterName} using both graphical and command-line tools.
-
-{ConsoleName}:: A graphical tool for monitoring and managing {RouterName} 
routers.
-`qdstat`:: A command-line tool for monitoring the status of {RouterName} 
routers.
-`qdmanage`:: A command-line tool for viewing and updating the configuration of 
{RouterName} routers.
-
-// Using the Console
-include::using-console.adoc[leveloffset=+1]
-
-// Monitoring Using qdstat
-include::monitoring-using-qdstat.adoc[leveloffset=+1]
-
-// Managing Using qdmanage
-include::managing-using-qdmanage.adoc[leveloffset=+1]
-
-// Management Entities
-include::management-entities.adoc[leveloffset=+1]

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/f77f92cb/doc/new-book/managing-using-qdmanage.adoc
----------------------------------------------------------------------
diff --git a/doc/new-book/managing-using-qdmanage.adoc 
b/doc/new-book/managing-using-qdmanage.adoc
deleted file mode 100644
index b22bd6d..0000000
--- a/doc/new-book/managing-using-qdmanage.adoc
+++ /dev/null
@@ -1,679 +0,0 @@
-////
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License
-////
-
-[id='managing-router']
-= Managing {RouterName} Using `qdmanage`
-
-You can use `qdmanage` to view and modify the configuration of a running 
router at runtime. Specifically, `qdmanage` enables you to create, read, 
update, and delete the sections and attributes in the router's configuration 
file without having to restart the router.
-
-[NOTE]
-====
-The `qdmanage` tool implements the AMQP management specification, which means 
that you can use it with any standard AMQP-managed endpoint, not just with 
{RouterName}.
-====
-
-== Syntax for Using `qdmanage`
-
-You can use `qdmanage` with the following syntax:
-
-[options="nowrap",subs="+quotes"]
-----
-$ qdmanage [__CONNECTION_OPTIONS__] __OPERATION__ [__OPTIONS__]
-----
-
-This specifies:
-
-* One or more optional `connection_options` to specify the router on which to 
perform the operation, or to supply security credentials if the router only 
accepts secure connections.
-+
-If you do not specify any connection options, `qdmanage` connects to the 
router listening on localhost and the default AMQP port (5672).
-* The `operation` to perform on the router.
-* One or more optional `options` to specify a configuration entity on which to 
perform the operation or how to format the command output.
-
-When you enter a `qdmanage` command, it is executed as an AMQP management 
operation request, and then the response is returned as command output in JSON 
format.
-
-For example, the following command executes a query operation on a router, and 
then returns the response in JSON format:
-
-[options="nowrap"]
-----
-$ qdmanage query --type listener
-[
-  {
-    "stripAnnotations": "both", 
-    "addr": "127.0.0.1", 
-    "multiTenant": false, 
-    "requireSsl": false, 
-    "idleTimeoutSeconds": 16, 
-    "saslMechanisms": "ANONYMOUS", 
-    "maxFrameSize": 16384, 
-    "requireEncryption": false, 
-    "host": "0.0.0.0", 
-    "cost": 1, 
-    "role": "normal", 
-    "http": false, 
-    "maxSessions": 32768, 
-    "authenticatePeer": false, 
-    "type": "org.apache.qpid.dispatch.listener", 
-    "port": "amqp", 
-    "identity": "listener/0.0.0.0:amqp", 
-    "name": "listener/0.0.0.0:amqp"
-  }
-]
-----
-
-For more information about `qdmanage`, see the {qdmanageManPageLink}.
-
-== Managing Network Connections
-
-You can use `qdmanage` to view, create, update, and delete listeners and 
connectors for any router in your router network.
-
-=== Managing Listeners
-
-Listeners define how clients can connect to a router. The following table 
lists the `qdmanage` commands you can use to perform common operations on 
listeners.
-
-For more information about the attributes you can use with these commands, see 
link:{qdrouterdConfManPageUrl}#_listener[listener] in the `qdrouterd.conf` man 
page.
-
-//tag::qdmanage-connection-options-note[]
-[NOTE]
-====
-The commands in this table demonstrate operations on the local router 
listening on localhost and the default AMQP port (5672). If you want to perform 
an operation on a different router in the router network, you must specify the 
necessary connection options. For more information, see 
link:{qdmanageManPageUrl}#_connection_options[Connection Options] in the 
qdmanage man page.
-====
-//end::qdmanage-connection-options-note[]
-
-[cols="30,70"]
-|===
-| To... | Use this command...
-
-|View the router’s listeners
-a|
-[options="nowrap"]
-----
-qdmanage query --type=listener
-----
-
-|View the roles and ports on which the router is listening
-a|
-[options="nowrap"]
-----
-qdmanage query role port --type=listener
-----
-
-|View the attributes configured for a listener
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage read --name=_LISTENER_NAME_
-----
-
-|Create a listener
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage create --type=listener --_ATTRIBUTE_=_VALUE_ ...
-----
-
-|Create multiple listeners
-a|
-. Enter this command:
-+
-[options="nowrap"]
-----
-qdmanage create --stdin 
-----
-. Configure the listeners using a JSON map:
-+
-[options="nowrap",subs="+quotes"]
-----
-[{"type"="listener", "_ATTRIBUTE_":"_VALUE_"...}, {"type"="listener", 
"_ATTRIBUTE_":"_VALUE_"...}...]
-----
-
-These commands use a JSON map to create two listeners.
-
-|Update a listener
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --type=listener --_ATTRIBUTE_=_VALUE_ ...
-----
-
-|Update multiple listeners
-a|
-. Enter this command:
-+
-[options="nowrap"]
-----
-qdmanage update --stdin 
-----
-. Configure the listeners using a JSON map:
-+
-[options="nowrap",subs="+quotes"]
-----
-[{"type"="listener", "_ATTRIBUTE_":"_VALUE_"...}, {"type"="listener", 
"_ATTRIBUTE_":"_VALUE_"...}...]
-----
-
-These commands use a JSON map to update two listeners.
-
-|Delete an attribute from a listener
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --type=listener --_ATTRIBUTE_
-----
-
-|Delete a listener
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage delete --name=_LISTENER_NAME_
-----
-
-|===
-
-[id='managing-connectors']
-=== Managing Connectors
-
-Connectors define how the router can connect to other endpoints in your 
messaging network, such as brokers and other routers. The following table lists 
the `qdmanage` commands you can use to perform common operations on connectors.
-
-For more information about the attributes you can use with these commands, see 
link:{qdrouterdConfManPageUrl}#_connector[connector] in the `qdrouterd.conf` 
man page.
-
-// Note about qdmanage connection options.
-include::managing-using-qdmanage.adoc[tags=qdmanage-connection-options-note]
-
-[cols="30,70"]
-|===
-| To... | Use this command...
-
-|View the router’s connectors
-a|
-[options="nowrap"]
-----
-qdmanage query --type=connector
-----
-
-|View the roles and ports on which the router can connect to other endpoints
-a|
-[options="nowrap"]
-----
-qdmanage query role port --type=connector
-----
-
-|If the router is connected to a broker, view the alternate URLs on which the 
router can connect to the broker if the primary connection fails
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage query failoverUrls --type=connector --name=CONNECTOR_NAME
-----
-
-|View the attributes configured for a connector
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage read --name=_CONNECTOR_NAME_
-----
-
-|Create a connector
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage create --type=connector --_ATTRIBUTE_=_VALUE_ ...
-----
-
-|Create multiple connectors
-a|
-. Enter this command:
-+
-[options="nowrap"]
-----
-qdmanage create --stdin 
-----
-. Configure the connectors using a JSON map:
-+
-[options="nowrap",subs="+quotes"]
-----
-[{"type"="connector", "_ATTRIBUTE_":"_VALUE_"...}, {"type"="connector", 
"_ATTRIBUTE_":"_VALUE_"...}...]
-----
-
-These commands use a JSON map to create two connectors.
-
-|Update a connector
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --type=connector --_ATTRIBUTE_=_VALUE_ ...
-----
-
-|Update multiple connectors
-a|
-. Enter this command:
-+
-[options="nowrap"]
-----
-qdmanage update --stdin 
-----
-. Configure the connectors using a JSON map:
-+
-[options="nowrap",subs="+quotes"]
-----
-[{"type"="connector", "_ATTRIBUTE_":"_VALUE_"...}, {"type"="connector", 
"_ATTRIBUTE_":"_VALUE_"...}...]
-----
-
-These commands use a JSON map to update two connectors.
-
-|Delete an attribute from a connector
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --type=connector --_ATTRIBUTE_
-----
-
-|Delete a connector
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage delete --name=_CONNECTOR_NAME_
-----
-
-|===
-
-== Managing Security
-
-{RouterName} supports both SSL/TLS and SASL security protocols for encrypting 
and authenticating incoming and outgoing connections for your routers. You can 
use `qdmanage` to view, create, update, and delete security policies for any 
router in your router network.
-
-=== Managing SSL/TLS Encryption and Authentication
-
-{RouterName} supports SSL/TLS for certificate-level encryption and mutual 
authentication. The following table lists the common `qdmanage` commands you 
can use to secure incoming and outgoing connections for a router in your router 
network.
-
-For more information about the attributes you can use with these commands, see 
link:{qdrouterdConfManPageUrl}#_sslprofile[sslProfile] and 
link:{qdrouterdConfManPageUrl}#_listener[listener] in the `qdrouterd.conf` man 
page.
-
-// Note about qdmanage connection options.
-include::managing-using-qdmanage.adoc[tags=qdmanage-connection-options-note]
-
-[cols="30,70"]
-|===
-| To... | Use this command...
-
-|View the router’s SSL configuration
-a|
-[options="nowrap"]
-----
-qdmanage query --type=sslProfile
-----
-
-|Set up SSL for the router
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage create --type=sslProfile --name=_NAME_ --certDB=_PATH_ 
--certFile=_PATH_ --privateKeyFile=_PATH_ --_ATTRIBUTE_=_VALUE_ ...
-----
-
-|Add SSL/TLS encryption to an incoming connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_LISTENER_NAME_ --sslProfile=_NAME_ --requireSsl=yes
-----
-
-|Change SSL/TLS encryption on an incoming connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_LISTENER_NAME_ --_ATTRIBUTE_=_VALUE_ ...
-----
-
-|Add SSL/TLS client authentication to an incoming connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_LISTENER_NAME_ --authenticatePeer=yes
-----
-
-|Remove SSL/TLS client authentication from an incoming connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_LISTENER_NAME_ --authenticatePeer=no
-----
-
-|Add SSL/TLS client authentication to an outgoing connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_CONNECTOR_NAME_ --sslProfile=_NAME_
-----
-
-|Remove SSL/TLS client authentication from an outgoing connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_CONNECTOR_NAME_ --sslProfile
-----
-
-|Delete an SSL profile
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage delete --name=_SSL_PROFILE_NAME_
-----
-
-|===
-
-=== Managing SASL Encryption and Authentication
-
-{RouterName} supports SASL for authentication and payload encryption. The 
following table lists the common `qdmanage` commands you can use to secure 
incoming and outgoing connections for a router in your router network.
-
-For more information about the attributes you can use with these commands, see 
link:{qdrouterdConfManPageUrl}#_router[router] and 
link:{qdrouterdConfManPageUrl}#_listener[listener] in the `qdrouterd.conf` man 
page.
-
-// Note about qdmanage connection options.
-include::managing-using-qdmanage.adoc[tags=qdmanage-connection-options-note]
-
-[cols="30,70"]
-|===
-| To... | Use this command...
-
-|Set up SASL for the router
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --type=router --saslConfigDir=_PATH_ --saslConfigName=_NAME_
-----
-
-|Add SASL authentication to an incoming connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_LISTENER_NAME_ --authenticatePeer=yes 
--saslMechanisms=_MECHANISMS_
-----
-
-|Change SASL mechanisms for an incoming connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_LISTENER_NAME_ --saslMechanisms=_MECHANISMS_
-----
-
-|Add SASL authentication to an outgoing connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_CONNECTOR_NAME_ --saslMechanisms=_MECHANISMS_ 
--saslUsername=_USERNAME_ --saslPassword=_PASSWORD_
-----
-
-|Change SASL mechanisms for an outgoing connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_CONNECTOR_NAME_ --saslMechanisms=_MECHANISMS_
-----
-
-|Add SASL payload encryption to an incoming connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_LISTENER_NAME_ --requireEncryption=yes 
--saslMechanisms=_MECHANISMS_
-----
-
-|Change SASL mechanisms for an incoming connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_LISTENER_NAME_ --saslMechanisms=_MECHANISMS_
-----
-
-|Remove SASL payload encryption from an incoming connection
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_LISTENER_NAME_ --requireEncryption=no --saslMechanisms
-----
-
-|Delete a SASL configuration
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --type=router --saslConfigDir --saslConfigName
-----
-
-|===
-
-== Managing Routing
-
-{RouterName} supports both message routing and link routing for distributing 
messages between senders and receivers. You can use `qdmanage` to view how 
addresses and link routes are configured in your environment, and define how a 
router should distribute messages.
-
-=== Managing Message Routing
-
-Message routing involves configuring addresses to define how {RouterName} 
should distribute messages. The following table lists the common `qdmanage` 
commands you can use to configure addresses for a router in your router network.
-
-For more information about the attributes you can use with these commands, see 
link:{qdrouterdConfManPageUrl}#_address[address] and 
link:{qdrouterdConfManPageUrl}#_autolink[autolink] in the `qdrouterd.conf` man 
page.
-
-// Note about qdmanage connection options.
-include::managing-using-qdmanage.adoc[tags=qdmanage-connection-options-note]
-
-[cols="30,70"]
-|===
-| To... | Use this command...
-
-|View addresses
-a|
-[options="nowrap"]
-----
-qdmanage query --type=address
-----
-
-[options="nowrap",subs="+quotes"]
-----
-qdmanage read --name=_ADDRESS_NAME_
-----
-
-|View address distribution patterns
-a|
-[options="nowrap"]
-----
-qdmanage query prefix distribution --type=address
-----
-
-|View waypoints to broker queues
-a|
-[options="nowrap"]
-----
-qdmanage query prefix --type=address --waypoint=yes
-----
-
-|View autolinks
-a|
-[options="nowrap"]
-----
-qdmanage query --type=autolink
-----
-
-|Set a distribution pattern for an address
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage create --type=address --prefix=_ADDRESS_PREFIX_ 
--distribution=_DISTRIBUTION_PATTERN_ ...
-----
-
-|Set distribution patterns for multiple addresses
-a|
-. Enter this command:
-+
-[options="nowrap",subs="+quotes"]
-----
-qdmanage create --stdin
-----
-
-. Configure the addresses using a JSON map:
-+
-[options="nowrap",subs="+quotes"]
-----
-[{"type":"address", "prefix":"_ADDRESS_PREFIX_", 
"distribution":"_DISTRIBUTION_PATTERN_", "_ATTRIBUTE_":"_VALUE_", ...}, 
{"type":"address", "prefix":"_ADDRESS_PREFIX_", 
"distribution":"_DISTRIBUTION_PATTERN_", "_ATTRIBUTE_":"_VALUE_", ...} ...]
-----
-
-These commands configure two addresses.
-
-|Connect an address to a broker queue
-a|
-. Enter this command:
-+
-[options="nowrap"]
-----
-qdmanage create --stdin
-----
-
-. Create an address waypoint, an incoming autolink, and an outgoing autolink:
-+
-[options="nowrap",subs="+quotes"]
-----
-[{"type":"address", "prefix":"_ADDRESS_PREFIX_", "waypoint":"yes"}, 
{"type":"autolink", "addr":"_ADDRESS_NAME_", 
"connection":"_CONNECTOR/LISTENER_NAME_", "direction":"in"}, 
{"type":"autolink", "addr":"_ADDRESS_NAME_", 
"connection":"_CONNECTOR/LISTENER_NAME_", "direction":"out"}]
-----
-
-|Update an address configuration
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_ADDRESS_NAME_ --_ATTRIBUTE_=_VALUE_ ...
-----
-
-|Update an autolink
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_AUTOLINK_NAME_ --_ATTRIBUTE_=_VALUE_ ...
-----
-
-|Delete an address configuration
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage delete --name=_ADDRESS_NAME_
-----
-
-|Delete an autolink
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage delete --name=_AUTOLINK_NAME_
-----
-
-|===
-
-=== Managing Link Routing
-
-A link route is a chain of links between a sender and receiver that provides a 
private messaging path. The following table lists the common `qdmanage` 
commands you can use to view, create, update, and delete link routes.
-
-For more information about the attributes you can use with these commands, see 
the link:{qdrouterdConfManPageUrl}#_linkroute[linkRoute] in the 
`qdrouterd.conf` man page.
-
-// Note about qdmanage connection options.
-include::managing-using-qdmanage.adoc[tags=qdmanage-connection-options-note]
-
-[cols="30,70"]
-|===
-| To... | Use this command...
-
-|View link routes
-a|
-[options="nowrap"]
-----
-qdmanage query --type=linkRoute
-----
-
-[options="nowrap",subs="+quotes"]
-----
-qdmanage read --name=_LINK_ROUTE_NAME_
-----
-
-|Create a link route
-a|
-. Enter this command:
-+
-[options="nowrap"]
-----
-qdmanage create --stdin
-----
-
-. Create an incoming and outgoing link route:
-+
-[options="nowrap",subs="+quotes"]
-----
-[{"type":"linkRoute", "prefix":"_ADDRESS_PREFIX_", 
"connection":"_CONNECTOR/LISTENER_NAME_", "direction":"in", ...}, 
{"type":"linkRoute", "prefix":"_ADDRESS_PREFIX_", 
"connection":"_CONNECTOR/LISTENER_NAME_", "direction":"out", ...}]
-----
-
-|Update a link route
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --name=_LINK_ROUTE_NAME_ --_ATTRIBUTE_=_VALUE_ ...
-----
-
-|Delete a link route
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage delete --name=_INCOMING_LINK_ROUTE_NAME_
-qdmanage delete --name=_OUTGOING_LINK_ROUTE_NAME_
-----
-
-|===
-
-== Managing Logging
-
-{RouterName} logs are broken into different categories called logging modules. 
Each module provides important information about a particular aspect of a 
router. The following table lists the common `qdmanage` commands you can use to 
view and change the configuration of a logging module.
-
-For more information about the attributes you can use with these commands, see 
link:{qdrouterdConfManPageUrl}#_log[log] in the `qdrouterd.conf` man page.
-
-// Note about qdmanage connection options.
-include::managing-using-qdmanage.adoc[tags=qdmanage-connection-options-note]
-
-[cols="30,70"]
-|===
-| To... | Use this command...
-
-|View the logging configuration
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage query --type=log
-----
-
-|View the logging configuration for a logging module
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage read --type=log --module=_LOGGING_MODULE_NAME_
-----
-
-|Set the default logging configuration
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage create --type=log --module=DEFAULT --enable=_LOGGING_LEVEL_ 
--includeTimestamp=yes --_ATTRIBUTE_=_VALUE_
-----
-
-|Enable logging for a logging module
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage create --type=log --module=_LOGGING_MODULE_NAME_ 
--enable=_LOGGING_LEVEL_ --_ATTRIBUTE_=_VALUE_ ...
-----
-
-|Change the logging configuration for a logging module
-a|
-[options="nowrap",subs="+quotes"]
-----
-qdmanage update --type=log --module=_LOGGING_MODULE_NAME_ 
--_ATTRIBUTE_=_VALUE_ ...
-----
-
-|===

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/f77f92cb/doc/new-book/monitoring-using-qdstat.adoc
----------------------------------------------------------------------
diff --git a/doc/new-book/monitoring-using-qdstat.adoc 
b/doc/new-book/monitoring-using-qdstat.adoc
deleted file mode 100644
index c0b1c64..0000000
--- a/doc/new-book/monitoring-using-qdstat.adoc
+++ /dev/null
@@ -1,392 +0,0 @@
-////
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License
-////
-
-[id='monitoring-using-qdstat']
-= Monitoring {RouterName} Using `qdstat`
-
-You can use `qdstat` to view the status of routers on your router network. For 
example, you can view information about the attached links and configured 
addresses, available connections, and nodes in the router network.
-
-== Syntax for Using `qdstat`
-
-You can use `qdstat` with the following syntax:
-
-[options="nowrap",subs="+quotes"]
-----
-$ qdstat __OPTION__ [__CONNECTION_OPTIONS__] [__SECURE_CONNECTION_OPTIONS__]
-----
-
-This specifies:
-
-* An `option` for the type of information to view.
-* One or more optional `connection_options` to specify a router for which to 
view the information.
-+ 
-If you do not specify a connection option, `qdstat` connects to the router 
listening on localhost and the default AMQP port (5672).
-* The `secure_connection_options` if the router for which you want to view 
information only accepts secure connections. 
-
-For more information about `qdstat`, see the {qdstatManPageLink}.
-
-== Viewing General Statistics for a Router
-
-You can view information about a router in the router network, such as its 
working mode and ID.
-
-.Procedure
-
-* Use the following command:
-+
---
-[options="nowrap",subs="+quotes"]
-----
-$ qdstat -g [__CONNECTION_OPTIONS__]
-----
-
-This example shows general statistics for the local router:
-
-[options="nowrap"]
-----
-$ qdstat -g
-Router Statistics
-  attr         value
-  =========================
-  Version      0.8.0
-  Mode         standalone
-  Area         0
-  Router Id    Router.A
-  Link Routes  0
-  Auto Links   0
-  Links        2
-  Nodes        0
-  Addresses    4
-  Connections  1
-----
---
-
-== Viewing a List of Connections to a Router
-
-You can view:
-
-* Connections from clients (sender/receiver)
-* Connections from and to other routers in the network
-* Connections to other containers (such as brokers)
-* Connections from the tool itself
-
-.Procedure
-
-* Use this command:
-+
---
-[options="nowrap",subs="+quotes"]
-----
-$ qdstat -c [__CONNECTION_OPTIONS__]
-----
-
-For more information about the fields displayed by this command, see 
link:{qdstatManPageUrl}#_qdstat_c[the qdstat -c output columns^].
-
-In this example, two clients are connected to `Router.A`. `Router.A` is 
connected to `Router.B` and a broker.
-
-Viewing the connections on Router.A displays the following:
-
-[options="nowrap"]
-----
-$ qdstat -c -r Router.A
-Connections
-id    host                        container                              role  
           dir  security     authentication  tenant
-==================================================================================================================================
-  2   127.0.0.1:5672                                                     
route-container  out  no-security  anonymous-user   // <1>
-  10  127.0.0.1:5001               Router.B                              
inter-router     out  no-security  anonymous-user   // <2>
-  12  localhost.localdomain:42972  161211fe-ba9e-4726-9996-52d6962d1276  
normal           in   no-security  anonymous-user   // <3>
-  14  localhost.localdomain:42980  a35fcc78-63d9-4bed-b57c-053969c38fda  
normal           in   no-security  anonymous-user   // <3>
-  15  localhost.localdomain:42982  0a03aa5b-7c45-4500-8b38-db81d01ce651  
normal           in   no-security  anonymous-user   // <4>
-----
-<1> This connection shows that `Router.A` is connected to a broker, because 
the `role` is `route-container`, and the `dir` is `out`.
-<2> `Router.A` is also connected to another router on the network (the `role` 
is `inter-router`), establishing an output connection (the `dir` is `out`).
-<3> These connections show that two clients are connected to `Router.A`, 
because the `role` is `normal`, and the `dir` is `in`.
-<4> The connection from `qdstat` to `Router.A`. This is the connection that 
`qdstat` uses to query `Router.A` and display the command output.
-
-`Router.A` is connected to `Router.B`. Viewing the connections on `Router.B` 
displays the following:
-
-[options="nowrap"]
-----
-$ qdstat -c -r Router.B 
-Connections
-id    host                         container  role          dir  security     
authentication  tenant
-====================================================================================================
-  1   localhost.localdomain:51848  Router.A   inter-router  in   no-security  
anonymous-user    // <1>
-----
-<1> This connection shows that `Router.B` is connected to `Router.A` through 
an incoming connection (the `role` is `inter-router` and the `dir` is `in`). 
There is not a connection from `qdstat` to `Router.B`, because the command was 
run from `Router.A` and forwarded to `Router.B`.
---
-
-== Viewing AMQP Links Attached to a Router
-
-You can view a list of AMQP links attached to the router from clients 
(sender/receiver), from or to other routers into the network, to other 
containers (for example, brokers), and from the tool itself.
-
-.Procedure
-* Use this command:
-+
---
-[options="nowrap",subs="+quotes"]
-----
-$ qdstat -l [__CONNECTION_OPTIONS__]
-----
-
-For more information about the fields displayed by this command, see 
link:{qdstatManPageUrl}#_qdstat_l[the qdstat -l output columns^].
-
-In this example, `Router.A` is connected to both `Router.B` and a broker. A 
link route is configured for the `my_queue` queue and waypoint (with 
autolinks), and for the `my_queue_wp` queue on the broker. In addition, there 
is a receiver connected to `my_address` (message routing based), another to 
`my_queue`, and the a third one to `my_queue_wp`.
-
-In this configuration, the router uses only one connection to the broker for 
both the waypoints (related to `my_queue_wp`) and the link route (related to 
`my_queue`).
-
-Viewing the links displays the following:
-
-[options="nowrap"]
-----
-$ qdstat -l
-Router Links
-  type            dir  conn id  id  peer  class   addr                  phs  
cap  undel  unsett  del  presett  acc  rej  rel  mod  admin    oper
-  
==============================================================================================================================================
-  router-control  in   2        7                                            
250  0      0       2876 0        0    0    0    0    enabled  up // <1>
-  router-control  out  2        8         local   qdhello                    
250  0      0       2716 0        0    0    0    0    enabled  up
-  inter-router    in   2        9                                            
250  0      0       1    0        0    0    0    0    enabled  up
-  inter-router    out  2        10                                           
250  0      0       1    0        0    0    0    0    enabled  up
-  endpoint        in   1        11        mobile  my_queue_wp           1    
250  0      0       3    0        0    0    0    0    enabled  up // <2>
-  endpoint        out  1        12        mobile  my_queue_wp           0    
250  0      0       3    0        0    0    0    0    enabled  up
-  endpoint        out  4        15        mobile  my_address            0    
250  0      0       0    0        0    0    0    0    enabled  up // <3>
-  endpoint        out  6        18  19                                       
250  0      0       1    0        0    0    0    0    enabled  up // <4>
-  endpoint        in   1        19  18                                       0 
   0      0       1    0        0    0    0    0    enabled  up // <5>
-  endpoint        out  19       40        mobile  my_queue_wp           1    
250  0      0       1    0        0    0    0    0    enabled  up // <6>
-  endpoint        in   24       48        mobile  $management           0    
250  0      0       1    0        0    0    0    0    enabled  up
-  endpoint        out  24       49        local   temp.mx5HxzUe2Eddw_s       
250  0      0       0    0        0    0    0    0    enabled  up
-----
-<1> The `conn id` 2 connection has four links (in both directions) for 
inter-router communications with `Router.B`, such as control messages and 
normal message-routed deliveries.
-<2> There are two autolinks (`conn id 1`) for the waypoint for `my_queue_wp`. 
There is an incoming (`id 11`) and outgoing (`id 12`) link to the broker, and 
another `out` link (`id 40`) to the receiver.
-<3> A `mobile` link for `my_address`. The `dir` is `out` related to the 
receiver attached to it.
-<4> The `out` link from the router to the receiver for `my_queue`. This 
enables the router to deliver messages to the receiver.
-<5> The `in` link to the router for `my_queue`. This enables the router to get 
messages from `my_queue` so that they can be sent to the receiver on the `out` 
link.
-<6> The remaining links are related to the `$management` address and are used 
by `qdstat` to receive the information that is displayed by this command.
---
-
-== Viewing Known Routers on a Network
-
-To see the topology of the router network, you can view known routers on the 
network.
-
-.Procedure
-
-* Use this command:
-+
---
-[options="nowrap",subs="+quotes"]
-----
-$ qdstat -n [__CONNECTION_OPTIONS__]
-----
-
-For more information about the fields displayed by this command, see 
link:{qdstatManPageUrl}#_qdstat_n[the qdstat -n output columns^].
-
-In this example, `Router.A` is connected to `Router.B`, which is connected to 
`Router.C`. Viewing the router topology on `Router.A` shows the following:
-
-[options="nowrap"]
-----
-$ qdstat -n -r Router.A
-Routers in the Network
-  router-id  next-hop  link  cost  neighbors                 valid-origins
-  ==========================================================================
-  Router.A   (self)    -           ['Router.B']              [] // <1>
-  Router.B   -         0     1     ['Router.A', 'Router.C']  [] // <2>
-  Router.C   Router.B  -     2     ['Router.B']              [] // <3>
-----
-<1> `Router.A` has one neighbor: `Router.B`.
-<2> `Router.B` is connected to `Router.A` and `Router.C` over `link` 0. The 
`cost` for `Router.A` to reach `Router.B` is 1, because the two routers are 
connected directly.
-<3> `Router.C` is connected to `Router.B`, but not to `Router.A`. The `cost` 
for `Router.A` to reach `Router.C` is 2, because messages would have to pass 
through `Router.B` as the `next-hop`.
-
-`Router.B` shows a different view of the router topology:
-
-[options="nowrap"]
-----
-$ qdstat -n -v -r Router.B
-Routers in the Network
-  router-id  next-hop  link  cost  neighbors                 valid-origins
-  ==========================================================================
-  Router.A   -         0     1     ['Router.B']              ['Router.C']
-  Router.B   (self)    -           ['Router.A', 'Router.C']  []
-  Router.C   -         1     1     ['Router.B']              ['Router.A']
-----
-
-The `neighbors` list is the same when viewed on `Router.B`. However, from the 
perspective of `Router.B`, the destinations on `Router.A` and `Router.C` both 
have a `cost` of `1`. This is because `Router.B` is connected to `Router.A` and 
`Router.C` through links.
-
-The `valid-origins` column shows that starting from `Router.C`, `Router.B` has 
the best path to reach `Router.A`. Likewise, starting from `Router.A`, 
`Router.B` has the best path to reach `Router.C`.
-
-Finally, `Router.C` shows the following details about the router topology:
-
-[options="nowrap"]
-----
-$ qdstat -n -v -r Router.C
-Routers in the Network
-  router-id  next-hop  link  cost  neighbors                 valid-origins
-  ==========================================================================
-  Router.A   Router.B  -     2     ['Router.B']              []
-  Router.B   -         0     1     ['Router.A', 'Router.C']  []
-  Router.C   (self)    -           ['Router.B']              []
-----
-
-Due to a symmetric topology, the `Router.C` perspective of the topology is 
very similar to the `Router.A` perspective. The primary difference is the 
`cost`: the cost to reach `Router.B` is `1`, because the two routers are 
connected. However, the cost to reach `Router.A` is `2`, because the messages 
would have to pass through `Router.B` as the `next-hop`.
---
-
-== Viewing Addresses Known to a Router
-
-You can view message-routed and link-routed addresses known to a router.
-
-.Procedure
-
-* Use the following command:
-+
---
-[options="nowrap",subs="+quotes"]
-----
-$ qdstat -a [__CONNECTION_OPTIONS__]
-----
-
-For more information about the fields displayed by this command, see 
link:{qdstatManPageUrl}#_qdstat_a[the qdstat -a output columns^].
-
-In this example, `Router.A` is connected to both `Router.B` and a broker. The 
broker has two queues:
-
-* `my_queue` (with a link route on `Router.A`)
-* `my_queue_wp` (with a waypoint and autolinks configured on `Router.A`)
-
-In addition, there are three receivers: one connected to `my_address` for 
message routing, another connected to `my_queue`, and the last one connected to 
`my_queue_wp`.
-
-Viewing the addresses displays the following information:
-
-[options="nowrap"]
-----
-$ qdstat -a
-Router Addresses
-  class     addr                   phs  distrib       in-proc  local  remote  
cntnr  in  out  thru  to-proc  from-proc
-  
======================================================================================================================
-  local     $_management_internal       closest       1        0      0       
0      0   0    0     0        0
-  local     $displayname                closest       1        0      0       
0      0   0    0     0        0
-  mobile    $management            0    closest       1        0      0       
0      8   0    0     8        0
-  local     $management                 closest       1        0      0       
0      0   0    0     0        0
-  router    Router.B                    closest       0        0      1       
0      0   0    5     0        5 // <1>
-  mobile    my_address             0    closest       0        1      0       
0      1   1    0     0        0 // <2>
-  link-in   my_queue                    linkBalanced  0        0      0       
1      0   0    0     0        0 // <3>
-  link-out  my_queue                    linkBalanced  0        0      0       
1      0   0    0     0        0
-  mobile    my_queue_wp            1    balanced      0        1      0       
0      1   1    0     0        0 // <4>
-  mobile    my_queue_wp            0    balanced      0        1      0       
0      1   1    0     0        0
-  local     qdhello                     flood         1        1      0       
0      0   0    0     741      706 // <5>
-  local     qdrouter                    flood         1        0      0       
0      0   0    0     4        0
-  topo      qdrouter                    flood         1        0      1       
0      0   0    27    28       28
-  local     qdrouter.ma                 multicast     1        0      0       
0      0   0    0     1        0
-  topo      qdrouter.ma                 multicast     1        0      1       
0      0   0    2     0        3
-  local     temp.IJSoXoY_lX0TiDE        closest       0        1      0       
0      0   0    0     0        0
-----
-<1> An address related to `Router.B` with a `remote` at 1. This is the 
consumer from `Router.B`.
-<2> The `my_address` address has one local consumer, which is related to the 
single receiver attached on that address. The `in` and `out` fields are both 1, 
which means that one message has traveled through this address using the 
`closest` distribution method.
-<3> The incoming link route for the `my_queue` address. This address has one 
locally-attached container (`cntnr`) as a destination (in this case, the 
broker). The following entry is the outgoing link for the same address.
-<4> The incoming autolink for the `my_queue_wp` address and configured 
waypoint. There is one local consumer (`local`) for the attached receiver. The 
following entry is the outgoing autolink for the same address. A single message 
has traveled through the autolinks.
-<5> The `qdhello`, `qdrouter`, and `qdrouter.ma` addresses are used to 
periodically update the network topology and deliver router control messages. 
These updates are made automatically through the inter-router protocol, and are 
based on all of the messages the routers have exchanged. In this case, the 
distribution method (`distrib`) for each address is either flood or multicast 
to ensure the control messages reach all of the routers in the network.
---
-
-== Viewing a Router's Autolinks
-
-You can view a list of the autolinks that are associated with waypoint 
addresses for a node on another container (such as a broker).
-
-.Procedure
-
-* Use the following command:
-+
---
-[options="nowrap",subs="+quotes"]
-----
-$ qdstat --autolinks [__CONNECTION_OPTIONS__]
-----
-
-For more information about the fields displayed by this command, see 
link:{qdstatManPageUrl}#_qdstat_autolinks[the qdstat --autolinks output 
columns^].
-
-In this example, a router is connected to a broker. The broker has a queue 
called `my_queue_wp`, to which the router is configured with a waypoint and 
autolinks. Viewing the autolinks displays the following:
-
-[options="nowrap"]
-----
-$ qdstat --autolinks
-AutoLinks
-  addr         dir  phs  link  status  lastErr
-  ==============================================
-  my_queue_wp  in   1    4     active // <1>
-  my_queue_wp  out  0    5     active // <2>
-----
-<1> The incoming autolink from `my_queue_wp`. As indicated by the `status` 
field, the link is active, because the broker is running and the connection for 
the link is already established (as indicated by the `link` field).
-<2> The outgoing autlink to `my_queue_wp`. Like the incoming link, it is 
active and has an established connection. 
---
-
-== Viewing the Status of a Router's Link Routes
-
-You can view the status of each incoming and outgoing link route.
-
-.Procedure
-
-* Use the following command:
-+
---
-[options="nowrap",subs="+quotes"]
-----
-$ qdstat --linkroutes [__CONNECTION_OPTIONS__]
-----
-
-For more information about the fields displayed by this command, see 
link:{qdstatManPageUrl}#_qdstat_linkroutes[the qdstat --linkroutes output 
columns^].
-
-In this example, a router is connected to a broker. The router is configured 
with a link route to the `my_queue` queue on the broker. Viewing the link 
routes displays the following:
-
-[options="nowrap"]
-----
-$ qdstat --linkroutes
-Link Routes
-  prefix    dir  distrib       status
-  =====================================
-  my_queue  in   linkBalanced  active // <1>
-  my_queue  out  linkBalanced  active // <2>
-----
-<1> The incoming link route from `my_queue` to the router. This route is 
currently active, because the broker is running.
-<2> The outgoing link from the router to `my_queue`. This route is also 
currently active.
---
-
-== Viewing Memory Consumption Information
-
-If you need to perform debugging or tracing for a router, you can view 
information about its memory consumption.
-
-.Procedure
-
-* Use the following command:
-+
---
-[options="nowrap",subs="+quotes"]
-----
-$ qdstat -m [__CONNECTION_OPTIONS__]
-----
-
-This command displays information about allocated objects, their size, and 
their usage by application threads:
-
-[options="nowrap"]
-----
-$ qdstat -m
-Types
-  type                     size   batch  thread-max  total  in-threads  
rebal-in  rebal-out
-  
===========================================================================================
-  qd_bitmask_t             24     64     128         64     64          0      
   0
-  qd_buffer_t              536    16     32          80     80          0      
   0
-  qd_composed_field_t      64     64     128         256    256         0      
   0
-  qd_composite_t           112    64     128         320    320         0      
   0
-  ...
-----
---


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org

Reply via email to