diff options
| author | Alan Conway <aconway@apache.org> | 2012-02-22 18:50:18 +0000 |
|---|---|---|
| committer | Alan Conway <aconway@apache.org> | 2012-02-22 18:50:18 +0000 |
| commit | bc08662c96c86a40e20bc4cc947493e6888a2649 (patch) | |
| tree | 4c832e9a1be0290f3295b6d31e15adc6404399ad /qpid/cpp/src | |
| parent | e369bfd7b5f951b45e848731835814e43165402f (diff) | |
| download | qpid-python-bc08662c96c86a40e20bc4cc947493e6888a2649.tar.gz | |
QPID-3603: HA logging improvements.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1292445 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src')
| -rw-r--r-- | qpid/cpp/src/qpid/ha/Backup.cpp | 2 | ||||
| -rw-r--r-- | qpid/cpp/src/qpid/ha/BrokerReplicator.cpp | 9 | ||||
| -rw-r--r-- | qpid/cpp/src/qpid/ha/HaBroker.cpp | 3 | ||||
| -rw-r--r-- | qpid/cpp/src/qpid/ha/HaPlugin.cpp | 1 | ||||
| -rw-r--r-- | qpid/cpp/src/qpid/ha/QueueReplicator.cpp | 5 | ||||
| -rwxr-xr-x | qpid/cpp/src/tests/ha_tests.py | 7 |
6 files changed, 20 insertions, 7 deletions
diff --git a/qpid/cpp/src/qpid/ha/Backup.cpp b/qpid/cpp/src/qpid/ha/Backup.cpp index 5acbfb9d5f..3d65e07202 100644 --- a/qpid/cpp/src/qpid/ha/Backup.cpp +++ b/qpid/cpp/src/qpid/ha/Backup.cpp @@ -52,7 +52,7 @@ Backup::Backup(broker::Broker& b, const Settings& s) : void Backup::initialize(const Url& url) { assert(!url.empty()); - QPID_LOG(notice, "Ha: Backup started: " << url); + QPID_LOG(notice, "HA: Backup started: " << url); string protocol = url[0].protocol.empty() ? "tcp" : url[0].protocol; // Declare the link std::pair<Link::shared_ptr, bool> result = broker.getLinks().declare( diff --git a/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp b/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp index a8f05c1fe3..75e4ed893d 100644 --- a/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp +++ b/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp @@ -266,6 +266,7 @@ void BrokerReplicator::route(Deliverable& msg, const string& /*key*/, const fram } void BrokerReplicator::doEventQueueDeclare(Variant::Map& values) { + QPID_LOG(debug, "HA: Backup queue declare event " << values); string name = values[QNAME].asString(); Variant::Map argsMap = asMapVoid(values[ARGS]); if (values[DISP] == CREATED && replicateLevel(argsMap)) { @@ -296,6 +297,7 @@ void BrokerReplicator::doEventQueueDeclare(Variant::Map& values) { } void BrokerReplicator::doEventQueueDelete(Variant::Map& values) { + QPID_LOG(debug, "HA: Backup queue delete event " << values); // The remote queue has already been deleted so replicator // sessions may be closed by a "queue deleted" exception. string name = values[QNAME].asString(); @@ -314,6 +316,7 @@ void BrokerReplicator::doEventQueueDelete(Variant::Map& values) { } void BrokerReplicator::doEventExchangeDeclare(Variant::Map& values) { + QPID_LOG(debug, "HA: Backup exchange declare event " << values); Variant::Map argsMap(asMapVoid(values[ARGS])); if (values[DISP] == CREATED && replicateLevel(argsMap)) { string name = values[EXNAME].asString(); @@ -338,6 +341,7 @@ void BrokerReplicator::doEventExchangeDeclare(Variant::Map& values) { } void BrokerReplicator::doEventExchangeDelete(Variant::Map& values) { + QPID_LOG(debug, "HA: Backup exchange delete event " << values); string name = values[EXNAME].asString(); try { boost::shared_ptr<Exchange> exchange = broker.getExchanges().find(name); @@ -352,6 +356,7 @@ void BrokerReplicator::doEventExchangeDelete(Variant::Map& values) { } void BrokerReplicator::doEventBind(Variant::Map& values) { + QPID_LOG(debug, "HA: Backup bind event " << values); boost::shared_ptr<Exchange> exchange = broker.getExchanges().find(values[EXNAME].asString()); boost::shared_ptr<Queue> queue = @@ -372,6 +377,7 @@ void BrokerReplicator::doEventBind(Variant::Map& values) { } void BrokerReplicator::doEventUnbind(Variant::Map& values) { + QPID_LOG(debug, "HA: Backup unbind event " << values); boost::shared_ptr<Exchange> exchange = broker.getExchanges().find(values[EXNAME].asString()); boost::shared_ptr<Queue> queue = @@ -392,6 +398,7 @@ void BrokerReplicator::doEventUnbind(Variant::Map& values) { } void BrokerReplicator::doResponseQueue(Variant::Map& values) { + QPID_LOG(debug, "HA: Backup queue response " << values); // FIXME aconway 2011-11-22: more flexible ways & defaults to indicate replication Variant::Map argsMap(asMapVoid(values[ARGUMENTS])); if (!replicateLevel(argsMap)) return; @@ -419,6 +426,7 @@ void BrokerReplicator::doResponseQueue(Variant::Map& values) { } void BrokerReplicator::doResponseExchange(Variant::Map& values) { + QPID_LOG(debug, "HA: Backup exchange response " << values); Variant::Map argsMap(asMapVoid(values[ARGUMENTS])); if (!replicateLevel(argsMap)) return; framing::FieldTable args; @@ -460,6 +468,7 @@ const std::string QUEUE_REF("queueRef"); } // namespace void BrokerReplicator::doResponseBind(Variant::Map& values) { + QPID_LOG(debug, "HA: Backup bind response " << values); std::string exName = getRefName(EXCHANGE_REF_PREFIX, values[EXCHANGE_REF]); std::string qName = getRefName(QUEUE_REF_PREFIX, values[QUEUE_REF]); boost::shared_ptr<Exchange> exchange = broker.getExchanges().find(exName); diff --git a/qpid/cpp/src/qpid/ha/HaBroker.cpp b/qpid/cpp/src/qpid/ha/HaBroker.cpp index 0d3bd51439..18cd578d90 100644 --- a/qpid/cpp/src/qpid/ha/HaBroker.cpp +++ b/qpid/cpp/src/qpid/ha/HaBroker.cpp @@ -118,11 +118,12 @@ void HaBroker::updateClientUrl(const sys::Mutex::ScopedLock&) { mgmtObject->set_clientAddresses(url.str()); knownBrokers.clear(); knownBrokers.push_back(url); - QPID_LOG(debug, "HA: Setting client known-brokers to: " << url); + QPID_LOG(debug, "HA: Setting client URL to: " << url); } void HaBroker::setBrokerUrl(const Url& url, const sys::Mutex::ScopedLock& l) { if (url.empty()) throw Exception("Invalid empty URL for HA broker failover"); + QPID_LOG(debug, "HA: Setting broker URL to: " << url); brokerUrl = url; mgmtObject->set_brokerAddresses(brokerUrl.str()); if (backup.get()) backup->setBrokerUrl(brokerUrl); diff --git a/qpid/cpp/src/qpid/ha/HaPlugin.cpp b/qpid/cpp/src/qpid/ha/HaPlugin.cpp index fc9e48411d..e9b3d4d311 100644 --- a/qpid/cpp/src/qpid/ha/HaPlugin.cpp +++ b/qpid/cpp/src/qpid/ha/HaPlugin.cpp @@ -56,6 +56,7 @@ struct HaPlugin : public Plugin { void initialize(Plugin::Target& target) { broker::Broker* broker = dynamic_cast<broker::Broker*>(&target); if (broker && settings.enabled) { + QPID_LOG(notice, "HA: Enabled"); haBroker.reset(new ha::HaBroker(*broker, settings)); } else QPID_LOG(notice, "HA: Disabled"); diff --git a/qpid/cpp/src/qpid/ha/QueueReplicator.cpp b/qpid/cpp/src/qpid/ha/QueueReplicator.cpp index 98b431fc10..7351a8d74d 100644 --- a/qpid/cpp/src/qpid/ha/QueueReplicator.cpp +++ b/qpid/cpp/src/qpid/ha/QueueReplicator.cpp @@ -31,7 +31,6 @@ #include "qpid/framing/FieldTable.h" #include "qpid/log/Statement.h" #include <boost/shared_ptr.hpp> -#include <sstream> namespace { const std::string QPID_REPLICATOR_("qpid.replicator-"); @@ -54,9 +53,7 @@ std::string QueueReplicator::replicatorName(const std::string& queueName) { QueueReplicator::QueueReplicator(boost::shared_ptr<Queue> q, boost::shared_ptr<Link> l) : Exchange(replicatorName(q->getName()), 0, q->getBroker()), queue(q), link(l) { - std::stringstream ss; - ss << "HA: Backup " << queue->getName() << ": "; - logPrefix = ss.str(); + logPrefix = "HA: Backup " + queue->getName() + ": "; QPID_LOG(info, logPrefix << "Created, settings: " << q->getSettings()); } diff --git a/qpid/cpp/src/tests/ha_tests.py b/qpid/cpp/src/tests/ha_tests.py index 982a405ada..dd3ed3847c 100755 --- a/qpid/cpp/src/tests/ha_tests.py +++ b/qpid/cpp/src/tests/ha_tests.py @@ -49,6 +49,10 @@ class HaBroker(Broker): assert os.system( "qpid-ha-tool --broker-addresses=%s %s"%(url, self.host_port())) == 0 +def set_broker_urls(brokers): + url = ",".join([b.host_port() for b in brokers]) + for b in brokers: b.set_broker_url(url) + class ShortTests(BrokerTest): """Short HA functionality tests.""" @@ -59,7 +63,7 @@ class ShortTests(BrokerTest): session.sender(address) return True except NotFound: return False - assert retry(check), "Timed out waiting for %s"%(address) + assert retry(check), "Timed out waiting for address %s"%(address) # Wait for address to become valid on a backup broker. def wait_backup(self, backup, address): @@ -342,6 +346,7 @@ class ShortTests(BrokerTest): s = session.sender("priority-queue; {create:always, node:{x-declare:{arguments:{'qpid.priorities':10, 'qpid.replicate':messages}}}}") priorities = [8,9,5,1,2,2,3,4,9,7,8,9,9,2] for p in priorities: s.send(Message(priority=p)) + # Can't use browse_backup as browser sees messages in delivery order not priority. self.wait_backup(backup, "priority-queue") r = self.connect_admin(backup).session().receiver("priority-queue") received = [r.fetch().priority for i in priorities] |
