Home / Function/ dailyUsageToDataPoints() — supabase Function Reference

dailyUsageToDataPoints() — supabase Function Reference

Architecture documentation for the dailyUsageToDataPoints() function in Usage.utils.ts from the supabase codebase.

Entity Profile

Dependency Diagram

graph TD
  f313d58a_c706_9bf3_eb3c_2de6b61f112e["dailyUsageToDataPoints()"]
  1f7b6333_1194_c9d9_370c_c933afac572c["ActiveCompute()"]
  1f7b6333_1194_c9d9_370c_c933afac572c -->|calls| f313d58a_c706_9bf3_eb3c_2de6b61f112e
  1c012991_a5d9_1bac_d354_17179396549d["Activity()"]
  1c012991_a5d9_1bac_d354_17179396549d -->|calls| f313d58a_c706_9bf3_eb3c_2de6b61f112e
  7430379b_1375_f7b7_2675_1e576b99a5c8["Compute()"]
  7430379b_1375_f7b7_2675_1e576b99a5c8 -->|calls| f313d58a_c706_9bf3_eb3c_2de6b61f112e
  0dc955f3_7584_b1cb_b02e_dd2d6222000b["Egress()"]
  0dc955f3_7584_b1cb_b02e_dd2d6222000b -->|calls| f313d58a_c706_9bf3_eb3c_2de6b61f112e
  582ca8da_609a_ab41_115f_707f7bc262db["OrgLogUsage()"]
  582ca8da_609a_ab41_115f_707f7bc262db -->|calls| f313d58a_c706_9bf3_eb3c_2de6b61f112e
  16462678_44bf_147c_c1df_cd1f3883bffe["SizeAndCounts()"]
  16462678_44bf_147c_c1df_cd1f3883bffe -->|calls| f313d58a_c706_9bf3_eb3c_2de6b61f112e
  style f313d58a_c706_9bf3_eb3c_2de6b61f112e fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

apps/studio/components/interfaces/Organization/Usage/Usage.utils.ts lines 110–143

export function dailyUsageToDataPoints(
  dailyUsage: OrgDailyUsageResponse | undefined,
  includeMetric: (metric: PricingMetric) => boolean
): DataPoint[] {
  if (!dailyUsage || !dailyUsage.usages.length) return []

  const groupedByDate = groupBy(
    dailyUsage.usages.filter((it) => includeMetric(it.metric as PricingMetric)),
    'date'
  )

  const dataPoints: DataPoint[] = []

  Object.entries(groupedByDate).forEach(([date, usages]) => {
    const dataPoint: DataPoint = {
      period_start: date,
      periodStartFormatted: dayjs(date).format('DD MMM'),
    }

    for (const usage of usages) {
      dataPoint[usage.metric.toLowerCase()] = usage.usage_original

      if (usage.breakdown) {
        for (const [key, value] of Object.entries(usage.breakdown)) {
          dataPoint[key.toLowerCase()] = value
        }
      }
    }

    dataPoints.push(dataPoint)
  })

  return dataPoints
}

Subdomains

Frequently Asked Questions

What does dailyUsageToDataPoints() do?
dailyUsageToDataPoints() is a function in the supabase codebase.
What calls dailyUsageToDataPoints()?
dailyUsageToDataPoints() is called by 6 function(s): ActiveCompute, Activity, Compute, Egress, OrgLogUsage, SizeAndCounts.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free