Merge pull request #6111 from crosbymichael/latency-metrics

[cri] add sandbox and container latency metrics
This commit is contained in:
Derek McGowan
2021-11-16 16:59:33 -08:00
committed by GitHub
10 changed files with 111 additions and 0 deletions

View File

@@ -40,11 +40,17 @@ import (
// StartContainer starts the container.
func (c *criService) StartContainer(ctx context.Context, r *runtime.StartContainerRequest) (retRes *runtime.StartContainerResponse, retErr error) {
start := time.Now()
cntr, err := c.containerStore.Get(r.GetContainerId())
if err != nil {
return nil, errors.Wrapf(err, "an error occurred when try to find container %q", r.GetContainerId())
}
info, err := cntr.Container.Info(ctx)
if err != nil {
return nil, errors.Wrap(err, "get container info")
}
id := cntr.ID
meta := cntr.Metadata
container := cntr.Container
@@ -170,6 +176,8 @@ func (c *criService) StartContainer(ctx context.Context, r *runtime.StartContain
// It handles the TaskExit event and update container state after this.
c.eventMonitor.startContainerExitMonitor(context.Background(), id, task.Pid(), exitCh)
containerStartTimer.WithValues(info.Runtime.Name).UpdateSince(start)
return &runtime.StartContainerResponse{}, nil
}