mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
31 lines
778 B
Go
31 lines
778 B
Go
|
package backendplugin
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
|
||
|
"github.com/grafana/grafana-plugin-sdk-go/backend"
|
||
|
"github.com/grafana/grafana/pkg/infra/log"
|
||
|
)
|
||
|
|
||
|
// Plugin backend plugin interface.
|
||
|
type Plugin interface {
|
||
|
PluginID() string
|
||
|
Logger() log.Logger
|
||
|
Start(ctx context.Context) error
|
||
|
Stop(ctx context.Context) error
|
||
|
IsManaged() bool
|
||
|
Exited() bool
|
||
|
backend.CollectMetricsHandler
|
||
|
backend.CheckHealthHandler
|
||
|
backend.CallResourceHandler
|
||
|
}
|
||
|
|
||
|
// PluginFactoryFunc factory for creating a Plugin.
|
||
|
type PluginFactoryFunc func(pluginID string, logger log.Logger, env []string) (Plugin, error)
|
||
|
|
||
|
// CallResourceClientResponseStream is used for receiving resource call responses.
|
||
|
type CallResourceClientResponseStream interface {
|
||
|
Recv() (*backend.CallResourceResponse, error)
|
||
|
Close() error
|
||
|
}
|