Commit Graph

3702 Commits

Author SHA1 Message Date
Mike Lang
6bf34ab95d Add SwarmService topology containing data on Docker Swarm services 2017-04-14 12:51:28 -07:00
Mike Lang
460352d2d7 Merge pull request #2436 from weaveworks/mike/easier-added-topologies
Reduce the number of places topologies are explicitly listed
2017-04-14 12:49:12 -07:00
Matthias Radestock
76253c3cd0 Merge pull request #2442 from weaveworks/2018-close-s3-response
close s3 response body to prevent leaks

Fixes #2018.
2017-04-14 01:12:02 +01:00
Matthias Radestock
46f288bb6d close s3 response body to prevent leaks
Fixes #2018
2017-04-14 00:27:41 +01:00
Mike Lang
18ba2c4e38 ecs: Also make service a parent of task 2017-04-11 10:58:33 -07:00
Filip Barl
7c22c97382 Fix node highlight for all shapes (#2430)
* Render highlight with strokes & use non-scaled highlight for stacks.

* Reverted part of the changes made to node stack highlighting.
2017-04-11 09:11:31 +02:00
Mike Lang
9f0f120bc5 Remove explicit listing of api topologies in render/detailed/node specs
Instead, we can infer them from the render topology and the primaryAPITopology map
2017-04-10 15:06:38 -07:00
Mike Lang
7ba3555fe6 report: Reintroduce explicit topology listing for Walk functions
To avoid needing to allocate a new map every time, since we're already
hitting GC-related perf issues
2017-04-10 14:30:53 -07:00
Mike Lang
3656965ae7 Refactor Map2Parent and family into one function
This greatly improves code reuse while keeping the behaviour flexible
2017-04-10 14:30:53 -07:00
Mike Lang
9c88ad85e9 render/detailed/parents: Refactor for less repeated information
We replace the existing data structure with a simpler one that
only specifies how to get the parent label, which is the only
part of the Parent struct that can't be generated from the node info alone.

Future work: Standardize this concept of a label and put it in the topology instead.
Though that already exists...so just use it?
2017-04-10 14:30:52 -07:00
Mike Lang
2a74883cce If no node summary generator exists for topology, do a sane default
The default sets the node label to the node ID.
This is likely to not look very good, but the intent is that it creates an obvious problem,
ie. that the node ID is being used as the label, rather than a silent omission or more subtle problem.

Possible future work:
* For single-component IDs, extract the component automatically and use that instead.
* Instead of functions, in simple cases just have a LUT by topology with common behaviours like
  'stack = true or false', 'label = this key in node.Latest'
The latter opens up to eventually moving this info inside the report itself ala topology templates,
or at least centralizing it in the source.
2017-04-10 14:30:52 -07:00
Mike Lang
c16becc148 render/detailed: When summarising children, add fallback for unlisted topologies
Currently, if a topology does not have any specific info in nodeSummariesByID,
any children of the node that belong to that topology will be silently omitted.

This change adds a default behaviour for such topologies, with no special columns
but at least it is displayed at all.
Unlisted topologies are displayed after all listed ones, in arbitrary order.

Note that completely bogus or other special cases (eg. topology = Pseudo) still will not
be displayed as report.Topology() will fail.
2017-04-10 14:30:52 -07:00
Mike Lang
14ab5ccceb render: Maintain a list of 'primary' api topologies for each report topology
This gives us a single source of truth in a variety of situations where we want to
know what view to direct a user to in order to 'open' a particular node.

I wanted to put this in app/api_topologies where the views are defined, but that creates
a circular import.
2017-04-10 14:30:52 -07:00
Alfonso Acosta
7b838c7d69 Merge pull request #2435 from weaveworks/ami-docs-fix-disable
Fix disabling Scope in the ECS AMI
2017-04-10 18:24:11 +02:00
Alfonso Acosta
4d092723fb Review feedback 2017-04-10 18:22:56 +02:00
Alfonso Acosta
a80fa89ba4 Fix disabling Scope in the ECS AMI 2017-04-10 14:35:58 +00:00
Mike Lang
75314cb910 Reduce manually listing all topologies in a few places
Prefer WalkTopologies to apply a uniform action to every topology,
reducing need to make multiple changes and risk of errors if you forget one.
2017-04-07 12:57:42 -07:00
Filip Barl
9c566562c9 Made view mode selector responsive. (#2421) 2017-04-07 15:04:38 +02:00
Filip Barl
d71fc313b6 Not showing metric selector when empty. (#2426) 2017-04-07 12:36:21 +02:00
Anita Buehrle
258326a16c Merge pull request #2416 from weaveworks/renameamifile
missed an anchor
2017-04-06 07:57:55 -05:00
Filip Barl
82e373777a Increase cloud node thickness in graph view (#2418)
* Unified node shapes rendering templates.

* Addressed @foot's comments (fix shadow thickness across all shapes).

* Made getClipPathDefinition slightly more readable.
2017-04-06 14:44:52 +02:00
Alfonso Acosta
a404d82a91 Merge pull request #2419 from weaveworks/name-unnamed
Make various anonymous fields named
2017-04-06 14:16:29 +02:00
Alfonso Acosta
f6728b8bbc Merge pull request #2428 from kinvolk/alban/update-vendoring
vendor: update gobpf and tcptracer-bpf
2017-04-06 13:46:24 +02:00
Alban Crequy
ac5e379da2 vendor: update gobpf and tcptracer-bpf
It will help to get missing kretprobe events during the ebpf tracker
initialization and missing connect & accept events, specially visible on
single-cores:
- https://github.com/weaveworks/tcptracer-bpf/pull/36
- https://github.com/iovisor/gobpf/pull/39

It makes use of a Linux patch that should be in Linux >= 4.12
(unreleased yet): https://github.com/iovisor/bcc/issues/1072#issuecomment-289777787
It falls back gracefully on current/older Linux kernels.

The new gobpf vendoring also includes other small fixes such as error
handling.
2017-04-06 11:16:25 +02:00
Filip Barl
60629d3325 Fix the click origin of the details panel in the table mode. (#2423) 2017-04-05 16:27:42 +02:00
Paul Bellamy
b0624e7f58 Merge pull request #2422 from weaveworks/billing-host-seconds
Add NodeSeconds to billing emitter
2017-04-04 11:01:33 +01:00
Paul Bellamy
619ab90502 gvt update github.com/weaveworks/billing-client 2017-04-04 10:38:43 +01:00
Paul Bellamy
fbf74b8d40 Add NodeSeconds to billing emitter 2017-04-04 10:33:19 +01:00
Bryan Boreham
515f4b1a47 Make various anonymous fields named
Anonymous fields make any methods on the inner object visible on the
outer, so they should only be used when the outer is-a inner.
2017-04-01 11:35:10 +00:00
abuehrle
6002be731b fix md formatting 2017-03-30 22:53:00 -06:00
abuehrle
4967ffe7e3 add space 2017-03-30 22:50:23 -06:00
abuehrle
1568fd0313 missed an anchor 2017-03-30 22:47:43 -06:00
Mike Lang
eb0298b9d5 report: Refactor various methods to avoid explicitly listing topologies
By reducing the number of times we refer to every topology by name line by line,
we make it easier to add new topologies, reduce the risk of bugs where a topology is not listed,
and reduce the risk of the repeated lines getting out of sync with each other.

We introduce two new methods to assist this:
	WalkPairedTopologies, a modified WalkTopologies that gives the called function
		the same topology from two reports. This is used, for example, to implement Copy and Merge.
	TopologyMap, which returns a map of all topologies by name. This is then used to implement all other methods.

This leaves only 4 instances of listing topologies:
	In the consts at the top of the file, to give it a name
	In the struct itself
	In the constructor, where we need to set per-topology settings
	In TopologyMap
2017-03-30 16:38:34 -07:00
Alfonso Acosta
8feda14827 Merge pull request #2415 from weaveworks/renameamifile
Renameamifile
2017-03-30 17:35:33 +02:00
abuehrle
adc026b54f removed h1 2017-03-30 07:22:18 -06:00
abuehrle
077c372975 renamed file 2017-03-30 07:21:17 -06:00
Alfonso Acosta
9f5b689c46 Merge pull request #2350 from kinvolk/schu/dialer-perf
extras/dialer updates and fixes
2017-03-30 08:59:10 +02:00
Alban Crequy
ddf654fdf2 extras/dialer: updates and fixes
* remove randomness as far as possible
* make listener to close connections
* report time in a csv-friendly format
* remove tools from README
* rename time-scope-probe -> time-scope-probe-proc
* add time-scope-probe-cgroup
2017-03-30 07:30:28 +02:00
Alfonso Acosta
c3a4496341 Merge pull request #2257 from errordeveloper/update-install-docs
Update install docs
2017-03-30 01:11:37 +02:00
Anita Buehrle
92280c6f95 Merge pull request #2307 from weaveworks/add-amidocs
Add AMI docs into main docs, modified weave token instructions in one place
2017-03-29 14:48:35 -06:00
abuehrle
3e8e469069 update ids for AMIs 2017-03-29 14:17:59 -06:00
abuehrle
c7d60293bc updated version numbers 2017-03-29 10:02:22 -06:00
Alfonso Acosta
1e464a1249 Merge pull request #2411 from kinvolk/iaguis/update-tcptracer
Update tcptracer-bpf and re-enable test 311
2017-03-29 16:54:48 +02:00
Iago López Galeiras
df9de11643 Revert "integration test: disable flaky test 311"
This reverts commit d1467b67a4.
2017-03-29 15:57:32 +02:00
Iago López Galeiras
7541ad9c9c vendor: bump tcptracer-bpf
We found out we were losing kretprobes sometimes because maxactive was set too
low[1]. This problem was more apparent in our GCE test environment because
the kernel was configured with `CONFIG_PREEMPT` not set and we're running
single-core VMs (see https://github.com/weaveworks/tcptracer-bpf/issues/24 for
more details).

Unfortunately, we can't set the maxactive explicitly from userspace. Alban
submitted a kernel patch to allow this[2].

This bumps tcptracer-bpf to include a workaround[3] for this issue in the
guess-offsets phase.

[1]: https://github.com/weaveworks/tcptracer-bpf/issues/24
[2]: https://lkml.org/lkml/2017/3/28/629
[3]: https://github.com/weaveworks/tcptracer-bpf/pull/33
2017-03-29 15:57:25 +02:00
Filip Barl
43720bd7c7 Show sublabel in tooltip for Internet nodes in table view mode (#2410)
* Show sublabel in tooltip for Internet nodes in table view.

* Improves fake internet node from debug-toolbar.
2017-03-28 16:42:17 +02:00
Simon
124c35d4a9 Merge pull request #2409 from weaveworks/2408-fixes-loading-viewstate-from-localstorage
Fixes loading of viewState from localStorage into URL
2017-03-28 15:49:48 +02:00
Simon Howe
2c61635347 Fixes loading of viewState from localStorage into URL
Needed another serialization to avoid "[Object object]" in the url.
2017-03-28 14:53:35 +02:00
Filip Barl
b2f06a63ee Don't reset zoom on refresh layout. (#2407) 2017-03-28 14:30:23 +02:00
Filip Barl
3e039a3143 Hide the opened help panel when clicking on the search bar icon. (#2406) 2017-03-28 13:04:41 +02:00