NAME
Netlogger Throughput Plugin -
This plugin allows a user to easily use the throughput plugin to log
performance data vi Netlogger.
Defines
#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
Define 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
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
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
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)
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
Author
Generated automatically by Doxygen for globus ftp client from the
source code.