The perfdump utility is a Server Application Function (SAF) built into Proxy Server that collects various pieces of performance data from the Proxy Server internal statistics and displays them in ASCII text. The perfdump utility allows you to monitor a greater variety of statistics than those available through the Server Manager.
With perfdump, the statistics are unified. Rather than monitoring a single process, statistics are multiplied by the number of processes, which gives you a more accurate view of the server as a whole.
You can enable the perfdump SAF only after you have enabled the stats-xml function and you can only enable it by directly editing the obj.conf file.
Add the following object to your obj.conf file after the default object:
<Object name="perf">
Service fn="service-dump"
</Object>
Add the following to the default object:
NameTrans fn=assign-name from="/.perf" name="perf"
Restart your server software.
Access perfdump by entering this URL:
http://computer_name:proxyport/.perf
You can request the perfdump statistics and specify how frequently (in seconds) the browser should automatically refresh. The following example sets the refresh to every 5 seconds:
http://computer_name:proxyport/.perf?refresh=5
The following is sample perfdump output:
proxyd pid: 6751 Sun Java System Web Proxy Server 4.0 B05/02/2005 15:32 (SunOS DOMESTIC) Server started Thu May 19 13:15:14 2005 Process 6751 started Thu May 19 13:15:14 2005 ConnectionQueue: ----------------------------------------- Current/Peak/Limit Queue Length 0/1/4096 Total Connections Queued 1 Average Queue Length (1, 5, 15 minutes) 0.00, 0.00, 0.00 Average Queueing Delay 0.09 milliseconds ListenSocket ls1: ------------------------ Address http://0.0.0.0:8081 Acceptor Threads 1 KeepAliveInfo: -------------------- KeepAliveCount 0/256 KeepAliveHits 0 KeepAliveFlushes 0 KeepAliveRefusals 0 KeepAliveTimeouts 0 KeepAliveTimeout 30 seconds SessionCreationInfo: ------------------------ Active Sessions 1 Keep-Alive Sessions 0 Total Sessions Created 48/128 CacheInfo: ------------------ enabled yes CacheEntries 0/1024 Hit Ratio 0/0 ( 0.00%) Maximum Age 0 Native pools: --------------------------- NativePool: Idle/Peak/Limit 1/1/128 Work Queue Length/Peak/Limit 0/0/0 Server DNS cache disabled Async DNS disabled Performance Counters: ------------------------------------------------ ..........................Average Total Percent Total number of requests: 1 Request processing time: 0.2559 0.2559 default-bucket (Default bucket) Number of Requests: 1 (100.00%) Number of Invocations: 7 (100.00%) Latency: 0.2483 0.2483 ( 97.04%) Function Processing Time: 0.0076 0.0076 ( 2.96%) Total Response Time: 0.2559 0.2559 (100.00%) Sessions: ---------------------------- Process Status Function 6751 response service-dump proxyd pid: 6751 Sun Java System Web Proxy Server 4.0 B05/02/2005 15:32 (SunOS DOMESTIC) Server started Thu May 19 13:15:14 2005 Process 6751 started Thu May 19 13:15:14 2005 ConnectionQueue: ----------------------------------------- Current/Peak/Limit Queue Length 0/1/4096 Total Connections Queued 1 Average Queue Length (1, 5, 15 minutes) 0.00, 0.00, 0.00 Average Queueing Delay 0.09 milliseconds ListenSocket ls1: ------------------------ Address http://0.0.0.0:8081 Acceptor Threads 1 KeepAliveInfo: -------------------- KeepAliveCount 0/256 KeepAliveHits 0 KeepAliveFlushes 0 KeepAliveRefusals 0 KeepAliveTimeouts 0 KeepAliveTimeout 30 seconds SessionCreationInfo: ------------------------ Active Sessions 1 Keep-Alive Sessions 0 Total Sessions Created 48/128 CacheInfo: ------------------ enabled yes CacheEntries 0/1024 Hit Ratio 0/0 ( 0.00%) Maximum Age 0 Native pools: ---------------------------- NativePool: Idle/Peak/Limit 1/1/128 Work Queue Length/Peak/Limit 0/0/0 Server DNS cache disabled Async DNS disabled Performance Counters: ------------------------------------------------ Average Total Percent Total number of requests: 1 Request processing time: 0.2559 0.2559 default-bucket (Default bucket) Number of Requests: 1 (100.00%) Number of Invocations: 7 (100.00%) Latency: 0.2483 0.2483 ( 97.04%) Function Processing Time: 0.0076 0.0076 ( 2.96%) Total Response Time: 0.2559 0.2559 (100.00%) Sessions: ---------------------------- Process Status Function 6751 response service-dump |
For more information about these parameters, see “Using Statistics to Tune Your Server” on Chapter 2 of the Sun ONE Web Server 6.1 Performance Tuning, Sizing, and Scaling Guide.
You need to create an ACL for the /.perf URI if you want to limit the users who can view the perfdump statistics for your server from a browser.
The ACL file must also be referenced in the perf object definition in the obj.conf file. For example, if you created a named ACL for the /.perf URI, you would need to reference the ACL file in a PathCheck statement in the object definition as follows:
<Object name="perf">
PathCheck fn="check-acl" acl="perf.acl"
Service fn="service-dump"
</Object>