2021-03-08 14:02:49 +08:00
|
|
|
package backendplugin
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
|
|
|
|
"github.com/grafana/grafana-plugin-sdk-go/backend"
|
2023-02-28 23:10:27 +08:00
|
|
|
|
|
|
|
"github.com/grafana/grafana/pkg/plugins/log"
|
2021-03-08 14:02:49 +08:00
|
|
|
)
|
|
|
|
|
|
|
|
// Plugin is the 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
|
2021-05-13 02:05:16 +08:00
|
|
|
Decommission() error
|
|
|
|
IsDecommissioned() bool
|
2023-01-24 23:18:34 +08:00
|
|
|
Target() Target
|
2021-03-08 14:02:49 +08:00
|
|
|
backend.CollectMetricsHandler
|
|
|
|
backend.CheckHealthHandler
|
2021-06-03 20:16:58 +08:00
|
|
|
backend.QueryDataHandler
|
2021-03-08 14:02:49 +08:00
|
|
|
backend.CallResourceHandler
|
2024-05-24 23:45:16 +08:00
|
|
|
backend.AdmissionHandler
|
2024-08-16 04:02:21 +08:00
|
|
|
backend.ConversionHandler
|
2021-03-24 01:24:08 +08:00
|
|
|
backend.StreamHandler
|
2021-03-08 14:02:49 +08:00
|
|
|
}
|
2023-01-24 23:18:34 +08:00
|
|
|
|
|
|
|
type Target string
|
|
|
|
|
|
|
|
const (
|
|
|
|
TargetNone Target = "none"
|
|
|
|
TargetUnknown Target = "unknown"
|
|
|
|
TargetInMemory Target = "in_memory"
|
|
|
|
TargetLocal Target = "local"
|
|
|
|
)
|