Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsDisabled ¶
IsDisabled takes an service and return true if its disabled
func Register ¶
func Register(descriptor *Descriptor)
func RegisterOverride ¶
func RegisterOverride(fn OverrideServiceFunc)
func RegisterService ¶
func RegisterService(instance Service)
Types ¶
type BackgroundService ¶
type BackgroundService interface { // Run starts the background process of the service after `Init` have been called // on all services. The `context.Context` passed into the function should be used // to subscribe to ctx.Done() so the service can be notified when Grafana shuts down. Run(ctx context.Context) error }
BackgroundService should be implemented for services that have long running tasks in the background.
type CanBeDisabled ¶
type CanBeDisabled interface { // IsDisabled should return a bool saying if it can be started or not. IsDisabled() bool }
CanBeDisabled allows the services to decide if it should be started or not by itself. This is useful for services that might not always be started, ex alerting. This will be called after `Init()`.
type DatabaseMigrator ¶
type DatabaseMigrator interface { // AddMigrations allows the service to add migrations to // the database migrator. AddMigration(mg *migrator.Migrator) }
DatabaseMigrator allows the caller to add migrations to the migrator passed as argument
type Descriptor ¶
func GetServices ¶
func GetServices() []*Descriptor
type OverrideServiceFunc ¶
type OverrideServiceFunc func(descriptor Descriptor) (*Descriptor, bool)
type Service ¶
type Service interface { // Init is called by Grafana main process which gives the service // the possibility do some initial work before its started. Things // like adding routes, bus handlers should be done in the Init function Init() error }
Service interface is the lowest common shape that services are expected to forfill to be started within Grafana.
Click to show internal directories.
Click to hide internal directories.