Inspiration

Many companies only realise their cloud spending problems after receiving monthly reports. We wanted to build something that could show cloud usage as it happens and help teams understand which services are actually using resource

What it does

CloudCostOps tracks how applications use cloud resources in real time. It measures resource usage for each request, sends the data for processing, and displays it on a dashboard so teams can monitor costs and usage continuously.

How we built it

We created a small Java JAR that can be added to existing applications without changing their code. Using Java AOP and Linux /proc metrics, we measure resource usage for requests, send the metrics through Kafka, store them in AWS databases, and display the results through a Vercel hosted dashboard.

Challenges we ran into

Getting accurate request level resource usage was difficult because traditional monitoring tools only provide server level metrics. We also had to keep the monitoring lightweight and make sure no sensitive application data was collected.

Accomplishments that we're proud of

Built a monitoring solution that works without modifying application code. Achieved accurate request-level resource tracking using Linux kernel metrics. Maintained complete privacy by collecting only resource metrics.

What we learned

This project taught us about Linux internals, Java AOP, event-driven systems, and designing scalable monitoring pipelines. We also learned how important accurate telemetry is for understanding cloud costs.

What's next for CloudCostOps

We plan to expand CloudCostOps beyond Java by adding support for more programming languages and frameworks. We also want to extend monitoring to containerised environments such as Docker, Kubernetes clusters.

Built With

Share this project:

Updates