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.