summaryrefslogtreecommitdiff
path: root/python/commands/qpid-printevents
diff options
context:
space:
mode:
Diffstat (limited to 'python/commands/qpid-printevents')
-rwxr-xr-xpython/commands/qpid-printevents67
1 files changed, 67 insertions, 0 deletions
diff --git a/python/commands/qpid-printevents b/python/commands/qpid-printevents
new file mode 100755
index 0000000000..970607c797
--- /dev/null
+++ b/python/commands/qpid-printevents
@@ -0,0 +1,67 @@
+#!/usr/bin/env python
+
+#
+# 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.
+#
+
+import os
+import optparse
+import sys
+import socket
+import time
+from qpid.qmfconsole import Console, Session
+
+class EventConsole(Console):
+ def event(self, broker, event):
+ print event
+
+ def heartbeat(self, agent, timestamp):
+ print "Heartbeat"
+
+##
+## Main Program
+##
+def main():
+ _usage = "%prog [options] [broker-addr]..."
+ _description = \
+"""Collect and print events from one of more Qpid message brokers. If no broker-addr is
+supplied, %prog will connect to 'localhost:5672'.
+broker-addr is of the form: [username/password@] hostname | ip-address [:<port>]
+ex: localhost, 10.1.1.7:10000, broker-host:10000, guest/guest@localhost
+"""
+ p = optparse.OptionParser(usage=_usage, description=_description)
+
+ options, arguments = p.parse_args()
+ if len(arguments) == 0:
+ arguments.append("localhost")
+
+ console = EventConsole()
+ session = Session(console, rcvObjects=False, rcvHeartbeats=False)
+ for host in arguments:
+ session.addBroker(host)
+
+ try:
+ while (True):
+ time.sleep(10)
+ except KeyboardInterrupt:
+ print
+ sys.exit(0)
+
+if __name__ == '__main__':
+ main()
+