execute process directly instead of creating sub shell

This commit is contained in:
bergquist 2017-12-13 17:58:50 +01:00
parent 411e8a16c2
commit 7c0fc59dfb
2 changed files with 9 additions and 6 deletions

View File

@ -24,17 +24,19 @@ type BackendDatasource struct {
client *plugin.Client
}
var handshakeConfig = plugin.HandshakeConfig{
ProtocolVersion: 1,
MagicCookieKey: "GRAFANA_BACKEND_DATASOURCE",
MagicCookieValue: "55d2200a-6492-493a-9353-73b728d468aa",
}
func (p *BackendDatasource) initBackendPlugin(log log.Logger) error {
p.log = log.New("plugin-id", p.Id)
p.client = plugin.NewClient(&plugin.ClientConfig{
HandshakeConfig: plugin.HandshakeConfig{
ProtocolVersion: 1,
MagicCookieKey: "BASIC_PLUGIN",
MagicCookieValue: "hello",
},
HandshakeConfig: handshakeConfig,
Plugins: map[string]plugin.Plugin{p.Id: &shared.TsdbPluginImpl{}},
Cmd: exec.Command("sh", "-c", path.Join(p.PluginDir, p.Executable)),
Cmd: exec.Command(path.Join(p.PluginDir, p.Executable)),
AllowedProtocols: []plugin.Protocol{plugin.ProtocolGRPC},
Logger: backend.LogWrapper{Logger: p.log},
})

View File

@ -64,6 +64,7 @@ func (tw *TsdbWrapper) Query(ctx context.Context, ds *models.DataSource, query *
res := &tsdb.Response{
Message: pbres.Message,
Results: map[string]*tsdb.QueryResult{},
}
for _, r := range pbres.Results {