sql

package
v3.3.3 Latest Latest
Warning

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

Go to latest
Published: Nov 5, 2021 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrPathNotSpecified is the error returned when the path parameter passed in NewStore is blank
	ErrPathNotSpecified = errors.New("path cannot be empty")

	// ErrDatabaseDriverNotSpecified is the error returned when the driver parameter passed in NewStore is blank
	ErrDatabaseDriverNotSpecified = errors.New("database driver cannot be empty")
)

Functions

This section is empty.

Types

type Store

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

Store that leverages a database

func NewStore

func NewStore(driver, path string) (*Store, error)

NewStore initializes the database and creates the schema if it doesn't already exist in the path specified

func (*Store) Clear

func (s *Store) Clear()

Clear deletes everything from the store

func (*Store) Close

func (s *Store) Close()

Close the database handle

func (*Store) DeleteAllEndpointStatusesNotInKeys added in v3.3.0

func (s *Store) DeleteAllEndpointStatusesNotInKeys(keys []string) int

DeleteAllEndpointStatusesNotInKeys removes all rows owned by an endpoint whose key is not within the keys provided

func (*Store) GetAllEndpointStatuses added in v3.3.0

func (s *Store) GetAllEndpointStatuses(params *paging.EndpointStatusParams) ([]*core.EndpointStatus, error)

GetAllEndpointStatuses returns all monitored core.EndpointStatus with a subset of core.Result defined by the page and pageSize parameters

func (*Store) GetAverageResponseTimeByKey

func (s *Store) GetAverageResponseTimeByKey(key string, from, to time.Time) (int, error)

GetAverageResponseTimeByKey returns the average response time in milliseconds (value) during a time range

func (*Store) GetEndpointStatus added in v3.3.0

func (s *Store) GetEndpointStatus(groupName, endpointName string, params *paging.EndpointStatusParams) (*core.EndpointStatus, error)

GetEndpointStatus returns the endpoint status for a given endpoint name in the given group

func (*Store) GetEndpointStatusByKey added in v3.3.0

func (s *Store) GetEndpointStatusByKey(key string, params *paging.EndpointStatusParams) (*core.EndpointStatus, error)

GetEndpointStatusByKey returns the endpoint status for a given key

func (*Store) GetHourlyAverageResponseTimeByKey

func (s *Store) GetHourlyAverageResponseTimeByKey(key string, from, to time.Time) (map[int64]int, error)

GetHourlyAverageResponseTimeByKey returns a map of hourly (key) average response time in milliseconds (value) during a time range

func (*Store) GetUptimeByKey

func (s *Store) GetUptimeByKey(key string, from, to time.Time) (float64, error)

GetUptimeByKey returns the uptime percentage during a time range

func (*Store) Insert

func (s *Store) Insert(endpoint *core.Endpoint, result *core.Result) error

Insert adds the observed result for the specified endpoint into the store

func (*Store) Save

func (s *Store) Save() error

Save does nothing, because this store is immediately persistent.

Jump to

Keyboard shortcuts

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