A minimal web interface for tracking AWS costs with customizable budget alerts and service breakdowns
Project description
CloudSense
An interactive tool for AWS cost.
Features
- Secure AWS cost tracking using Cost Explorer API with authentication
- Entire account and per service usage can be displayed
- Intelligent caching - Cost data cached for 1 hour to improve performance
- Flexible time ranges (7, 14, 30, 90 days, current month, previous month, custom month, specific day)
- Budget comparison and usage tracking with alerts
- Daily cost trends visualization with interactive charts
- Detailed service breakdown by cost with EBS/EC2 analysis
- Responsive web interface with real-time updates
- Performance optimized with AWS session caching
Caching cost data to reduce cost
AWS Cost Explorer API calls are $.01 for each call.
- CloudSense caches cost data for 1 hour to reduce cost
- Cache status displayed in the interface with last update timestamp
- Click "Update Cost Data" button to force refresh cached data
Installation
Recommended: Use a virtual environment
# Create virtual environment
python -m venv cloudsense-env
# Activate virtual environment
source cloudsense-env/bin/activate
-
Install CloudSense:
pip install cloudsense
-
Configure AWS credentials (Required):
aws configure # or set environment variables: export AWS_ACCESS_KEY_ID=<your-key> export AWS_SECRET_ACCESS_KEY=<your-secret> export AWS_DEFAULT_REGION=us-east-1
Authentication Required: CloudSense requires valid AWS credentials to access cost data.
-
Run CloudSense:
cloudsense
Security Note: By default, CloudSense binds to
127.0.0.1(localhost only) for security. -
Access the interface: Open http://localhost:8080 in your browser
Command Line Options
cloudsense --help # Show help
cloudsense --port 5000 # Run on custom port
cloudsense --host 127.0.0.1 # Bind to specific host (default: localhost)
cloudsense --debug # Enable debug mode (development only)
Security Options:
--host 127.0.0.1(default): Localhost only - most secure--host 0.0.0.0: All interfaces - use with caution, requires firewall
AWS Permissions Required
Your AWS credentials need the following permissions:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ce:GetCostAndUsage",
"ce:GetUsageReport",
"sts:GetCallerIdentity"
],
"Resource": "*"
}
]
}
Note: sts:GetCallerIdentity is required for authentication validation and account ID display.
Screen shots
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cloudsense-0.1.0.tar.gz.
File metadata
- Download URL: cloudsense-0.1.0.tar.gz
- Upload date:
- Size: 15.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f456213bdb6b37baec51a38a4d6782ec78bf4dbefe23c9c8c40943ff79c66ff7
|
|
| MD5 |
faab02f0451974f45c3dcaa2a2f3e631
|
|
| BLAKE2b-256 |
871213e8ef68d13505d1f7f6beb69882fe7472607e8eb4b50ebcbe82fd1abee8
|
File details
Details for the file cloudsense-0.1.0-py3-none-any.whl.
File metadata
- Download URL: cloudsense-0.1.0-py3-none-any.whl
- Upload date:
- Size: 14.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
31a26dd011afc9690d2a88e5995e0abe8220efd8ea66eca4f2b6e303fb341711
|
|
| MD5 |
78a77b09234e416a6f80f9578e8a91fb
|
|
| BLAKE2b-256 |
90e322f6c31f1eeef446a64e05d95073eba9b94b327a653f5136f208d0303725
|