Commit Graph
87 Commits
Author SHA1 Message Date
Alfonso Acosta a559a23dba Distinguish between reporting probes and controlling probes 2016-02-26 01:46:18 +00:00
Tom Wilkie 41d48224aa Fix tests 2016-01-25 13:46:28 -08:00
Tom Wilkie b8daa02488 Memoise & cache the result of renderers, so we don't recalculate views multiple times. 2016-01-25 13:31:10 -08:00
Paul BellamyandSimon Howe e30c9dc264 use constants for the topology names in Parents/metadata/metrics 2016-01-19 16:47:48 +01:00
Tom Wilkie 47ef1e02b3 Shortcut app -> UI ws push for certain reports. 2015-11-10 13:46:57 +00:00
Tom Wilkie 76d34330a9 Add Control plumbing. 2015-11-06 17:39:48 +00:00
Paul Bellamy be1d1d52d0 Basic Kubernetes integration
* Added helper for installing scope on gcloud
* Added topologies Pods and Pods-by-Service
* Uses k8s.io/kubernetes/pkg/client/cache for the client
* Filter kube-system nodes by default
* Only show the k8s topologies if we've received a non-empty k8s report
2015-10-06 12:55:51 +01:00
Tom Wilkie 21675f3000 Remove LeafMap - have a generic function which converts a Topology to a RenderableNodes. 2015-09-02 15:03:57 +00:00
Peter Bourgon 42be036428 report: always copy 2015-08-25 17:52:20 +01:00
Peter Bourgon b138dda3b3 Move merge functions with their types 2015-08-25 13:31:25 +01:00
Peter Bourgon 0dafad763f Calculate rates in detailed nodes 2015-08-03 16:04:06 +02:00
Peter Bourgon e1f7752a34 Split PacketCount to Egress and Ingress
Also, 1 packet may be counted in N topologies, so you can't rely on the
sum of all packet counts across topologies having any relation to the
sampling data.
2015-08-03 14:58:41 +02:00
Peter Bourgon c7a06d2a43 Don't flat-embed sampling in the report
In the JSON representation, we want the Sampling data to be distinct.
2015-08-03 10:55:59 +02:00
Peter Bourgon b9afa67ad6 gopacket-based traffic sniffing 2015-08-03 10:55:59 +02:00
Tom Wilkie 49dae07cca Make render module produce The Internet pseudo node. 2015-06-19 11:09:52 +00:00
Tom Wilkie f32d2b5a5e Remove report squash logic. 2015-06-18 17:20:20 +00:00
Tom Wilkie 25ca0c0eb7 Add ContainerImage topology and use it to build the Container By Image graph.
This makes container image details show the containers (and processes) correctly.

Also:
- introduces a 'test' package, moved Diff function there.
- adds some tests for this new rendered view.
2015-06-18 09:16:20 +00:00
Tom Wilkie 16e2ccd2be Produce the container topology by way of the process topology. 2015-06-17 17:23:20 +00:00
Tom Wilkie 7f9eee3b08 Merge pull request #242 from tomwilkie/228-more-moves
Move RenderableNode and DetailedNode into render/
2015-06-16 18:36:31 +02:00
Tom Wilkie 2a4a33f30a Move RenderableNode and DetailedNode into render/ 2015-06-16 15:37:08 +00:00
Peter Bourgon 990d527664 Merge pull request #219 from weaveworks/weave-tagger
WeaveTagger and the Overlay topology
2015-06-16 16:56:12 +02:00
Peter Bourgon e3c5b7f36d Add WeaveTagger
- report: add Overlay topology
- probe/tag: introduce WeaveTagger
2015-06-16 16:29:50 +02:00
Tom Wilkie ae9ea5c97f Move mapping functions and main render function in render package. 2015-06-16 14:23:56 +00:00
Peter Bourgon c65aecd9e1 Fix node scoping rules
We only want to scope (i.e. prefix with hostID) those addresses that are
deemed loopback, to disambiguate them. Otherwise, we want to leave
addresses in unscoped form, so they can be matched, and links between
communicating nodes properly made.

So, we make the isLoopback check in MakeAddressID, and omit hostID if
the address isn't loopback. So far so good.

But this breaks topology rendering, as we were relying on extracting
hostID from adjacency node IDs, to populate origin hosts in the rendered
node output. So we need another way to get origin host from an arbitrary
node.

A survey revealed no reliable way to get that information from IDs in
their new form. However, we have access to node metadata, so this
changeset introduces the OriginHostTagger, which tags each node with its
origin host, via the foreign-key semantics we'll use going forward.
2015-06-15 14:36:48 +02:00
Tom Wilkie 53456179e4 All merging of RenderableNodes, such that we can merge multiple topologies. 2015-06-11 17:11:10 +00:00
Tom Wilkie c5d10867c6 Add Validate method to Report & Topology. 2015-06-11 13:27:49 +00:00
Tom Wilkie ff11022862 Add Containers topology populated by the Docker tagger. 2015-06-10 16:01:15 +00:00
Peter Bourgon d435e36834 Add and populate Process topology
Also, add comm value (name) to process node metadata.
2015-06-10 17:27:07 +02:00
Peter Bourgon 667d8b8dd0 OriginHosts and OriginNodes become Origins
Another baby step towards #123, this change follows from #192 and merges
the two concepts of Origin in a renderable node. We also cut out a layer
of abstraction, and add an OriginTable method to Report, which directly
generates a table of info for the detail pane given any origin node ID.

Other changes from feedback:

- Assume origin IDs are unique and don't reflect.Dedupe
- Improve origin ID lookup
- Move OriginTable to detailed_node.go, as a free function
- rm app/detail_pane.go (empty)
2015-06-09 18:48:09 +02:00
Peter Bourgon da90f4489a Remove dead code 2015-06-09 16:39:29 +02:00
Peter Bourgon aa0a754363 Improve test coverage; SquashRemote -> Squash
Also, remove some dead code.
2015-06-09 15:54:06 +02:00
Peter Bourgon d438261742 HostMetadata becomes Host Topology
- All HostMetadata information becomes NodeMetadata
- Significant change to mechanics, but same net effect
- LocalNets becomes "local_networks", space-separated list of CIDRs
- Load becomes simple single string
- Use MakeHostNodeID for indexing into Host topology
- (That changes the app /origin/{id} handler; will be removed later)
2015-06-09 15:38:08 +02:00
Peter Bourgon 1e0b83eb6d Merge branch report-fields (#190) 2015-06-09 14:25:54 +02:00
Peter Bourgon 4832ee76f3 Add the various ID constructors
- Use constructors instead of ScopeDelim everywhere
- Use constructors instead of IDDelim everywhere
- IDDelim is renamed EdgeDelim, for clarity
- Partial import of the new test fixtures, to be completed later
2015-06-08 17:53:01 +02:00
Peter BourgonandTom Wilkie 754eac3152 Rename NewReport -> MakeReport. 2015-06-05 13:55:40 +00:00
Peter Bourgon 2d5f58e8ed Expand details pane 2015-05-22 13:20:00 +02:00
Tom Wilkie d50e827fd5 Intial commit 2015-05-19 10:02:02 +00:00