kubecost / cost-analyzer-helm-chart

Kubecost helm chart
http://kubecost.com/install
Apache License 2.0
488 stars 418 forks source link

Build Reports/Send Alerts and Export capability with data from each sub page under Savings page. #1783

Closed mmurph3 closed 6 months ago

mmurph3 commented 2 years ago

What problem are you trying to solve? Reporting, exporting and sending capabilities in each of the sub pages under savings page.

Describe the solution you'd like Same functionality available in cost allocation, assets and alerts page but for savings page.

Describe alternatives you've considered Giving kubecost access to various teams/people wanting to see savings page and recommendations.

How would users interact with this feature?

Configure alerts to be sent with data available in savings page Build and save reports from data in the savings page. This would be ideal for presentations and for sending data to targeted teams/individuals. It would limit the need to configure user access which in turn reduces overhead.

┆Issue is synchronized with this Jira Task by Unito

kc-creynold commented 2 years ago

this came up on a customer call the other day as a needed feature

dwbrown2 commented 2 years ago

Starting to dig into reports/alerts in 1.99 and I suspect will be ready to focus here in the following release.

Any detailed use cases or specific personas that either of you have heard?

rossfisherkc commented 1 year ago

I have a customer on ZD 3095 planning on chiming in their case case here; I offered to pass it along if they couldn't for some reason. Will update once I hear something

amitkc1 commented 1 year ago

Use case and Persona: On a high level, the use case is to provide savings report and savings alerts similar to what's available for Allocation and Assets. For clarification, I am also attaching some screenshots. Screen Shot 2022-12-04 at 3 43 02 PM

Screen Shot 2022-12-04 at 3 43 13 PM

The persona for each of the savings types can vary. Here is my take on the personas who can use these reports/alerts:

  1. Right size container requests - Application owner based on Namespace and cluster
  2. Abandoned Workloads - Application owner based on Namespace, cluster
  3. Resize local disks, Reserve instances , Unclaimed volumes, unassigned resource, identify workloads ready for spot instances, resize your persistent volumes - Administrator/ Provisioner of the cluster

Here are a couple of scenarios where these alerts/reports could help:

  1. Send an alert when savings after right sizing container requests could go up by certain "Cost threshold". Allow filtering by namespace and cluster both.
  2. The same is applicable for abandoned workloads.
    • Send a report to the application owner and/or administrator on a regular cadence about abandoned workloads.
      • When the abandoned workloads have gone up by certain threshold, send an alert.
rossfisherkc commented 1 year ago

cc @dwbrown2 ^

AjayTripathy commented 1 year ago

Seems reasonable, tagging for a 1.100 proposal

nealormsbee commented 1 year ago

This seems like a useful extension of the Alerts we have today. I don't think we have anything scoped for v1.100 as of now.

I don't foresee having bandwidth for big coverage here this release, but maybe we can start with one savings view and start planning out the rest?

teevans commented 1 year ago

^^ Let's give that a shot

mmurph3 commented 1 year ago

@teevans I'm thinking this would be good to have under the 'Reports' page. Perhaps add the option under actions where the user could set email addresses/s3 bucket endpoints/webhook and the interval at which to send a saved report in pdf or csv format? pdf export and email address would be top priority. We have an enterprise customer who would like to automate prebuilt reports and send them out at preset intervals.

mmurph3 commented 1 year ago

Hi Team, we have more customers looking for this feature to build reports from savings page and ability to send alerts automatically on preset/predefined intervals.

kwombach12 commented 1 year ago

@mmurph3 this feature makes a lot of sense to me. I will push for this to be included in the next release and see if we have the bandwidth to potentially squeeze this into this current release.

cc: @dwbrown2

mmurph3 commented 1 year ago

@kwombach12 thanks! Here is more context and an example one of our customers would like to see for savings report, along with automation to send report every 30 days for example.

Cloud Cost Savings Report

keithhand commented 1 year ago

A little additional context from what I have heard from customers regarding the "pre-built reports". There are current alerts that have some of this data, though the formatting is significantly different than if you were to look at the data directly in the application. For example, a recurring update alert and an allocation report display a lot of similar data, but the recurring update won't have all the details an allocation report will have. Ideally, users are looking for a way that we could utilize the "Download as PDF" button in a more "cron"-like format to send those downloaded PDFs directly via alerts.

kwombach12 commented 1 year ago

@keithhand @mmurph3 We are picking up this work in 1.102 so I wanted to make sure I am clear on what the asks are in this issue. Please feel free to correct me, but I am seeing a couple distinct asks here:

  1. Create a new report type, "Savings Report" for each/any of the savings cards
  2. Enable Allocation, Asset, Cloud Cost, & Savings Reports to be sent as .pdfs with a configurable cadence.

Is there anything you would add to these 2 enhancements? Is there anything else I'm missing?

mmurph3 commented 1 year ago

@kwombach12 :

  1. I think it'd be beneficial here to allow users the option to build a savings report summary from sub pages of their choosing. It's important here to respect custom setting such as filters applied in the Right-size your container requests page, duration in abandoned workloads, custom container right sizing profiles and any other setting set in each sub page set by the user that's not default. The report(s) would also be exportable to pdf.
  2. Yes, we have several customers who'd like to send built reports with a configurable cadence - allocation, advanced reporting, cloud cost/assets being highest priority. Savings would be a huge plus. Example: a) Every week, month, custom interval - send a report of last 7, 30days, custom to the following email addresses set . <-- Some/most users will want the data in the reports reconciled with the bill from the cloud provider for accuracy. We could add an option "Data Reconciled?" yes/no. If yes, +/-3 days (not sure what makes the most sense) of the specified window. Users that select no will most likely not be pulling in a bill from the cloud provider or they're on prem.

Let me know if you'd like more info from customers or want to brainstorm what this would look like.

mmurph3 commented 1 year ago

We have another enterprise customer who would like report sent on a regular cadence (auto). 2 customers would like the ability to send to s3 buckets due to security requirements and internal processes.

mmurph3 commented 1 year ago

@kwombach12 are we going to have ability to export pdf & csv in abandoned workloads page in v1.103?

kwombach12 commented 1 year ago

@mmurph3 we are going to try to squeeze in .csv export for that page.

mmurph3 commented 1 year ago

@kwombach12 are we going to see the ability to send reports on a set cadence in v1.103? I recall us discussing that the alerts functionality was going to be moving to reporting and that 'last 30days' was also going to be added so users can send some sort of report on a set cadence greater than the 7 days currently available in alerts.

kwombach12 commented 1 year ago

@mmurph3 Unfortunately, we didnt have capacity to pick this up in 103

chipzoller commented 6 months ago

Closing, stale. For any future enhancements or bugs which do not pertain specifically to the Helm chart, please log them in the features-bugs repo.