|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
<html>
|
|
Packit |
4b6dd7 |
<head>
|
|
Packit |
4b6dd7 |
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
Packit |
4b6dd7 |
<title>Running GData Applications: GData Reference Manual</title>
|
|
Packit |
4b6dd7 |
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
|
|
Packit |
4b6dd7 |
<link rel="home" href="index.html" title="GData Reference Manual">
|
|
Packit |
4b6dd7 |
<link rel="up" href="pt01.html" title="Part I. GData Overview">
|
|
Packit |
4b6dd7 |
<link rel="prev" href="gdata-overview.html" title="GData Overview">
|
|
Packit |
4b6dd7 |
<link rel="next" href="ch01.html" title="Object Hierarchy">
|
|
Packit |
4b6dd7 |
<meta name="generator" content="GTK-Doc V1.26.1 (XML mode)">
|
|
Packit |
4b6dd7 |
<link rel="stylesheet" href="style.css" type="text/css">
|
|
Packit |
4b6dd7 |
</head>
|
|
Packit |
4b6dd7 |
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |

|
|
Packit |
4b6dd7 |

|
|
Packit |
4b6dd7 |

|
|
Packit |
4b6dd7 |

|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
Running GData Applications
|
|
Packit |
4b6dd7 |
Running GData Applications — running and debugging GData applications
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
Running and Debugging GData Applications
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
Environment variables
|
|
Packit |
4b6dd7 |
libgdata makes use of a few environment variables which affect how it runs, mainly with respect to debugging.
|
|
Packit |
4b6dd7 |
LIBGDATA_DEBUG . If this environment variable is set to one of the following values, libgdata will give debug output
|
|
Packit |
4b6dd7 |
(at various levels). If it's unset, no debug output will be produced.
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
0
|
|
Packit |
4b6dd7 |
Output no debug messages or network logs.
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
1
|
|
Packit |
4b6dd7 |
Output debug messages, but not network logs.
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
2
|
|
Packit |
4b6dd7 |
Output debug messages and network traffic headers.
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
3
|
|
Packit |
4b6dd7 |
Output debug messages and full network traffic logs.
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
So, to debug a program which uses libgdata, run it from a terminal with the following command:
|
|
Packit |
4b6dd7 |
$ LIBGDATA_DEBUG=3 ./my-program-name &> libgdata.log
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
Debugging Advice
|
|
Packit |
4b6dd7 |
The easiest way to debug problems with libgdata is to use the
|
|
Packit |
4b6dd7 |
LIBGDATA_DEBUG environment variable to observe all the network
|
|
Packit |
4b6dd7 |
traffic being transmitted and received by libgdata. Typically, any problems will occur in the final network
|
|
Packit |
4b6dd7 |
request/response, which is the last one in the log output.
|
|
Packit |
4b6dd7 |
If debugging using the environment variables and log output is not possible, it is sometimes possible to diagnose problems
|
|
Packit |
4b6dd7 |
by examining the error responses sent by the Google servers to libgdata. These are exposed as the error messages returned
|
|
Packit |
4b6dd7 |
by libgdata methods; so when handling errors from libgdata method calls, it is a good idea to output the message from
|
|
Packit |
4b6dd7 |
the GError to a debug log, or even as a warning in the user's
|
|
Packit |
4b6dd7 |
.xsession-errors file.
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
Example 1. Error Handling when Uploading a Document
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
1
|
|
Packit |
4b6dd7 |
2
|
|
Packit |
4b6dd7 |
3
|
|
Packit |
4b6dd7 |
4
|
|
Packit |
4b6dd7 |
5
|
|
Packit |
4b6dd7 |
6
|
|
Packit |
4b6dd7 |
7
|
|
Packit |
4b6dd7 |
8
|
|
Packit |
4b6dd7 |
9
|
|
Packit |
4b6dd7 |
10
|
|
Packit |
4b6dd7 |
11
|
|
Packit |
4b6dd7 |
12
|
|
Packit |
4b6dd7 |
13
|
|
Packit |
4b6dd7 |
14
|
|
Packit |
4b6dd7 |
15
|
|
Packit |
4b6dd7 |
16
|
|
Packit |
4b6dd7 |
17
|
|
Packit |
4b6dd7 |
GDataUploadStream *upload_stream;
|
|
Packit |
4b6dd7 |
GError *error = NULL;
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
upload_stream = gdata_documents_service_upload_document (service, document, slug, content_type, destination_folder, NULL,
|
|
Packit |
4b6dd7 |
&error);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
if (error != NULL) {
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
g_error ("Error getting upload stream: %s", error->message);
|
|
Packit |
4b6dd7 |
g_error_free (error);
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
return;
|
|
Packit |
4b6dd7 |
}
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
|
|
Packit |
4b6dd7 |
Generated by GTK-Doc V1.26.1
|
|
Packit |
4b6dd7 |
</body>
|
|
Packit |
4b6dd7 |
</html>
|