metricscache

package
v0.27.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 1, 2023 License: AGPL-3.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Cache

type Cache struct {
	// contains filtered or unexported fields
}

Cache holds the template metrics. The aggregation queries responsible for these values can take up to a minute on large deployments. Even in small deployments, aggregation queries can take a few hundred milliseconds, which would ruin page load times and database performance if in the hot path.

func New

func New(db database.Store, log slog.Logger, intervals Intervals) *Cache

func (*Cache) Close

func (c *Cache) Close() error

func (*Cache) DeploymentDAUs added in v0.15.3

func (c *Cache) DeploymentDAUs(offset int) (int, *codersdk.DAUsResponse, bool)

func (*Cache) DeploymentStats added in v0.19.0

func (c *Cache) DeploymentStats() (codersdk.DeploymentStats, bool)

func (*Cache) TemplateBuildTimeStats added in v0.10.0

func (c *Cache) TemplateBuildTimeStats(id uuid.UUID) codersdk.TemplateBuildTimeStats

func (*Cache) TemplateDAUs

func (c *Cache) TemplateDAUs(id uuid.UUID, offset int) (int, *codersdk.DAUsResponse, bool)

TemplateDAUs returns an empty response if the template doesn't have users or is loading for the first time. The cache will select the closest DAUs response to given timezone offset.

func (*Cache) TemplateUniqueUsers added in v0.8.15

func (c *Cache) TemplateUniqueUsers(id uuid.UUID) (int, bool)

TemplateUniqueUsers returns the number of unique Template users from all Cache data.

type Intervals added in v0.19.0

type Intervals struct {
	TemplateDAUs    time.Duration
	DeploymentStats time.Duration
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL