mirror of
https://github.com/weaveworks/scope.git
synced 2026-03-02 17:50:39 +00:00
Merge pull request #976 from weaveworks/955-weave-tagger-crash
Fix weave tagger crash
This commit is contained in:
@@ -1,8 +1,10 @@
|
||||
package kubernetes
|
||||
|
||||
import (
|
||||
"github.com/weaveworks/scope/report"
|
||||
"k8s.io/kubernetes/pkg/labels"
|
||||
|
||||
"github.com/weaveworks/scope/probe/docker"
|
||||
"github.com/weaveworks/scope/report"
|
||||
)
|
||||
|
||||
// Reporter generate Reports containing Container and ContainerImage topologies
|
||||
@@ -66,11 +68,12 @@ func (r *Reporter) podTopology(services []Service) (report.Topology, report.Topo
|
||||
nodeID := report.MakePodNodeID(p.Namespace(), p.Name())
|
||||
pods = pods.AddNode(nodeID, p.GetNode())
|
||||
|
||||
container := report.MakeNodeWith(map[string]string{
|
||||
PodID: p.ID(),
|
||||
Namespace: p.Namespace(),
|
||||
}).WithParents(report.EmptySets.Add(report.Pod, report.MakeStringSet(nodeID)))
|
||||
for _, containerID := range p.ContainerIDs() {
|
||||
container := report.MakeNodeWith(map[string]string{
|
||||
PodID: p.ID(),
|
||||
Namespace: p.Namespace(),
|
||||
docker.ContainerID: containerID,
|
||||
}).WithParents(report.EmptySets.Add(report.Pod, report.MakeStringSet(nodeID)))
|
||||
containers.AddNode(report.MakeContainerNodeID(containerID), container)
|
||||
}
|
||||
return nil
|
||||
|
||||
@@ -134,9 +134,15 @@ func (w *Weave) Tag(r report.Report) (report.Report, error) {
|
||||
}
|
||||
|
||||
// Put information from weave ps on the container nodes
|
||||
const maxPrefixSize = 12
|
||||
for id, node := range r.Container.Nodes {
|
||||
prefix, _ := node.Latest.Lookup(docker.ContainerID)
|
||||
prefix = prefix[:12]
|
||||
prefix, ok := node.Latest.Lookup(docker.ContainerID)
|
||||
if !ok {
|
||||
continue
|
||||
}
|
||||
if len(prefix) > maxPrefixSize {
|
||||
prefix = prefix[:maxPrefixSize]
|
||||
}
|
||||
entry, ok := w.psCache[prefix]
|
||||
if !ok {
|
||||
continue
|
||||
|
||||
Reference in New Issue
Block a user