Provided by: trafficserver-dev_5.3.0-2ubuntu2_amd64 bug

NAME

       TSDebug - traffic Server Debugging APIs

SYNOPSIS

       #include <ts/ts.h>

       void TSDebug(const char * tag, const char * format, ...)

       void TSError(const char * tag, const char * format, ...)

       int TSIsDebugTagSet(const char * tag)

       void TSDebugSpecific(int debug_flag, const char * tag, const char * format, ...)

       void TSHttpTxnDebugSet(TSHttpTxn txnp, int on)

       void TSHttpSsnDebugSet(TSHttpSsn ssn, int on)

       int TSHttpTxnDebugGet(TSHttpTxn txnp)

       int TSHttpSsnDebugGet(TSHttpSsn ssn)

       const char* TSHttpServerStateNameLookup(TSServerState state)

       const char* TSHttpHookNameLookup(TSHttpHookID hook)

       const char* TSHttpEventNameLookup(TSEvent event)

       void TSAssert(expression)

       void TSReleaseAssert(expression)

DESCRIPTION

       TSError()  is  similar  to  printf()  except  that  instead of writing the output to the C
       standard output, it writes output to the Traffic Server error log.

       TSDebug() is the same as TSError() except that it only logs the debug message if the given
       debug tag is enabled. It writes output to the Traffic Server debug log.

       TSIsDebugTagSet() returns non-zero if the given debug tag is enabled.

       In  debug  mode,  TSAssert  Traffic  Server  to  prints  the  file  name,  line number and
       expression, and then aborts. In release mode,  the  expression  is  not  removed  but  the
       effects  of  printing  an  error message and aborting are. TSReleaseAssert prints an error
       message and aborts in both release and debug mode.

       TSDebugSpecific() emits a debug line even if the debug tag is turned off, as long as debug
       flag   is   enabled.   This   can   be   used  in  conjunction  with  TSHttpTxnDebugSet(),
       TSHttpSsnDebugSet(), TSHttpTxnDebugGet() and TSHttpSsnDebugGet() to  enable  debugging  on
       specific session and transaction objects.

       TSHttpServerStateNameLookup(), TSHttpHookNameLookup() and TSHttpEventNameLookup() converts
       the respective internal state to a string representation. This can be useful in  debugging
       (TSDebug()), logging and other types notifications.

EXAMPLES

       This  example  uses  TSDebugSpecific()  to log a message when a specific debugging flag is
       enabled:

          #include <ts/ts.h>

          // Produce information about a hook receiving an event
          TSDebug(PLUGIN_NAME, "Entering hook=%s, event=%s",
                  TSHttpHookNameLookup(hook), TSHttpEventNameLookup(event));

          // Emit debug message if "tag" is enabled or the txn debug
          // flag is set.
          TSDebugSpecifc(TSHttpTxnDebugGet(txn), "tag" ,
                  "Hello World from transaction %p", txn);

SEE ALSO

       TSAPI(3ts), printf(3)

COPYRIGHT

       2014, dev@trafficserver.apache.org