Provided by: libglobus-ftp-client-doc_7.6-1_all bug

NAME

       Netlogger Throughput Plugin -

   Macros
       #define GLOBUS_FTP_CLIENT_THROUGHPUT_NL_PLUGIN_MODULE
           (&globus_i_ftp_client_throughput_nl_plugin_module)

   Functions
       globus_result_t globus_ftp_client_throughput_nl_plugin_init (globus_ftp_client_plugin_t
           *plugin, const char *nl_url, const char *prog_name, const char *opaque_string)
       globus_result_t globus_ftp_client_throughput_nl_plugin_init_with_handle
           (globus_ftp_client_plugin_t *plugin, NLhandle *nl_handle, const char *opaque_string)
       globus_result_t globus_ftp_client_throughput_nl_plugin_destroy (globus_ftp_client_plugin_t
           *plugin)
       globus_result_t globus_ftp_client_throughput_nl_plugin_set_callbacks
           (globus_ftp_client_plugin_t *plugin, globus_ftp_client_throughput_plugin_begin_cb_t
           begin_cb, globus_ftp_client_throughput_plugin_stripe_cb_t per_stripe_cb,
           globus_ftp_client_throughput_plugin_total_cb_t total_cb,
           globus_ftp_client_throughput_plugin_complete_cb_t complete_cb, void *user_specific)

Detailed Description

       This plugin allows a user to easily use the throughput plugin to log performance data vi
       Netlogger.

       The plugin will log the following Event Types with its coressponding info

       TransferPerfTotal : This event type will be sent everytime a throughput plugin total
       callback is received.

       • URL.SOURCE <string> Source url of transfer

       • URL.DEST <string> Dest url of transfer

       • BYTES <int> Total bytes transfered thus far

       • BW.CURRENT <float> Current (instantaneous) bandwidth

       • BW.AVG <float> Average (instantaneous) bandwidth

       TransferPerfStripe : This event type will be sent everytime a throughput plugin stripe
       callback is received.

       • URL.SOURCE <string> Source url of transfer

       • URL.DEST <string> Dest url of transfer

       • INDEX <int> The stripe index the event applies to

       • BYTES <int> Total bytes transfered thus far on this stripe

       • BW.CURRENT <float> Current (instantaneous) bandwidth on this stripe

       • BW.AVG <float> Average (instantaneous) bandwidth on this stripe

       TransferBegin : This event type will be sent everytime a throughput plugin begin callback
       is received.

       • URL.SOURCE <string> Source url of transfer

       • URL.DEST <string> Dest url of transfer

       TransferEnd : This event type will be sent everytime a throughput plugin complete callback
       is received.

       • SUCCESS <bool> Completion status

Macro Definition Documentation

   #define GLOBUS_FTP_CLIENT_THROUGHPUT_NL_PLUGIN_MODULE
       (&globus_i_ftp_client_throughput_nl_plugin_module)
       Module descriptor.

Function Documentation

   globus_result_t globus_ftp_client_throughput_nl_plugin_init (globus_ftp_client_plugin_t
       *plugin, const char *nl_url, const char *prog_name, const char *opaque_string)
       Initialize netlogger wrapped throughput plugin

       This will initialize a netlogger wrapped throughput plugin. Note that the nl_url may be
       NULL. Regardless of what nl_host is set to, if the env variable NL_DEST_ENV is set,
       logging will always occur to that location.

       Parameters:
           plugin a plugin to be initialized
           nl_url the url to log to (May be NULL) Valid urls are: file://tmp/netlog.log x-
           netlog://host[:port] x-syslog://localhost
           prog_name This is used as the prog name in the NetLoggerOpen call
           opaque_string this is an opaque string that will be inserted into all logged
           statements. (may be NULL)

       Returns:

           • Error on NULL plugin or failure to init throughput plugin

           • Error on NetLogger open

           • GLOBUS_SUCCESS

       References GLOBUS_FTP_CLIENT_MODULE, globus_ftp_client_throughput_nl_plugin_init(),
       globus_ftp_client_throughput_nl_plugin_init_with_handle(), and
       globus_ftp_client_throughput_plugin_get_user_specific().

   globus_result_t globus_ftp_client_throughput_nl_plugin_init_with_handle
       (globus_ftp_client_plugin_t *plugin, NLhandle *nl_handle, const char *opaque_string)
       Initialize netlogger wrapped throughput plugin

       This will initialize a netlogger wrapped throughput plugin. Instead of passing a NetLogger
       url as in the plain init func, you can pass in a previously 'Open'ed NLhandle. This handle
       will not be destroyed by this plugin.

       Parameters:
           plugin a plugin to be initialized
           nl_handle a previously opened NetLogger handle
           opaque_string this is an opaque string that will be inserted into all logged
           statements. (may be NULL)

       Returns:

           • Error on NULL plugin or failure to init throughput plugin

           • Error on NetLogger open

           • GLOBUS_SUCCESS

       References GLOBUS_FTP_CLIENT_MODULE,
       globus_ftp_client_throughput_nl_plugin_init_with_handle(),
       globus_ftp_client_throughput_plugin_init(), and
       globus_ftp_client_throughput_plugin_set_copy_destroy().

   globus_result_t globus_ftp_client_throughput_nl_plugin_destroy (globus_ftp_client_plugin_t
       *plugin)
       Destroy netlogger wrapped throughput plugin

       Frees up memory associated with plugin.

       Parameters:
           plugin plugin previously initialized with init (above)

       Returns:

           • GLOBUS_SUCCESS

           • Error on NULL plugin

       References GLOBUS_FTP_CLIENT_MODULE, globus_ftp_client_throughput_nl_plugin_destroy(),
       globus_ftp_client_throughput_plugin_destroy(), and
       globus_ftp_client_throughput_plugin_get_user_specific().

   globus_result_t globus_ftp_client_throughput_nl_plugin_set_callbacks
       (globus_ftp_client_plugin_t *plugin,
       globus_ftp_client_throughput_plugin_begin_cb_tbegin_cb,
       globus_ftp_client_throughput_plugin_stripe_cb_tper_stripe_cb,
       globus_ftp_client_throughput_plugin_total_cb_ttotal_cb,
       globus_ftp_client_throughput_plugin_complete_cb_tcomplete_cb, void *user_specific)
       Receive throughput callbacks

       You can still get the automatic netlogging of throughput along with receiving the same
       throughput callbacks that the throughput plugin provides by using this function to set
       these callbacks. Note that the callbacks are defined the same as in the throughput plugin

       Parameters:
           plugin
           begin_cb the callback to be called upon the start of a transfer
           per_stripe_cb the callback to be called every time updated throughput info is
           available for a given stripe
           total_cb the callback to be called every time updated throughput info is available for
           any stripe
           complete_cb the callback to be called to indicate transfer completion
           user_specific a pointer to some user specific data that will be provided to all
           callbacks

       Returns:

           • Error on NULL or invalid plugin

           • GLOBUS_SUCCESS

       See Also:
           Throughput Performance Plugin

       References GLOBUS_FTP_CLIENT_MODULE,
       globus_ftp_client_throughput_nl_plugin_set_callbacks(), and
       globus_ftp_client_throughput_plugin_get_user_specific().

Author

       Generated automatically by Doxygen for globus ftp client from the source code.