X

SailFin Monitoring

Yamini Kalyandurga
Consulting Member of Technical Staff


http-equiv="content-type">
SailFin Monitoring












Monitoring
is a facility by which one can obtain various statistics from the SIP
stack. This is handled by separate monitoring managers corresponding to
each layer of SIP stack. These layers collect the statistics and
present them to the href="https://glassfish.dev.java.net/javaee5/monitoring/">GlassFish
monitoring framework. During startup, SIP monitoring managers get
registered along with GlassFish monitoring initialization. Internally,
there is a monitoring registry which tracks all the Stats objects and
converts these Stats objects into MBeans using reflection and presents
them as attributes to the management clients (CLI and GUI)



SIP monitoring can be configured dynamically i.e you can enable/disable
SIP monitoring on a running server instance.



Also note that SIP monitoring is introduced as a property under style="font-family: courier;">monitoring-service.module-monitoring-levels



cellspacing="2">


style="vertical-align: top; background-color: rgb(204, 204, 204);">style="font-family: courier;">bash-3.00$ ./asadmin get
server.monitoring-service.module-monitoring-levels.property.\*style="font-family: courier;">
server.monitoring-service.module-monitoring-levels.property.sip-service
= OFF


bash-3.00$








By default, monitoring is turned off. Run the following to turn it on:



cellspacing="2">


style="vertical-align: top; background-color: rgb(204, 204, 204);">style="font-family: courier;">bash-3.00$ ./asadmin set
server.monitoring-service.module-monitoring-levels.property.sip-service=LOW

server.monitoring-service.module-monitoring-levels.property.sip-service
= LOW


bash-3.00$





style="">

style="font-family: times new roman;" size="2">color="#000000">style="">Now, if you list all the monitoring services, you will find
the SIP monitoring layers:
size="2">style="">




cellspacing="2">


style="vertical-align: top; background-color: rgb(204, 204, 204);">style="font-family: courier;">bash-3.00$ ./asadmin list -m
server.\*|grep sip

server.sip-servicestyle="font-family: courier; color: rgb(102, 0, 204);">
server.sip-service.network-managerstyle="font-family: courier; color: rgb(102, 0, 204);">
server.sip-service.overload-protection-managerstyle="font-family: courier; color: rgb(102, 0, 204);">
server.sip-service.session-managerstyle="font-family: courier; color: rgb(102, 0, 204);">
server.sip-service.transaction-manager






style="">

The following statistics
are available for each of the SIP stack layers (i.e Network Manager,
Overload Protection Manager, Session (Dialog) Manager, Transaction
Manager)





cellspacing="2">


style="vertical-align: top; background-color: rgb(204, 204, 204);">style="font-family: courier;">bash-3.00$ ./asadmin get -m
server.sip-service.network-manager.\*

server.sip-service.network-manager.dotted-name
= server.sip-service.network-manager
style="color: rgb(102, 0, 204);">
server.sip-service.network-manager.invalidsipmessages-count
= 0


server.sip-service.network-manager.invalidsipmessages-description
= Invalid SIP Messages


server.sip-service.network-manager.invalidsipmessages-lastsampletime
= 1208929238550


server.sip-service.network-manager.invalidsipmessages-name
= InvalidSipMessages


server.sip-service.network-manager.invalidsipmessages-starttime
= 1208928868396


server.sip-service.network-manager.invalidsipmessages-unit
= count


server.sip-service.network-manager.receivedsiprequests-count
= 0


server.sip-service.network-manager.receivedsiprequests-description
= Received SIP Requests


server.sip-service.network-manager.receivedsiprequests-lastsampletime
= 1208929238549


server.sip-service.network-manager.receivedsiprequests-name
= ReceivedSipRequests


server.sip-service.network-manager.receivedsiprequests-starttime
= 1208928868396


server.sip-service.network-manager.receivedsiprequests-unit
= count


server.sip-service.network-manager.receivedsipresponses-count
= 0


server.sip-service.network-manager.receivedsipresponses-description
= Received SIP Responses


server.sip-service.network-manager.receivedsipresponses-lastsampletime
= 1208929238548


server.sip-service.network-manager.receivedsipresponses-name
= ReceivedSipResponses


server.sip-service.network-manager.receivedsipresponses-starttime
= 1208928868396


