canary

package
v1.0.124 Latest Latest
Warning

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

Go to latest
Published: Nov 30, 2023 License: Apache-2.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

View Source
const (
	EventPushQueueCreate = "push_queue.create"
)

Variables

View Source
var (
	ReconcilePageSize int

	// Only sync data created/updated in the last ReconcileMaxAge duration
	ReconcileMaxAge time.Duration

	// UpstreamConf is the global configuration for upstream
	UpstreamConf upstream.UpstreamConfig
)
View Source
var CanaryConfigFiles []string
View Source
var CanaryScheduler = cron.New()
View Source
var CanaryStatusChannel chan CanaryStatusPayload
View Source
var DataFile string
View Source
var Executor bool
View Source
var FuncScheduler = cron.New()
View Source
var Kommons *kommons.Client
View Source
var LogPass, LogFail bool
View Source
var MinimumTimeBetweenCanaryRuns = 10 * time.Second

Functions

func CleanupMetricsGauges added in v0.38.328

func CleanupMetricsGauges()

CleanupMetricsGauges removes gauges for checks that no longer exist.

func DeleteCanaryJob

func DeleteCanaryJob(id string)

func ReconcileChecks added in v1.0.69

func ReconcileChecks()

ReconcileChecks coordinates with upstream and pushes any resource that are missing on the upstream.

func ScanCanaryConfigs

func ScanCanaryConfigs()

func ScheduleFunc

func ScheduleFunc(schedule string, fn func()) (interface{}, error)

func StartScanCanaryConfigs

func StartScanCanaryConfigs(dataFile string, configFiles []string)

func StartUpstreamEventQueueConsumer added in v1.0.69

func StartUpstreamEventQueueConsumer(ctx *context.Context) error

func SyncCanaryJob

func SyncCanaryJob(ctx context.Context, dbCanary pkg.Canary) error

TODO: Refactor to use database object instead of kubernetes

func SyncCanaryJobs

func SyncCanaryJobs(ctx dutyjob.JobRuntime) error

func SyncCheckStatuses added in v1.0.69

func SyncCheckStatuses()

Types

type CanaryJob

type CanaryJob struct {
	Canary   v1.Canary
	DBCanary pkg.Canary
	LogPass  bool
	LogFail  bool
}

func (CanaryJob) GetNamespacedName

func (j CanaryJob) GetNamespacedName() types.NamespacedName

func (CanaryJob) Run

func (j CanaryJob) Run(ctx dutyjob.JobRuntime) error

type CanaryPullResponse added in v1.0.36

type CanaryPullResponse struct {
	Before   time.Time       `json:"before"`
	Canaries []models.Canary `json:"canaries,omitempty"`
}

type CanaryStatusPayload added in v0.38.213

type CanaryStatusPayload struct {
	Pass                 bool
	CheckStatus          map[string]*v1.CheckStatus
	FailEvents           []string
	LastTransitionedTime *metav1.Time
	Message              string
	ErrorMessage         string
	Uptime               string
	Latency              string
	NamespacedName       types.NamespacedName
}

type UpstreamPullJob added in v1.0.36

type UpstreamPullJob struct {
	Client *upstream.UpstreamClient
	// contains filtered or unexported fields
}

UpstreamPullJob pulls canaries from the upstream

func (*UpstreamPullJob) Run added in v1.0.36

func (t *UpstreamPullJob) Run()

Jump to

Keyboard shortcuts

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