13 Monitoring Oracle Traffic Director Instances

Oracle Traffic Director records statistics about server activity at different levels—instances, virtual servers, listeners, connections, and origin servers. For example, for each instance of a configuration, Oracle Traffic Director collects statistics about the duration for which the instance has been running, number of requests processed, volume of data received and sent, number of responses that the instance sent of each type, average load, and so on. Similarly for each virtual server in an instance, Oracle Traffic Director collects statistics about the number of requests processed, volume of data received and sent, and the number of responses of each type. For a full list of the metrics that Oracle Traffic Director collects, see Metrics Tracked by Oracle Traffic Director.

This chapter describes the monitoring capabilities of Oracle Traffic Director. It contains the following sections:

Methods for Monitoring Oracle Traffic Director Instances

Table 13-1 summarizes the methods that you can use to view statistical data about an instance of a configuration and about individual virtual servers within an instance.

Table 13-1 Methods for Monitoring Oracle Traffic Director Instances

Monitoring Method Requirements Advantages

CLI

  • For one or all instances of a configuration: get-config-stats

  • For a specific instance:

    Summary in plain-text format: get-perfdump

    Detailed report in XML format: get-stats-xml

  • For a specific virtual server within one or all instances of a configuration: get-virtual-server-stats

  • For a specific origin-server pool: get-origin-server-stats

See Viewing Statistics Using the CLI.

Administration server must be running.

Enabled by default.

Accessible even when request-processing threads are hanging.

Browser

  • Detailed statistics for a specific virtual server in XML format

  • Summary report for a specific virtual server in plain-text format

See Viewing stats-xml and perfdump Reports Through a Browser.

Must be enabled and configured explicitly.

See Configuring URI Access to Statistics Reports.

The administration server need not be running. It is sufficient if the instance is running.

SNMP

Must be configured explicitly.

See Monitoring Using SNMP.

Statistics available through network management systems.

Configuring Statistics-Collection Settings

When you create an Oracle Traffic Director configuration, statistics collection is enabled by default, with five seconds as the update interval. You can disable, enable, and configure statistics collection by using either the administration console or the CLI.

Note:

The CLI examples in this section are shown in shell mode (tadm>). For information about invoking the CLI shell, see Accessing the Command-Line Interface.

Configuring Statistics-Collection Settings Using the Administration Console

To configure statistics-collection settings by using the administration console, do the following:

  1. Log in to the administration console, as described in Accessing the Administration Console.
  2. Click the Configurations button that is situated at the upper left corner of the page.

    A list of the available configurations is displayed.

  3. Select the configuration for which you want to configure statistics-collection settings.
  4. In the navigation pane, expand Advanced Settings, and select Monitoring.

    The Monitoring Settings page is displayed.

  5. Go to the Statistics Collection section of the page.
  6. Specify the parameters that you want to change.

    Note:

    When deciding the statistics-collection interval, remember that frequent collection of statistics affects performance.

    On-screen help and prompts are provided for all of the parameters.

    When you change the value in a field or tab out of a text field that you changed, the Save button near the upper right corner of the page is enabled.

    At any time, you can discard the changes by clicking the Reset button.

  7. After making the required changes, click Save.
    • A message, confirming that the updated configuration was saved, is displayed in the Console Messages pane.

    • In addition, the Deployment Pending message is displayed at the top of the main pane. You can either deploy the updated configuration immediately by clicking Deploy Changes, or you can do so later after making further changes as described in Deploying a Configuration.

Configuring Statistics-Collection Settings Using the CLI

  • To view the current statistics-collection properties, run the get-stats-prop command, as shown in the following example:

    tadm> get-stats-prop --config=soa
    enabled=true
    interval=15
    profiling=true
    
  • To configure statistics-collection properties, run the set-stats-prop command.

    For example, the following command changes the interval at which statistics are updated for the configuration soa to 10 seconds.

    tadm> set-stats-prop --config=soa interval=10OTD-70201 Command 'set-stats-prop' ran successfully.
    

    For the updated configuration to take effect, you should deploy it to the Oracle Traffic Director instances by using the deploy-config command.

    For more information about get-stats-prop and set-stats-prop, see the Oracle Traffic Director Command-Line Reference or run the commands with the --help option.

Configuring URI Access to Statistics Reports

As described in Methods for Monitoring Oracle Traffic Director Instances, in addition to viewing activity statistics by using the CLI, you can view the following reports through a URI.

  • stats-xml: Detailed statistics in XML format. For a sample, see Sample XML (stats-xml) Report.

  • perfdump: A summary report in plain-text format containing a subset of the data in the stats-xml report. For a sample, see Sample Plain-Text (perfdump) Report. Note that though you enable the perf-dump report at the virtual-server level, the data in the report is aggregated at the instance level.

Caution:

Configuring URI access to Oracle Traffic Director statistics reports for an Oracle Java Cloud Service instance can be a security risk.

Relative Advantages of URI-Based and CLI Access to Statistics Reports

  • The administration server need not be running for users to access the stats-xml and perfdump reports through URIs. When compared with accessing statistics by using the CLI, accessing URI-based reports involves lower processing overhead.

  • Access to statistics by using the CLI is enabled by default, but to view statistics through the browser, you should explicitly enable URI-based reporting and specify the URIs at which users can access the reports.

You can configure URI-based reporting of statistics by using either the administration console or the CLI.