server.sip-service.network-manager.receivedsipresponses-unit
= count


server.sip-service.network-manager.sentsiprequests-count
= 0


server.sip-service.network-manager.sentsiprequests-description
= Sent SIP Requests


server.sip-service.network-manager.sentsiprequests-lastsampletime
= 1208929238546


server.sip-service.network-manager.sentsiprequests-name
= SentSipRequests


server.sip-service.network-manager.sentsiprequests-starttime
= 1208928868396


server.sip-service.network-manager.sentsiprequests-unit
= count


server.sip-service.network-manager.sentsipresponses-count
= 0


server.sip-service.network-manager.sentsipresponses-description
= Sent SIP Responses


server.sip-service.network-manager.sentsipresponses-lastsampletime
= 1208929238550


server.sip-service.network-manager.sentsipresponses-name
= SentSipResponses


server.sip-service.network-manager.sentsipresponses-starttime
= 1208928868396


server.sip-service.network-manager.sentsipresponses-unit
= count


bash-3.00$ ./asadmin get -m
server.sip-service.overload-protection-manager.\*

server.sip-service.overload-protection-manager.dotted-name
= server.sip-service.overload-protection-manager
style="color: rgb(102, 0, 204);">
server.sip-service.overload-protection-manager.overloadrejectedhttprequests-count
= 0


server.sip-service.overload-protection-manager.overloadrejectedhttprequests-description
= No Description was available
style="color: rgb(102, 0, 204);">
server.sip-service.overload-protection-manager.overloadrejectedhttprequests-lastsampletime
= 1208929255405


server.sip-service.overload-protection-manager.overloadrejectedhttprequests-name
= OverloadRejectedHttpRequests
style="color: rgb(102, 0, 204);">
server.sip-service.overload-protection-manager.overloadrejectedhttprequests-starttime
= 1208928868401


server.sip-service.overload-protection-manager.overloadrejectedhttprequests-unit
= count


server.sip-service.overload-protection-manager.overloadrejectedsiprequests-count
= 0


server.sip-service.overload-protection-manager.overloadrejectedsiprequests-description
= No Description was available
style="color: rgb(102, 0, 204);">
server.sip-service.overload-protection-manager.overloadrejectedsiprequests-lastsampletime
= 1208929255409


server.sip-service.overload-protection-manager.overloadrejectedsiprequests-name
= OverloadRejectedSipRequests


server.sip-service.overload-protection-manager.overloadrejectedsiprequests-starttime
= 1208928868401


server.sip-service.overload-protection-manager.overloadrejectedsiprequests-unit
= count


bash-3.00$ ./asadmin get -m server.sip-service.session-manager.\*

server.sip-service.session-manager.concurrentsipdialogs-count
= 0


server.sip-service.session-manager.concurrentsipdialogs-description
= Concurrent SIP dialogs


server.sip-service.session-manager.concurrentsipdialogs-lastsampletime
= 1208929272824


server.sip-service.session-manager.concurrentsipdialogs-name
= ConcurrentSipDialogs


server.sip-service.session-manager.concurrentsipdialogs-starttime
= 1208928868391


server.sip-service.session-manager.concurrentsipdialogs-unit
= count


server.sip-service.session-manager.dotted-name
= server.sip-service.session-manager
style="color: rgb(102, 0, 204);">
server.sip-service.session-manager.expiredsipdialogs-count
= 0


server.sip-service.session-manager.expiredsipdialogs-description
= Expired SIP dialogs


server.sip-service.session-manager.expiredsipdialogs-lastsampletime
= 1208929272828


server.sip-service.session-manager.expiredsipdialogs-name
= expiredSipDialogs


server.sip-service.session-manager.expiredsipdialogs-starttime
= 1208928868391


server.sip-service.session-manager.expiredsipdialogs-unit
= count


server.sip-service.session-manager.failedsipdialogs-count
= 0


server.sip-service.session-manager.failedsipdialogs-description
= Failed SIP dialogs


server.sip-service.session-manager.failedsipdialogs-lastsampletime
= 1208929272825


server.sip-service.session-manager.failedsipdialogs-name
= FailedSipDialogs


server.sip-service.session-manager.failedsipdialogs-starttime
= 1208928868391


