github.com/juju/juju@v0.0.0-20240327075706-a90865de2538/worker/caasprober/probe.go (about)

     1  // Copyright 2022 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package caasprober
     5  
     6  import (
     7  	"github.com/juju/juju/observability/probe"
     8  )
     9  
    10  // CaasProbes provides a private internal implementation of CAASProbes.
    11  type CAASProbes struct {
    12  	Liveness  *probe.Aggregate
    13  	Readiness *probe.Aggregate
    14  	Startup   *probe.Aggregate
    15  }
    16  
    17  // NewCAASProbes is responsible for constructing a new CAASProbes struct with
    18  // its members initialised.
    19  func NewCAASProbes() *CAASProbes {
    20  	return &CAASProbes{
    21  		Liveness:  probe.NewAggregate(),
    22  		Readiness: probe.NewAggregate(),
    23  		Startup:   probe.NewAggregate(),
    24  	}
    25  }