globus_ftp_client_debug_plugin.example

The following example illustrates a typical use of the debug plugin. In this case, we configure a plugin instance to output log messages preceded by the process name and pid to a file named gridftp.log.

int main(int argc, char *argv[])
{
    globus_ftp_client_plugin_t restart_plugin;
    globus_ftp_client_handleattr_t handleattr;
    globus_ftp_client_handle_t handle;
    FILE * log;
    char text[256];

    /* Activate the necessary modules */
    globus_module_activate(GLOBUS_FTP_CLIENT_MODULE);
    globus_module_activate(GLOBUS_FTP_CLIENT_DEBUG_PLUGIN_MODULE);

    /* Configure plugin to show custom text, and send plugin data to
     * a custom log file
     */
    log = fopen("gridftp.log", "a");
    sprintf(text, "%s:%ld", argv[0], (long) getpid());

    globus_ftp_client_debug_plugin_init(&debug_plugin, log, text);

    /* Set up our client handle to use the new plugin */
    globus_ftp_client_handleattr_init(&handleattr);
    globus_ftp_client_handleattr_add_plugin(&handleattr, &debug_plugin);
    globus_ftp_client_handle_init(&handle, &handleattr);

    /* As this get is processed, data will be appended to our gridftp.log
     * file
     */
    globus_ftp_client_get(&handle,
                          "ftp://ftp.globus.org/pub/globus/README",
                          GLOBUS_NULL,
                          GLOBUS_NULL,
                          callback_fn,
                          GLOBUS_NULL);
}
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Generated on 2 Sep 2018 for globus_ftp_client by  doxygen 1.6.1