server.sip-service.session-manager.failedsipdialogs-unit
= count


server.sip-service.session-manager.successfulsipdialogs-count
= 0


server.sip-service.session-manager.successfulsipdialogs-description
= Successful SIP dialogs


server.sip-service.session-manager.successfulsipdialogs-lastsampletime
= 1208929272826


server.sip-service.session-manager.successfulsipdialogs-name
= successfulSipDialogs


server.sip-service.session-manager.successfulsipdialogs-starttime
= 1208928868391


server.sip-service.session-manager.successfulsipdialogs-unit
= count


server.sip-service.session-manager.totalsipdialogcount-count
= 0


server.sip-service.session-manager.totalsipdialogcount-description
= Total SIP dialog count


server.sip-service.session-manager.totalsipdialogcount-lastsampletime
= 1208929272822


server.sip-service.session-manager.totalsipdialogcount-name
= totalSipDialogCount


server.sip-service.session-manager.totalsipdialogcount-starttime
= 1208928868391


server.sip-service.session-manager.totalsipdialogcount-unit
= count


server.sip-service.session-manager.totalsipdialoglifetime-count
= 0


server.sip-service.session-manager.totalsipdialoglifetime-description
= Total SIP Dialog life time


server.sip-service.session-manager.totalsipdialoglifetime-lastsampletime
= 1208929272825


server.sip-service.session-manager.totalsipdialoglifetime-name
= totalSipDialogLifeTime


server.sip-service.session-manager.totalsipdialoglifetime-starttime
= 1208928868391


server.sip-service.session-manager.totalsipdialoglifetime-unit
= count


bash-3.00$ ./asadmin get -m server.sip-service.transaction-manager.\*

server.sip-service.transaction-manager.dotted-name
= server.sip-service.transaction-manager
style="color: rgb(102, 0, 204);">
server.sip-service.transaction-manager.sipclienttransactions-count
= 0


server.sip-service.transaction-manager.sipclienttransactions-description
= SIP Client Transactions


server.sip-service.transaction-manager.sipclienttransactions-lastsampletime
= 1208929289660


server.sip-service.transaction-manager.sipclienttransactions-name
= sipClientTransactions


server.sip-service.transaction-manager.sipclienttransactions-starttime
= 1208928868399


server.sip-service.transaction-manager.sipclienttransactions-unit
= count


server.sip-service.transaction-manager.sipservertransactions-count
= 0


server.sip-service.transaction-manager.sipservertransactions-description
= SIP Server Transactions


server.sip-service.transaction-manager.sipservertransactions-lastsampletime
= 1208929289655


server.sip-service.transaction-manager.sipservertransactions-name
= sipServerTransactions


server.sip-service.transaction-manager.sipservertransactions-starttime
= 1208928868399


server.sip-service.transaction-manager.sipservertransactions-unit
= count


server.sip-service.transaction-manager.totalsiptransactioncount-count
= 0


server.sip-service.transaction-manager.totalsiptransactioncount-description
= Total SIP Transaction Count


server.sip-service.transaction-manager.totalsiptransactioncount-lastsampletime
= 1208929289660


server.sip-service.transaction-manager.totalsiptransactioncount-name
= totalSipTransactionCount


server.sip-service.transaction-manager.totalsiptransactioncount-starttime
= 1208928868399


server.sip-service.transaction-manager.totalsiptransactioncount-unit
= count


server.sip-service.transaction-manager.totalsiptransactiontime-count
= 0


server.sip-service.transaction-manager.totalsiptransactiontime-description
= Total SIP Transaction Time


server.sip-service.transaction-manager.totalsiptransactiontime-lastsampletime
= 1208929289656


server.sip-service.transaction-manager.totalsiptransactiontime-name
= totalSipTransactionTime


server.sip-service.transaction-manager.totalsiptransactiontime-starttime
= 1208928868399


server.sip-service.transaction-manager.totalsiptransactiontime-unit
= count






style="">

You can refer to
the
href="http://wiki.glassfish.java.net/Wiki.jsp?page=SailFinDocPage">SailFin
documentation
(still
evolving) for details on each of the stats.








Join the discussion

Comments ( 1 )
  • Daniel Pihl Monday, September 7, 2009

    Is it possible to configure the monitoring data to be persistent (between application server restarts)?


Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.