Begin Exit Call

Marks the start of an exit call.

Format

ADExitCall appdynamics_begin_exit_call($type, $label, $properties, $exclusive=true)

Parameters

$type: The type of exit call. Must be one of the following:

  • AD_EXIT_HTTP
  • AD_EXIT_DB
  • AD_EXIT_CACHE
  • AD_EXIT_RABBITMQ
  • AD_EXIT_WEBSERVICE

$label: Label for the exit call in the Controller UI. Use a label under 40 characters long so that it fits in flowmaps.

$properties: An associative array of identifying properties—name/value pairs—for the exit call. Property names and values must be strings.

Each exit call type has its own properties. There is no validation of property names, but each exit type has traditionally used the names listed below.

Type
AD_EXIT_HTTP "HOST" "PORT" "URL" "QUERY_STRING"
AD_EXIT_DB "HOST" "PORT" "DATABASE" "VENDOR" "URL"
AD_EXIT_CACHE "SERVER POOL" "VENDOR"
AD_EXIT_RABBITMQ "HOST" "PORT" "EXCHANGE" "ROUTING KEY"
AD_EXIT_WEBSERVICE "SERVICE" "OPERATION" "SOAP ACTION" "VENDOR" "URL"

For AD_EXIT_DB exit call type it is advisable to specify at least HOST, PORT and VENDOR, as these properties are used by the Splunk AppDynamicsDB integration. The VENDOR property for AD_EXIT_DB backends should be one of the following:

  • MYSQL
  • POSTGRESQL
  • SQLSERVER
  • ORACLE
  • SYBASE
  • DB2

$exclusive: Boolean that Indicates whether the exit call is exclusive.

Only one exclusive exit call can be in progress at a time. For example, if this API is used to start an HTTP exit call and there is a mysql_connect() call immediately following it, the MySQL call will not be detected while the HTTP call is in progress. An exclusive exit call has to be explicitly ended before subsequent exit calls can be detected or initiated.

Exit calls are exclusive by default, but you can make them non-exclusive by setting this parameter to false.

See the last code sample in the 'Scenario: Application makes socket-based HTTP calls' in PHP Agent API User Guide for an example of how setting this flag to false can be used to support nested exit calls.

Return

Returns an instance of the ADExitCall class on success, NULL on error.