Merge pull request #612 from runcom/fixies-profiling

Fixies profiling + conflict run pod sandbox
This commit is contained in:
Mrunal Patel 2017-06-18 22:07:47 -07:00 committed by GitHub
commit 0413088ffb
2 changed files with 12 additions and 12 deletions

View file

@ -3,14 +3,14 @@ package main
import (
"fmt"
"net"
"net/http"
_ "net/http/pprof"
"os"
"os/signal"
"sort"
"strings"
"syscall"
"runtime/pprof"
"github.com/Sirupsen/logrus"
"github.com/containers/storage/pkg/reexec"
"github.com/kubernetes-incubator/cri-o/server"
@ -233,9 +233,9 @@ func main() {
Name: "cni-plugin-dir",
Usage: "CNI plugin binaries directory",
},
cli.StringFlag{
Name: "cpu-profile",
Usage: "set the CPU profile file path",
cli.BoolFlag{
Name: "profile",
Usage: "enable pprof remote profiler on localhost:6060",
},
}
@ -285,13 +285,10 @@ func main() {
}
app.Action = func(c *cli.Context) error {
if cp := c.GlobalString("cpu-profile"); cp != "" {
f, err := os.Create(cp)
if err != nil {
return fmt.Errorf("invalid --cpu-profile value %q", err)
}
_ = pprof.StartCPUProfile(f)
defer pprof.StopCPUProfile()
if c.GlobalBool("profile") {
go func() {
http.ListenAndServe("localhost:6060", nil)
}()
}
config := c.App.Metadata["config"].(*server.Config)

View file

@ -109,6 +109,9 @@ func (s *Server) RunPodSandbox(ctx context.Context, req *pb.RunPodSandboxRequest
return nil, err
}
dupID := matches[1]
if _, err := s.StopPodSandbox(ctx, &pb.StopPodSandboxRequest{PodSandboxId: dupID}); err != nil {
return nil, err
}
if _, err := s.RemovePodSandbox(ctx, &pb.RemovePodSandboxRequest{PodSandboxId: dupID}); err != nil {
return nil, err
}