[Red5] Graphing Red5 again

Andy Shaules bowljoman at hotmail.com
Thu Jul 24 07:22:38 PDT 2008


I love archive.org
  ----- Original Message ----- 
  From: Daniel Rossi 
  To: red5 at osflash.org 
  Sent: Thursday, July 24, 2008 7:00 AM
  Subject: Re: [Red5] Graphing Red5 again


  I spent all day working out a new trick up my sleeve to use a jmx client as a datasource for the rrd tools. 


  I discovered a working and friendly jmx client api called cmdline-jmxclient from the archive.org people. I've had to extend it to display bean and domain listings the way i want and to customise connections. 


  There is even sub commands to call mbean methods, but ive yet to work it out or really need that yet, 


  The output is something like this


  org.electroteque.client.JMXClient2 -h localhost -p 9999 -l red5 -u red5user --password changeme -b org.red5.server:type=GlobalScope,name=default -c ActiveConnections -c ActiveClients


  ActiveConnections: 1
  ActiveClients: 1




  org.electroteque.client.JMXClient2 -h localhost -p 9999 -l red5 -u red5user --password changeme --show-all


  ** snipped **


   ####################################################################################


   Domain: org.red5.server


   ####################################################################################
  ObjectName = org.red5.server:type=ClientRegistry
  ObjectName = org.red5.server:type=ContextLoader
  ObjectName = org.red5.server:type=GlobalScope,name=default
  ObjectName = org.red5.server:type=GlobalScope,name=default.red5.electrocode.net
  ObjectName = org.red5.server:type=GlobalScope,name=default.red52.electrocode.net
  ObjectName = org.red5.server:type=IoServiceManager,address=0.0.0.0,port=1935
  ObjectName = org.red5.server:type=QuartzSchedulingService
  ObjectName = org.red5.server:type=RTMPMinaTransport,address=0.0.0.0,port=1935
  ObjectName = org.red5.server:type=StreamClientRegistry
  ObjectName = org.red5.server:type=ThreadPool,name=threadpool
  ObjectName = org.red5.server:type=TomcatLoader
  ObjectName = org.red5.server:type=TomcatRTMPSLoader
  ObjectName = org.red5.server:type=TomcatRTMPTLoader
  ObjectName = org.red5.server:type=TomcatVHostLoader,name=test1.com,domain=www.test1.com
  ObjectName = org.red5.server:type=TomcatVHostLoader,name=test3.com,domain=www.test1.com
  ObjectName = org.red5.server:type=WebScope,name=SOSample
  ObjectName = org.red5.server:type=WebScope,name=bwcheck
  ObjectName = org.red5.server:type=WebScope,name=echo
  ObjectName = org.red5.server:type=WebScope,name=fitcDemo
  ObjectName = org.red5.server:type=WebScope,name=messageRecorder
  ObjectName = org.red5.server:type=WebScope,name=midiDemo
  ObjectName = org.red5.server:type=WebScope,name=oflaDemo
  ObjectName = org.red5.server:type=WebScope,name=test
  ObjectName = org.red5.server:type=WebScope,name=tutorial
  ObjectName = org.red5.server:type=WebScope,name=vhostLoader
  ObjectName = org.red5.server:type=WebScope,name=vhostTest1
  ObjectName = org.red5.server:type=WebScope,name=vhostTest2


   ####################################################################################


  org.electroteque.client.JMXClient2 -h localhost -p 9999 -l red5 -u red5user --password changeme -b org.red5.server:*




   ####################################################################################


   Domain: org.red5.server:*


   ####################################################################################
  org.red5.server:type=ClientRegistry
  org.red5.server:type=ContextLoader
  org.red5.server:type=GlobalScope,name=default
  org.red5.server:type=GlobalScope,name=default.red5.electrocode.net
  org.red5.server:type=GlobalScope,name=default.red52.electrocode.net
  org.red5.server:type=IoServiceManager,address=0.0.0.0,port=1935
  org.red5.server:type=QuartzSchedulingService
  org.red5.server:type=RTMPMinaTransport,address=0.0.0.0,port=1935
  org.red5.server:type=StreamClientRegistry
  org.red5.server:type=ThreadPool,name=threadpool
  org.red5.server:type=TomcatLoader
  org.red5.server:type=TomcatRTMPSLoader
  org.red5.server:type=TomcatRTMPTLoader
  org.red5.server:type=TomcatVHostLoader,name=test1.com,domain=www.test1.com
  org.red5.server:type=TomcatVHostLoader,name=test3.com,domain=www.test1.com
  org.red5.server:type=WebScope,name=SOSample
  org.red5.server:type=WebScope,name=bwcheck
  org.red5.server:type=WebScope,name=echo
  org.red5.server:type=WebScope,name=fitcDemo
  org.red5.server:type=WebScope,name=messageRecorder
  org.red5.server:type=WebScope,name=midiDemo
  org.red5.server:type=WebScope,name=oflaDemo
  org.red5.server:type=WebScope,name=test
  org.red5.server:type=WebScope,name=tutorial
  org.red5.server:type=WebScope,name=vhostLoader
  org.red5.server:type=WebScope,name=vhostTest1
  org.red5.server:type=WebScope,name=vhostTest2



  org.electroteque.client.JMXClient2 -h localhost -p 9999 -l red5 -u red5user --password changeme -b org.red5.server:type=GlobalScope,name=default --show-attr




  ####################################################################################


   Domain: org.red5.server:type=GlobalScope,name=default


   ####################################################################################
  Attributes:
   Parent: Attribute exposed for management (type=org.red5.server.api.IScope)
   Name: Attribute exposed for management (type=java.lang.String)
   Context: Attribute exposed for management (type=org.red5.server.api.IContext)
   Path: Attribute exposed for management (type=java.lang.String)
   Handler: Attribute exposed for management (type=org.red5.server.api.IScopeHandler)
   ContextPath: Attribute exposed for management (type=java.lang.String)
   Depth: Attribute exposed for management (type=int)
   ScopeNames: Attribute exposed for management (type=java.util.Iterator)
   Clients: Attribute exposed for management (type=java.util.Set)
   Connections: Attribute exposed for management (type=java.util.Iterator)
   ServiceHandlerNames: Attribute exposed for management (type=java.util.Set)
   PersistenceClass: Attribute exposed for management (type=java.lang.String)
   ActiveClients: Attribute exposed for management (type=int)
   ActiveConnections: Attribute exposed for management (type=int)
   ActiveSubscopes: Attribute exposed for management (type=int)
   MaxClients: Attribute exposed for management (type=int)
   MaxConnections: Attribute exposed for management (type=int)
   MaxSubscopes: Attribute exposed for management (type=int)
   TotalClients: Attribute exposed for management (type=int)
   TotalConnections: Attribute exposed for management (type=int)
   TotalSubscopes: Attribute exposed for management (type=int)
   Enabled: Attribute exposed for management (type=boolean)
   Running: Attribute exposed for management (type=boolean)
   AutoStart: Attribute exposed for management (type=boolean)
   ChildLoadPath: Attribute exposed for management (type=java.lang.String)
  Operations:
   getResource: Operation exposed for management
    Parameters 1, return type=org.springframework.core.io.Resource
     name=p1 type=java.lang.String 
   getResources: Operation exposed for management
    Parameters 1, return type=[Lorg.springframework.core.io.Resource;
     name=p1 type=java.lang.String 
   init: Operation exposed for management
    Parameters 0, return type=void
   start: Operation exposed for management
    Parameters 0, return type=boolean
   stop: Operation exposed for management
    Parameters 0, return type=void
   destroy: Operation exposed for management
    Parameters 0, return type=void
   getScope: Operation exposed for management
    Parameters 1, return type=org.red5.server.api.IScope
     name=p1 type=java.lang.String 
   getBasicScope: Operation exposed for management
    Parameters 2, return type=org.red5.server.api.IBasicScope
     name=p1 type=java.lang.String 
     name=p2 type=java.lang.String 
   getBasicScopeNames: Operation exposed for management
    Parameters 1, return type=java.util.Iterator
     name=p1 type=java.lang.String 
   hasChildScope: Operation exposed for management
    Parameters 2, return type=boolean
     name=p1 type=java.lang.String 
     name=p2 type=java.lang.String 
   hasChildScope: Operation exposed for management
    Parameters 1, return type=boolean
     name=p1 type=java.lang.String 
   hasHandler: Operation exposed for management
    Parameters 0, return type=boolean
   hasParent: Operation exposed for management
    Parameters 0, return type=boolean
   createChildScope: Operation exposed for management
    Parameters 1, return type=boolean
     name=p1 type=java.lang.String 
   registerServiceHandler: Operation exposed for management
    Parameters 2, return type=void
     name=p1 type=java.lang.String 
     name=p2 type=java.lang.Object 
   unregisterServiceHandler: Operation exposed for management
    Parameters 1, return type=void
     name=p1 type=java.lang.String 
   getServiceHandler: Operation exposed for management
    Parameters 1, return type=java.lang.Object
     name=p1 type=java.lang.String 
   hasContext: Operation exposed for management
    Parameters 0, return type=boolean






  This may be of interest to somebody. 


------------------------------------------------------------------------------


  _______________________________________________
  Red5 mailing list
  Red5 at osflash.org
  http://osflash.org/mailman/listinfo/red5_osflash.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://osflash.org/pipermail/red5_osflash.org/attachments/20080724/20a7b3d2/attachment-0001.html 


More information about the Red5 mailing list