Configuring URI Access to Statistics Using the Administration Console

To configure URI-based reporting by using the administration console, do the following:

  1. Log in to the administration console, as described in Accessing the Administration Console.
  2. Click the Configurations button that is situated at the upper left corner of the page.

    A list of the available configurations is displayed.

  3. Select the configuration for which you want to configure URI-based reports.
  4. In the navigation pane, expand Virtual Servers, and select the virtual server for which you want to configure URI-based reports.

    The Virtual Server Settings page is displayed.

  5. Go to the Monitoring section of the page.
    • To enable URI-based reporting in XML format, select the XML Report check box and specify a valid URI.

    • To enable URI-based reporting in plain-text format, select the Plain Text Report check box and specify a valid URI for the report.

    On-screen help and prompts are provided for all of the parameters.

    When you change the value in a field or tab out of a text field that you changed, the Save button near the upper right corner of the page is enabled.

    At any time, you can discard the changes by clicking the Reset button.

  6. After making the required changes, click Save.
    • A message, confirming that the updated configuration was saved, is displayed in the Console Messages pane.

    • In addition, the Deployment Pending message is displayed at the top of the main pane. You can either deploy the updated configuration immediately by clicking Deploy Changes, or you can do so later after making further changes as described in Deploying a Configuration.

Configuring URI Access to Statistics in XML Format Using the CLI

Note:

The CLI examples in this section are shown in shell mode (tadm>). For information about invoking the CLI shell, see Accessing the Command-Line Interface.

  • To view the current XML reporting settings, run the get-stats-xml-prop command, as shown in the following example:

    tadm> get-stats-xml-prop --config=soa --vs=vs1
    enabled=false
    uri=/stats-xml(|/*)
    
  • To enable and configure URI-based XML reporting, run the enable-stats-xml command.

    For example, the following command enables URI-based statistics reporting in XML format for the virtual server vs1 in the configuration soa and specifies that the report should be available at the URI /stats.

    tadm> enable-stats-xml --config=soa --vs=vs1 --uri=/stats
    OTD-70201 Command 'enable-stats-xml' ran successfully.
    
  • To disable URI-based XML reporting, run the disable-stats-xml command, as shown in the following example:

    tadm> disable-stats-xml --config=soa --vs=vs1
    OTD-70201 Command 'disable-stats-xml' ran successfully.
    

For the updated configuration to take effect, you should deploy it to the Oracle Traffic Director instances by using the deploy-config command.

Configuring URI Access to Statistics in Plain-Text Format Using the CLI

  • To view the plain-text reporting settings, run the get-perfdump-prop command, as shown in the following example:

    tadm> get-perfdump-prop --config=soa --vs=vs1
    enabled=true
    uri=/.perf
    
  • To enable and configure the plain-text reporting, run the enable-perfdump command.

    For example, the following command enables URI-based statistics reporting in plain-text format for the virtual server vs1 in the configuration soa and specifies that the report should be available at the URI /perf.

    tadm> enable-perfdump --config=soa --vs=vs1 --uri=/perf
    OTD-70201 Command 'enable-perfdump' ran successfully.
    
  • To disable URI-based plain-text reporting, run the disable-perfdump command, as shown in the following example:

    tadm> disable-perfdump --config=soa --vs=vs1
    OTD-70201 Command 'disable-perfdump' ran successfully.
    

For the updated configuration to take effect, you should deploy it to the Oracle Traffic Director instances by using the deploy-config command.

For more information about the CLI commands mentioned in this section, see the Oracle Traffic Director Command-Line Reference or run the commands with the --help option.

Viewing Statistics Using the CLI

By using the CLI, you can view statistics for one or all instances of a configuration, for a specific virtual server, for a specific origin-server pool, and for a specific TCP proxy.

Note:

The CLI examples in this section are shown in shell mode (tadm>). For information about invoking the CLI shell, see Accessing the Command-Line Interface.

  • To view statistics for one or all instances of a configuration, run the get-config-stats command, as shown in the following example:

    tadm> get-config-stats --config=soa
    countRequests=20
    rpsLast1MinAvg=0.06666667
    rpsLast5MinAvg=0.013377926
    rpsLast15MinAvg=0.0022099447
    countErrors=2
    epsLast1MinAvg=0.0
    epsLast5MinAvg=0.0
    epsLast15MinAvg=0.0
    maxResponseTime=23.001
    rtLast1MinAvg=1.0
    rtLast5MinAvg=1.0
    rtLast15MinAvg=1.0
    

    To view statistics for a specific instance of a configuration, run the get-config-stats command with the --node option.

  • To view aggregated virtual-server statistics for one or all instances of a configuration, run the get-virtual-server-stats command, as shown in the following example:

    tadm> get-virtual-server-stats --config=soa --vs=vs1
    count200=9
    count2xx=9
    count302=0
    count304=6
    count3xx=6
    count400=0
    count401=0
    count403=0
    count404=4
    count4xx=4
    count503=0
    count5xx=2
    countBytesReceived=42215
    countBytesTransmitted=69298
    countErrors=2
    countOpenConnections=0
    countOther=0
    countRequests=21
    rateBytesTransmitted=0
    vsName=vs1
    webapp-firewall.countRequestsAllowed=5
    webapp-firewall.countRequestsDenied=2
    webapp-firewall.countRequestsDenyDetected=0
    webapp-firewall.countRequestsDropDetected=0
    webapp-firewall.countRequestsDropped=1
    webapp-firewall.countRequestsIntercepted=10
    webapp-firewall.countRequestsRedirectDetected=0
    webapp-firewall.countRequestsRedirected=2
    websocket.countActiveConnections=1
    websocket.countBytesReceived=500
    websocket.countBytesTransmitted=200
    websocket.countRequestsAborted=0
    websocket.countRequestsTimedout=0
    websocket.countUpgradeRequests=1
    websocket.countUpgradeRequestsFailed=0
    websocket.countUpgradeRequestsRejected=1
    websocket.millisecondsConnectionActiveAverage=1000
    

    To view virtual-server statistics for a specific instance of a configuration, run the get-virtual-server-stats command with the --node option.

  • To view statistics for a specific origin-server pool, run the get-origin-server-stats command, as shown in the following example:

    tadm> get-origin-server-stats --config=soa --node=soa.example.com --origin-server-pool=wls1
    origin-server.1.backup=0
    origin-server.1.countActiveConnections=0
    origin-server.1.countBytesReceived=11776
    origin-server.1.countBytesTransmitted=15024
    origin-server.1.countConnectAttempts=41
    origin-server.1.countConnectFailures=0
    origin-server.1.countIdleConnections=1
    origin-server.1.countMarkedOffline=0
    origin-server.1.countRequests=44
    origin-server.1.countRequestsAborted=0
    origin-server.1.countRequestsTimedout=0
    origin-server.1.discovered=0
    origin-server.1.name=soa-app.example.com:1900
    origin-server.1.online=1
    origin-server.1.rampedUp=1
    origin-server.1.secondsOnline=20
    origin-server.1.type=http
    origin-server.1.websocket.countRequests=2
    origin-server.1.websocket.countUpgradeRejectedRequests=1
    origin-server.1.websocket.countFailedStrictRequests=1
    origin-server.1.websocket.countUpgradedRequests=1
    origin-server.1.websocket.countAbortedRequests=0
    origin-server.1.websocket.countTimeoutRequests=0
    origin-server.1.websocket.countBytesReceived=500
    origin-server.1.websocket.countBytesTransmitted=200
    origin-server.1.websocket.countActiveConnections=1
    origin-server.1.websocket.millisecondsConnectionActiveAverage=1000
    ...and so on for each of the origin servers in the specified pool
    
  • To view detailed statistics for an instance in XML format, run the get-stats-xml command, as shown in the following example:

    tadm> get-stats-xml --config=soa --node=soa.example.com
    

    For a sample of the report, see Sample XML (stats-xml) Report.

  • To view a summary of the statistics for an instance in plain-text format, run the get-perfdump command, as shown in the following example:

    tadm> get-perfdump --config=soa --node=soa.example.com
    

    For a sample of the report, see Sample Plain-Text (perfdump) Report.

  • To view statistics for a TCP proxy, run the get-tcp-proxy-stats command, as shown in the following example:

    tadm> get-tcp-proxy-stats --config=soa --tcp-proxy=tcp_proxy1
    interfaces:*:9898
    countActiveConnections=3
    countRequests=10
    countRequestsAborted=2
    countRequestsTimeout=4
    countBytesReceived=400
    countBytesTransmitted=200
    milliSecondsConnectionActiveAverage=1600
    mode=1
    name=tcp-proxy-1
    

For more information about the CLI commands mentioned in this section, see the Oracle Traffic Director Command-Line Reference or run the commands with the --help option.

Viewing stats-xml and perfdump Reports Through a Browser

If you enable URI access to statistics as described in Configuring URI Access to Statistics Reports, you can access the stats-xml and perfdump reports through a browser by using the following URL:

http://host:port/uri

host and port are the IP address (or host name) and port number of the virtual server for which you enabled URI access to statistics. uri is the location that you specified while enabling URI access. Note that if a virtual server is associated with multiple listeners, you can use the address host:port of any of the listeners to access the URI-based reports.

  • For example, if /perfdump is the configured URI for the plain-text report for the virtual server soa.example.com:1904, the URL that you should use to access the report would be the following:

    http://soa.example.com:1904/perfdump
    

    In the URL, you can also specify the interval, in seconds, after which the browser should refresh the perfdump report automatically, as shown in the following example:

    http://soa.example.com:1904/perfdump?refresh=5
    
  • Similarly, if /stats-xml is the configured URI for the XML report for the virtual server soa.example.com:1904, the URL that you should use to access the XML report would be the following:

    http://soa.example.com:1904/stats-xml
    

    You can limit the data that the XML report provides by specifying a URL query string indicating the elements that should not be displayed. If you do not include a query string, all the elements in the XML report are displayed.

    For example, the query string specified in the following URL suppresses display of the virtual-server and server-pool elements in the XML report.

    http://soa.example.com:1904/stats-xml?virtual-server=0&server-pool=0
    

    The following list shows the hierarchy of elements in the statistics XML report. Note that when you opt to suppress an element in the report, the child elements of that element are also suppressed.

    server
      connection-queue
      thread-pool
      profile (if profiling is enabled)
      process
        connection-queue-bucket
        thread-pool-bucket
        dns-bucket
        keepalive-bucket
        compression-bucket
        decompression-bucket
        thread
          request-bucket
          profile-bucket
      virtual-server
        request-bucket
        profile-bucket
      server-pool
        origin-server-bucket
      cache-bucket
      cpu-info
    

Monitoring Using SNMP

Simple Network Management Protocol (SNMP) is a standard that enables management of devices in a network from a network management application running on a remote system. The network management application might, for example, show which servers in the network are running or stopped at any point in time, and the number and type of error messages received.

You can use SNMP to monitor the Oracle Traffic Director instances. To be able to do this, you should do the following:

  • Configure the instances to support monitoring through SNMP.

  • Configure the SNMP subagent on the nodes.

  • Start the SNMP subagent on the nodes.

This section contains the following topics:

Configuring Oracle Traffic Director Instances for SNMP Support

When you create a configuration, support for monitoring the instances through SNMP is enabled by default. You can disable, enable, and configure support for SNMP monitoring by using either the administration console or the CLI.

Configuring SNMP Support Using the Administration Console

To enable SNMP support for a configuration by using the administration console, do the following:

  1. Log in to the administration console, as described in Accessing the Administration Console.
  2. Click the Configurations button that is situated at the upper left corner of the page.

    A list of the available configurations is displayed.

  3. Select the configuration for which you want to enable SNMP support.
  4. In the navigation pane, expand Advanced Settings and select Monitoring.

    The Monitoring Settings page is displayed.

  5. In the SNMP section of the page, select the SNMP check box. The other parameters in the section are optional.

    On-screen help and prompts are provided for all of the parameters.

    When you change the value in a field or tab out of a text field that you changed, the Save button near the upper right corner of the page is enabled.

    At any time, you can discard the changes by clicking the Reset button.

  6. After making the required changes, click Save.
    • A message, confirming that the updated configuration was saved, is displayed in the Console Messages pane.

    • In addition, the Deployment Pending message is displayed at the top of the main pane. You can either deploy the updated configuration immediately by clicking Deploy Changes, or you can do so later after making further changes as described in Deploying a Configuration.

Configuring SNMP Support Using the CLI

  • To view the current SNMP settings for a configuration, run the get-snmp-prop command, as shown in the following example:

    tadm> get-snmp-prop --config=soa
    enabled=false
    
  • To enable SNMP support, run the set-snmp-prop command, as shown in the following example:

    tadm> set-snmp-prop --config=soa enabled=true
    OTD-70201 Command 'set-snmp-prop' ran successfully.
    

    For the updated configuration to take effect, you should deploy it to the Oracle Traffic Director instances by using the deploy-config command.

For more information about the CLI commands mentioned in this section, see the Oracle Traffic Director Command-Line Reference or run the commands with the --help option.

Configuring the SNMP Subagent

When Oracle Java Cloud Services creates an Oracle Traffic Director node, an SNMP subagent is created automatically. The SNMP subagent collects information about the instances running on the node.

The SNMP subagent's configuration settings, including the frequency at which the subagent updates statistics, the duration after which cached statistics are timed out, and the port through which the subagent process communicates, are stored in the following file:

INSTANCE_HOME/admin-server/config/snmpagt.conf

You can configure the SNMP subagent's settings by editing the snmpagt.conf file. Table 13-2 lists the key SNMP subagent parameters.

Table 13-2 SNMP Subagent Configuration Parameters

Parameter in smnpagt.conf Description Default Value

agentAddress

Ports at which the SNMP subagent receives requests

11161

statInterval

Statistics update frequency (seconds)

5

cacheTimeOut

Cache timeout period (seconds)

5

The syntax for entries in snmpagt.conf should be as described in the documentation for snmpd.conf at: http://www.net-snmp.org/docs/man/snmpd.conf.html.

After configuring the SNMP subagent on a node, you should start it. The subagent then begins collecting statistics about the Oracle Traffic Director instances on the node.

Starting and Stopping the SNMP Subagent

You can start and stop the SNMP subagent on a node by using either the administration console or the CLI.

Starting and Stopping the SNMP Subagent Using the Administration Console

To start or stop the SNMP subagent on a node by using the administration console, do the following:

  1. Log in to the administration console, as described in Accessing the Administration Console.

  2. Click the Nodes button that is situated near the upper left corner of the page.

    A list of available nodes is displayed.

  3. From the list of nodes, select the node for which you want to start or stop the SNMP subagent.

    The General Settings page is displayed.

    • To start the SNMP subagent, click Start SNMP Subagent. The status changes to Running.

    • To stop the subagent, click Stop SNMP Subagent. The status changes to Running.

  4. Specify the parameters that you want to change, and then click Save.

    A message is displayed in the Console Messages pane indicating that the updated settings are saved.

  5. Restart the administration server by clicking Restart in the Common Tasks pane.

Starting and Stopping the SNMP Subagent Using the CLI

  • To start the SNMP subagent on one or more nodes, run the start-snmp-subagent, as shown in the following example:

    tadm> start-snmp-subagent --user=admin --port=3002 node1.example.com node2.example.com
    OTD-70210 Successfully started the SNMP subagent.
    

    Note:

    Alternatively, you can start the SNMP agent in agentx mode, by specifying the --agentx option when you run the start-snmp-subagent command.

    In agentx mode, the SNMP agent needs to communicate with the operating-system master agent (snmpd). So you must configure snmpd to listen to the agentx protocol, by doing the following:

    1. Add the socket path and socket path permissions in the ORACLE_HOME/admin-server/config/snmpagt.conf file, as shown in the following example:

      Before configuring for agentx

      agentuser admin123
      agentxsocket /tmp/snmpagt-a46e5844/snmpagt.socket
      

      After configuring for agentx

      agentxsocket /tmp/snmpagt-d985d39c/snmpagt.socket
      agentXPerms 777 admin123 other
      agentXPerms DIRPERMS 777 admin123
      
    2. Start snmpd daemon manually.

  • To stop the SNMP subagent on one or more nodes, run the stop-snmp-subagent, as shown in the following example:

    tadm> stop-snmp-subagent --user=admin --port=3002 node1.example.com
    OTD-70210 Successfully stopped the SNMP subagent.
    

For more information about the CLI commands mentioned in this section, see the Oracle Traffic Director Command-Line Reference or run the commands with the --help option.

Viewing Statistics Using snmpwalk

Note:

The prerequisites for using snmpwalk are as follows:

  • For Linux: Make sure the contents snmpwalk package net-snmp-utils-5.3.2.2-9.0.1.el5_5.1 RPM or higher and standard MIBS package net-snmp-5.3.2.2-9.0.1.el5_5.1 RPM or higher are installed.

  • For Solaris: Make sure the package located at system/management/snmp/net-snmp is installed. This package contains contents snmpwalk and standards MIBS.

Note:

Prior to using snmpwalk, if required, you can set most of the snmpwalk options in the snmp.conf file, located at <user-home>/.snmp/snmp.conf. The advantage of setting various options in snmp.conf is that after setting the options, you can run the snmpwalk command without specifying the options that are already set in snmp.conf. For example, snmp.conf enables you to set the following options:

defaultport  11161
defversion  2c
defcommunity  public
mibdirs  +/usr/local/share/snmp/mibs #
mibdirs  + <otd_install_root>/lib/snmp #
mibs +ORACLE-TRAFFICDIRECTOR-MIB

After setting the above options, snmpwalk can be run as follows:

snmpwalk  <hostname> ORACLE-TRAFFICDIRECTOR-MIB::instanceTable

For information about all the options that can be set using snmp.conf, see the man-pages for snmp.conf.

SNMP Version 2c

You can view statistics collected by the SNMP subagent, by using the snmpwalk command-line utility that is available in the Net-SNMP suite of applications (http://www.net-snmp.org).

The following is the syntax of the snmpwalk command:

> snmpwalk -c public -v 2c host:port oid
  • host is the host name of the Oracle Traffic Director node that you want to monitor.

  • port is the listen port of the SNMP subagent on the node. The default port specified in the snmpagt.conf file is 11161.

  • oid is the unique object identifier series for which you want to view statistics. The OID for the Oracle Traffic Director product is 1.3.6.1.4.1.111.19.190.

    Note:

    OIDs are assigned and maintained by the Internet Assigned Numbers Authority. In the OID for Oracle Traffic Director, the first six numbers, 1.3.6.1.4.1, represent private enterprises, 111 is the unique identifier for Oracle and 19.190 represents the Oracle Traffic Director product. For more information about the structure of OIDs, see RFC 2578 (http://tools.ietf.org/html/rfc2578).

SNMP Version 3

To monitor statistics by using SNMP v3, do the following:

  1. Create an SNMP v3 user by running the following command as the root user:
    $ sudo net-snmp-config --create-snmpv3-user -ro -a MD5 -A abcd1234 otdadmin
    

    This command does the following:

    • Adds the following entry in /var/net-snmp/snmpd.conf:

      createUser otdadmin MD5 "abcd1234" DES
      
    • Adds the following entry in /etc/net-snmp/snmp/snmpd.conf:

      rouser otdadmin
      
  2. Start and stop snmpd.
    $ sudo /etc/init.d/snmpd start
    Starting snmpd:                                            [  OK  ]
    
    $ sudo /etc/init.d/snmpd stop
    Stopping snmpd:                                            [  OK  ]
    

    As a result of starting and stopping snmpd, the createUser entry in the /var/net-snmp/snmpd.conf file changes as shown in the following example:

    usmUser 1 3 0x80001f8801819ee527 0x676164686100 0x676164686100 NULL
     .1.3.6.1.6.3.10.1.1.2 
    0x8b6a9b458c0cb628aa5ba10ebbec48e7 .1.3.6.1.6.3.10.1.2.2
     0x8b6a9b458c0cb628aa5ba10ebbec48e7 ""
    

    In this example, 0x80001f8801819ee527 is the generated engine ID.

  3. Run the SNMP agent in agentx mode.

    Run snmpwalk by using the following command. The default port for snmpd is 161

    snmpwalk -v3 -u otdadmin -l authNoPriv  -a MD5 -A abcd1234 localhost:161 1.3.6.1.4.1
    

Enabling the snmpwalk Command to Show MIB Object Names Instead of Numeric OIDs

When you run the snmpwalk command, the output would be as follows:

SNMPv2-SMI::enterprises.111.19.190.1.20.1.2.0.0 = INTEGER: 645
SNMPv2-SMI::enterprises.111.19.190.1.20.1.3.0.0 = Gauge32: 4
SNMPv2-SMI::enterprises.111.19.190.1.20.1.4.0.0 = Gauge32: 4
SNMPv2-SMI::enterprises.111.19.190.1.20.1.10.0.0 = Gauge32: 0
SNMPv2-SMI::enterprises.111.19.190.1.20.1.11.0.0 = Gauge32: 3072
SNMPv2-SMI::enterprises.111.19.190.1.20.1.12.0.0 = Counter64: 0
SNMPv2-SMI::enterprises.111.19.190.1.20.1.13.0.0 = Counter64: 0
SNMPv2-SMI::enterprises.111.19.190.1.20.1.14.0.0 = STRING: "0.0000"

Each line in the output shows the value of a metric, but because the OID is shown in numeric format, it is difficult to identify the name of the specific metric. The snmpwalk utility can resolve numeric OIDs to textual names by using the management information base (MIB) definitions. For Oracle Traffic Director, the MIB definitions file is available in the following directory:

ORACLE_HOME/lib/snmp/ORACLE-TRAFFICDIRECTOR-MIB.txt

To enable the snmpwalk command to show MIB object names instead of numeric OIDs, do one of the following:

  • Set the MIBS environment variable on the host to point to the Oracle Traffic Director MIB.

    > set env MIBS=+ORACLE-TRAFFICDIRECTOR-MIB
    

    Then, run the snmpwalk command and either grep the output for the required MIB object or explicitly specify the required MIB object name.

    For example, to view statistics for proxy cache parameters for an Oracle Traffic Director instance running on the node app1, run the following command:

    > snmpwalk snmpwalk -c public -v 2c app1:11161 ORACLE-TRAFFICDIRECTOR-MIB::proxyCacheTable
    
    ORACLE-TRAFFICDIRECTOR-MIB::proxyCacheEnabledFlag.0.0 = INTEGER: enabled(1)
    ORACLE-TRAFFICDIRECTOR-MIB::proxyCacheCountEntries.0.0 = Counter64: 0
    ORACLE-TRAFFICDIRECTOR-MIB::proxyCacheSizeHeap.0.0 = Counter64: 16498
    ORACLE-TRAFFICDIRECTOR-MIB::proxyCacheCountContentHits.0.0 = Counter64: 0
    ORACLE-TRAFFICDIRECTOR-MIB::proxyCacheCountContentMisses.0.0 = Counter64: 0
    ORACLE-TRAFFICDIRECTOR-MIB::proxyCacheCountHits.0.0 = Counter64: 0
    ...
    
  • Specify the Oracle Traffic Director MIB explicitly for the snmpwalk command by using the -m option.

    For example, to view the origin-server names for an Oracle Traffic Director instance running on the local host, run the following command:

    > snmpwalk -c public -v 2c -m $ORACLE_HOME/lib/snmp/ORACLE-TRAFFICDIRECTOR-MIB.txt localhost:11161 ORACLE-TRAFFICDIRECTOR-MIB::originServerName
    

For a list of the SNMP MIB object names that you can use to query for specific statistics, see Metrics Tracked by Oracle Traffic Director.

For more information about snmpwalk, see the documentation at: http://www.net-snmp.org/docs/man/snmpwalk.html.

Sample XML (stats-xml) Report

This section contains a sample statistics report in XML format, which you can view by using the get-stats-xml command or through a URI. For more information, see Viewing Statistics Using the CLI and Viewing stats-xml and perfdump Reports Through a Browser.

Note that the values shown in this sample report might not be meaningful. The sample report is provided here merely to indicate the metrics that the report includes and to give you a general idea about the format and structure of the report.

<stats versionMajor="1" versionMinor="3" flagEnabled="1">
    <server id="net-test" versionServer="Oracle Traffic Director 11.1.1.7.0 B01/31/2013 03:40 (Linux)"
                    timeStarted="1362099811" secondsRunning="451" ticksPerSecond="1000" maxProcs="1" maxThreads="10"
            flagProfilingEnabled="1" load1MinuteAverage="0.000000" load5MinuteAverage="0.020000"
            load15MinuteAverage="0.040000" rateBytesTransmitted="173858" rateBytesReceived="1056"
            requests1MinuteAverage="0.000000" requests5MinuteAverage="0.000000" requests15MinuteAverage="0.000000"
            errors1MinuteAverage="0.000000" errors5MinuteAverage="0.000000" errors15MinuteAverage="0.000000"
            responseTime1MinuteAverage="0.000000" responseTime5MinuteAverage="0.000000"
            responseTime15MinuteAverage="0.000000">
        <connection-queue id="cq1"/>
        <thread-pool id="thread-pool-0" name="NativePool"/>
        <profile id="profile-0" name="all-requests" description="All requests"/>
        <profile id="profile-1" name="default-bucket" description="Default bucket"/>
        <profile id="profile-2" name="cache-bucket" description="Cached responses"/>
        <process pid="25929" mode="active" timeStarted="1362099811" countConfigurations="1" 
                 sizeVirtual="238272" sizeResident="36464" fractionSystemMemoryUsage="0.0045">
            <connection-queue-bucket connectionQueueId="cq1" countTotalConnections="2" countQueued="0"
                                     peakQueued="1" maxQueued="2048" countOverflows="0" countTotalQueued="3"
                                     ticksTotalQueued="0" countQueued1MinuteAverage="0.000000" 
                                     countQueued5MinuteAverage="0.000000" countQueued15MinuteAverage="0.000000"/>
            <thread-pool-bucket threadPoolId="thread-pool-0" countIdleThreads="1" countThreads="1" 
                                maxThreads="128" countQueued="0" peakQueued="0" maxQueued="0"/>
            <dns-bucket flagCacheEnabled="1" countCacheEntries="0" maxCacheEntries="1024" countCacheHits="0" 
                        countCacheMisses="0" flagAsyncEnabled="0" countAsyncNameLookups="0" countAsyncAddrLookups="0" countAsyncLookupsInProgress="0"/>
            <keepalive-bucket countConnections="0" maxConnections="4096" countHits="0" countFlushes="0" countRefusals="0"
                              countTimeouts="0" secondsTimeout="30"/>
            <compression-bucket countRequests="0" bytesInput="0" bytesOutput="0" compressionRatio="0.000000"
                                pageCompressionAverage="0.000000"/>
            <decompression-bucket countRequests="0" bytesInput="0" bytesOutput="0"/>
            <thread mode="idle" timeStarted="1362099811" connectionQueueId="keep-alive">
                <request-bucket countRequests="0" countBytesReceived="0" countBytesTransmitted="0" rateBytesTransmitted="0"
                                countOpenConnections="0" count2xx="0" count3xx="0" count4xx="0" count5xx="0"
                                countOther="0" count200="0" count302="0" count304="0" count400="0" count401="0"
                                count403="0" count404="0" count503="0"/>
                <profile-bucket profile="profile-0" countCalls="0" countRequests="0" ticksDispatch="0" ticksFunction="0"/>
                <profile-bucket profile="profile-1" countCalls="0" countRequests="0" ticksDispatch="0" ticksFunction="0"/>
                <profile-bucket profile="profile-2" countCalls="0" countRequests="0" ticksDispatch="0" ticksFunction="0"/>
            </thread>
            <thread mode="idle" timeStarted="1362099811" connectionQueueId="keep-alive">
                <request-bucket countRequests="0" countBytesReceived="0" countBytesTransmitted="0" rateBytesTransmitted="0"
                                countOpenConnections="0" count2xx="0" count3xx="0" count4xx="0" count5xx="0" 
                                countOther="0" count200="0" count302="0" count304="0" count400="0" count401="0"
                                count403="0" count404="0" count503="0"/>
                <profile-bucket profile="profile-0" countCalls="0" countRequests="0" ticksDispatch="0" ticksFunction="0"/>
                <profile-bucket profile="profile-1" countCalls="0" countRequests="0" ticksDispatch="0" ticksFunction="0"/>
                <profile-bucket profile="profile-2" countCalls="0" countRequests="0" ticksDispatch="0" ticksFunction="0"/>
            </thread>
            <thread mode="idle" timeStarted="1362099811" connectionQueueId="cq1" clientAddress="10.229.131.192">
                <request-bucket countRequests="2" countBytesReceived="336" countBytesTransmitted="18174" rateBytesTransmitted="0"
                                countOpenConnections="0" count2xx="2" count3xx="0" count4xx="0" count5xx="0" countOther="0"
                                count200="2" count302="0" count304="0" count400="0" count401="0" count403="0" count404="0" count503="0"/>
                <profile-bucket profile="profile-0" countCalls="18" countRequests="2" ticksDispatch="0" ticksFunction="2"/>
                <profile-bucket profile="profile-1" countCalls="18" countRequests="2" ticksDispatch="0" ticksFunction="2"/>
                <profile-bucket profile="profile-2" countCalls="0" countRequests="0" ticksDispatch="0" ticksFunction="0"/>
            </thread>
            <thread mode="response" timeStarted="1362099811" function="stats-xml" connectionQueueId="cq1" 
                    virtualServerId="test" clientAddress="10.159.75.10" timeRequestStarted="1362100279014665">
                <request-bucket method="GET" uri="/stats-xml" countRequests="0" countBytesReceived="0" countBytesTransmitted="0" 
                                rateBytesTransmitted="0" countOpenConnections="0" count2xx="0" count3xx="0"
                                count4xx="0" count5xx="0" countOther="0" count200="0" count302="0" count304="0" count400="0"
                                count401="0" count403="0" count404="0" count503="0"/>
                <profile-bucket profile="profile-0" countCalls="0" countRequests="0" ticksDispatch="0" ticksFunction="0"/>
                <profile-bucket profile="profile-1" countCalls="0" countRequests="0" ticksDispatch="0" ticksFunction="0"/>
                <profile-bucket profile="profile-2" countCalls="0" countRequests="0" ticksDispatch="0" ticksFunction="0"/>
            </thread>
            <tcp-thread countPairConnections="0" countConnections="0"/>
            <tcp-thread countPairConnections="0" countConnections="0"/>
        </process>
        <virtual-server id="test" mode="active" interfaces="*:7011">
            <request-bucket method="GET" uri="/stats-xml" countRequests="2" countBytesReceived="336"
                            countBytesTransmitted="18174" rateBytesTransmitted="0" countOpenConnections="0"
                            count2xx="2" count3xx="0" count4xx="0" count5xx="0" countOther="0" count200="2" count302="0" count304="0"
                            count400="0" count401="0" count403="0" count404="0" count503="0"/>
            <profile-bucket profile="profile-0" countCalls="18" countRequests="2" ticksDispatch="0" ticksFunction="2"/>
            <profile-bucket profile="profile-1" countCalls="18" countRequests="2" ticksDispatch="0" ticksFunction="2"/>
            <profile-bucket profile="profile-2" countCalls="0" countRequests="0" ticksDispatch="0" ticksFunction="0"/>
            <websocket-bucket countUpgradeRequests="0" countUpgradeRequestsFailed="0" countUpgradeRequestsRejected="0"
                              countActiveConnections="0" countRequestsAborted="0" countRequestsTimedout="0" 
                              countBytesReceived="0" countBytesTransmitted="0" millisecondsConnectionActiveAverage="0"/>
        </virtual-server>
        <server-pool name="origin-server-pool-1" type="http" countRetries="0">
            <origin-server-bucket name="http://adc2120844:4005" flagOnline="1" flagDiscovered="0" flagRampedUp="1" type="generic" 
                                  flagBackup="0" secondsOnline="465" countDetectedOffline="0" countConnectAttempts="15" 
                                  countConnectFailures="0" countClosedConnections="14" countConnectionsClosedByOriginServer="0"
                                  countActiveConnections="0" countIdleConnections="1" countActiveStickyConnections="0"
                                  secondsKeepAliveTimeout="0" countRequestsAborted="0" countRequestsTimedout="0" 
                                  countStickyRequests="0" countRequests="0" countHealthCheckRequests="15" countBytesTransmitted="0" 
                                  countBytesReceived="0" weightResponseTime="1.00">
                <websocket-bucket countUpgradeRequests="0" countUpgradeRequestsFailed="0" countUpgradeRequestsRejected="0"
                                  countActiveConnections="0" countRequestsAborted="0" countRequestsTimedout="0" 
                                  countBytesReceived="0" countBytesTransmitted="0" millisecondsConnectionActiveAverage="0"/>
            </origin-server-bucket>
        </server-pool>
        <cache-bucket flagEnabled="1" countEntries="0" sizeHeapCache="16492" countContentHits="0" countContentMisses="0" countHits="0"
                      countRevalidationRequests="0" countRevalidationFailures="0"/>
        <cpu-info cpu="1" percentIdle="99.224155" percentUser="0.682178" percentKernel="0.093667"/>
        <cpu-info cpu="2" percentIdle="99.323128" percentUser="0.601763" percentKernel="0.075109"/>
    </server>
</stats>

Sample Plain-Text (perfdump) Report

This section contains a sample perfump statistics report that you can view by using the get-perfdump command or through a URI. For information about viewing the plain-text report, see Viewing Statistics Using the CLI and Viewing stats-xml and perfdump Reports Through a Browser.

Note that the values shown in this sample report might not be meaningful. The sample report is provided here merely to indicate the metrics that the report includes and to give you a general idea about the format of the report.

Oracle Traffic Director 11.1.1.7.0 B01/14/2013 04:13 (Linux)
 
Server started Wed Feb 27 23:53:18 2013
Process 10909 started Wed Feb 27 23:53:18 2013
 
ConnectionQueue:
-----------------------------------------
Current/Peak/Limit Queue Length            0/0/1536
Total Connections Queued                   0
Average Queue Length (1, 5, 15 minutes)    0.00, 0.00, 0.00
Average Queueing Delay                     0.00 milliseconds
 
ListenSocket http-listener-1:
------------------------
Address                   0.0.0.0:8786
Acceptor Threads          2
Default Virtual Server    config1
 
KeepAliveInfo:
--------------------
KeepAliveCount        0/3072
KeepAliveHits         0
KeepAliveFlushes      0
KeepAliveRefusals     0
KeepAliveTimeouts     0
KeepAliveTimeout      30 seconds
 
SessionCreationInfo:
------------------------
Active Sessions           0
Keep-Alive Sessions       0
Total Sessions Created    6/258
 
Proxy Cache:
---------------------------
Proxy Cache Enabled              yes
Object Cache Entries             0
Cache lookup (hits/misses)       0/0
Requests served from Cache       0
Revalidation (successful/total)  0/0 (  0.00%)
Heap space used                  16501
 
TCP thread pool :
------------------
Enabled               yes
CountConnectionPairs  0
CountDescriptors      0
CountHalfClosed       0
 
Native pools:
----------------------------
NativePool:
Idle/Peak/Limit               1/1/128
Work Queue Length/Peak/Limit  0/0/0
 
DNSCacheInfo:
------------------
enabled             yes
CacheEntries        0/1024
HitRatio            0/0 (  0.00%)
 
Async DNS disabled
 
Performance Counters:
------------------------------------------------
                           Average         Total      Percent
 
Total number of requests:                      0
Request processing time:    0.0000        0.0000
 
default-bucket (Default bucket)
Number of Requests:                            0    (  0.00%)
Number of Invocations:                         0    (  0.00%)
Latency:                    0.0000        0.0000    (  0.00%)
Function Processing Time:   0.0000        0.0000    (  0.00%)
Total Response Time:        0.0000        0.0000    (  0.00%)
 
Origin server statistics:
---------------------------------------------------------------------------------------------------------------------------------------------------
Pool-name             Host:Port       Status   ActiveConn  IdleConn  StickyConn  Timeouts  Aborted  Sticky-Reqs  Total-Reqs  BytesTrans  BytesRecvd
 
origin-server-pool-1  http://test     Offline  0           0         0           0         0        0            0           0           0
origin-server-pool-2  http://test:84  Offline  0           0         0           0         0        0            0           0           0
 
Sessions:
----------------------------------------------------------------------
Process  Status  Client  Age  VS  Method  URI  Function  Origin-Server
 
 
TCP Proxy:
------------------------------------
Active Connections                  0
Avg Duration                        0.00 seconds
Requests (timeout/aborted/total)    0/0/0