| # Logging | |
| This page provides logging tips to help you debug your applications. | |
| ## Log Level | |
| You can enable logging of key events in this library by configuring Python's standard [logging](http://docs.python.org/library/logging.html) module. You can set the logging level to one of the following: | |
| - CRITICAL (least amount of logging) | |
| - ERROR | |
| - WARNING | |
| - INFO | |
| - DEBUG (most amount of logging) | |
| In the following code, the logging level is set to `INFO`, and the Google Translate API is called: | |
| ```python | |
| import logging | |
| from googleapiclient.discovery import build | |
| logger = logging.getLogger() | |
| logger.setLevel(logging.INFO) | |
| def main(): | |
| service = build('translate', 'v2', developerKey='your_api_key') | |
| print service.translations().list( | |
| source='en', | |
| target='fr', | |
| q=['flower', 'car'] | |
| ).execute() | |
| if __name__ == '__main__': | |
| main() | |
| ``` | |
| The output of this code should print basic logging info: | |
| ``` | |
| INFO:root:URL being requested: https://www.googleapis.com/discovery/v1/apis/translate/v2/rest | |
| INFO:root:URL being requested: https://www.googleapis.com/language/translate/v2?q=flower&q=car&source=en&alt=json&target=fr&key=your_api_key | |
| {u'translations': [{u'translatedText': u'fleur'}, {u'translatedText': u'voiture'}]} | |
| ``` | |
| ## HTTP Traffic | |
| For even more detailed logging you can set the debug level of the [httplib2](https://github.com/httplib2/httplib2) module used by this library. The following code snippet enables logging of all HTTP request and response headers and bodies: | |
| ```python | |
| import httplib2 | |
| httplib2.debuglevel = 4 | |
| ``` |