# billing-export-python
**Repository Path**: mirrors_googlearchive/billing-export-python
## Basic Information
- **Project Name**: billing-export-python
- **Description**: View billing export files via an App Engine application dashboard.
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2020-09-24
- **Last Updated**: 2026-04-11
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README

This project is no longer actively developed or maintained.
For more information about App Engine, refer to our [documentation](https://cloud.google.com/appengine).
# billing-export-python
View Google Cloud Platform billing export files via an App Engine dashboard.
Demonstrates parsing billing export files stored in a cloud storage bucket and rendering a Google Chart, triggering alerts and sending summary email.
The dashboard presents a graph of the last 90 days of billing data sent by the billing export feature. A complete walkthrough of the application, and enabling billing export, is available on YouTube.

## Setup Instructions
* *Setup Billing Export*. - Create a Cloud Storage bucket, and navigate to "Billing → Project → Billing Export". Enter the bucket name, a useful prefix, and select 'JSON' as the format.
* *Copy config.py.template to config.py* - Enter values for the bucket to monitor, and a default email address to use when no email address exists.
* *Edit app.yaml* - Supply a valid App Engine application id with access to the created bucket.
* *Setup Object Change Notifications* - Configure the URL https://billing-export-dot-{appid}.appspot.com/objectChangeNofication as the object change notification URL of the bucket. Steps are described here. Please not the necessity of *using a service account with gsutil* to run the "gsutil notification" command, a personal account won't work.
> gsutil notification watchbucket https://billing-export-dot-{appid}.appspot.com/objectChangeNofication gs://{bucketname>}
## Usage Tips
* Clicking the "Flush all caches" button takes time if there are a large number of objects in the bucket. It should never be needed if object change notifications are working.
* Select a date in the line chart by clicking a column in the body of the chart.
* The TreeMap chart at the top of the file presents the charge breakdown for the selected date.
* Select a product or SKU from the treemap to show charges for just the selected product or SKU in the line chart.
* Right-click the treemap to go back up.
* Show or hide lines in the line chart by selecting a series in the chart legend.
## Dependencies
This application makes use of
- *httplib2* - http://code.google.com/p/httplib2/
- *oauth2client* - http://pypi.python.org/pypi/oauth2client/1.0
- *cloudstorage* - https://code.google.com/p/appengine-gcs-client/
- *gviz_api* - https://code.google.com/p/google-visualization-python/
- *google charts* - https://developers.google.com/chart/
- *bootstrap* - http://getbootstrap.com/
- *bootflat* - http://bootflat.github.io/
- *angularjs* - http://angularjs.org/