Documentation ¶
Index ¶
Constants ¶
const BearerTokenKey = "bearer.token"
BearerTokenKey is the key name for the bearer token context value.
const StoragePluginIdentifier = "storage_plugin"
StoragePluginIdentifier is the identifier that is shared by plugin and host.
Variables ¶
var Handshake = plugin.HandshakeConfig{
MagicCookieKey: "STORAGE_PLUGIN",
MagicCookieValue: "jaeger",
}
Handshake is a common handshake that is shared by plugin and host.
var PluginMap = map[string]plugin.Plugin{ StoragePluginIdentifier: &StorageGRPCPlugin{}, }
PluginMap is the map of plugins we can dispense.
Functions ¶
func NewGRPCClient ¶ added in v1.30.0
func NewGRPCClient(c *grpc.ClientConn) *grpcClient
Types ¶
type ArchiveStoragePlugin ¶ added in v1.20.0
type ArchiveStoragePlugin interface { ArchiveSpanReader() spanstore.Reader ArchiveSpanWriter() spanstore.Writer }
ArchiveStoragePlugin is the interface we're exposing as a plugin.
type Capabilities ¶ added in v1.20.0
Capabilities contains information about plugin capabilities
type ContextUpgradeFunc ¶ added in v1.23.0
ContextUpgradeFunc is a functional type that can be composed to upgrade context
type PluginCapabilities ¶ added in v1.20.0
type PluginCapabilities interface {
Capabilities() (*Capabilities, error)
}
PluginCapabilities allow expose plugin its capabilities.
type PluginServices ¶ added in v1.20.0
type PluginServices struct { Store StoragePlugin ArchiveStore ArchiveStoragePlugin StreamingSpanWriter StreamingSpanWriterPlugin }
PluginServices defines services plugin can expose
type StorageGRPCPlugin ¶
type StorageGRPCPlugin struct { plugin.Plugin // Concrete implementation, This is only used for plugins that are written in Go. Impl StoragePlugin ArchiveImpl ArchiveStoragePlugin StreamImpl StreamingSpanWriterPlugin }
StorageGRPCPlugin is the implementation of plugin.GRPCPlugin.
func (*StorageGRPCPlugin) GRPCClient ¶
func (*StorageGRPCPlugin) GRPCClient(ctx context.Context, broker *plugin.GRPCBroker, c *grpc.ClientConn) (interface{}, error)
GRPCClient implements plugin.GRPCPlugin. It is used by go-plugin to create a grpc plugin client.
func (*StorageGRPCPlugin) GRPCServer ¶
func (p *StorageGRPCPlugin) GRPCServer(broker *plugin.GRPCBroker, s *grpc.Server) error
GRPCServer implements plugin.GRPCPlugin. It is used by go-plugin to create a grpc plugin server.
func (*StorageGRPCPlugin) RegisterHandlers ¶ added in v1.30.0
func (p *StorageGRPCPlugin) RegisterHandlers(s *grpc.Server) error
RegisterHandlers registers the plugin with the server
type StoragePlugin ¶
type StoragePlugin interface { SpanReader() spanstore.Reader SpanWriter() spanstore.Writer DependencyReader() dependencystore.Reader }
StoragePlugin is the interface we're exposing as a plugin.
type StreamingSpanWriterPlugin ¶ added in v1.34.0
StreamingSpanWriterPlugin is the interface we're exposing as a plugin.