Commit Graph

5664 Commits

Author SHA1 Message Date
Bryan Boreham
1ce1ecad7c In unit tests, check counters 2020-03-10 11:30:25 +00:00
Bryan Boreham
e6eaf11fb6 Merge pull request #3753 from weaveworks/cache-intervals
Cache the last-known report interval per user
2020-03-06 19:13:59 +00:00
Bryan Boreham
53701aca1f Cache the last-known report interval per user
Delta reports don't contain the string we are looking for, so remember
it from the last full report.
2020-03-06 18:03:51 +00:00
Bryan Boreham
e04dc86dba Merge pull request #3751 from weaveworks/billing-window
Improve calculation of usage in multitenant code
2020-03-06 14:14:00 +00:00
Bryan Boreham
329023b7c5 Improve calculation of usage in multitenant code
Use the duration supplied, if there is one.

It was looking for a process named "scope-probe", whereas the
executable is just named "scope".
2020-03-06 13:29:54 +00:00
Bryan Boreham
b07bfb294b Merge pull request #3747 from weaveworks/simplify-renderers
Simplify some renderers
2020-02-25 11:07:55 +00:00
Bryan Boreham
8aca4d6452 Remove MapToEmpty() - no longer used 2020-02-18 12:14:18 +00:00
Bryan Boreham
2c2671ee2e Merge pull request #3745 from weaveworks/pipe-tracing
Add tracing for pipe operations; updates weaveworks, jaeger and aws dependencies
2020-02-04 12:31:41 +00:00
Bryan Boreham
574c76ac40 Merge pull request #3709 from weaveworks/report-endpoint-subset
Report a subset of connections from/to the same endpoint
2020-01-27 22:42:47 +00:00
Bryan Boreham
f732eed3a5 refactor: remove unused parameterisation of containerWithImageNameRenderer 2020-01-27 21:30:52 +00:00
Bryan Boreham
875fdba352 rendering: simplify ContainerHostnameRenderer
The second half of the render added all the same nodes, except for
those with no Docker image information, so we could show a figure for
those filtered out on that basis.

This just isn't worth the effort.
2020-01-27 21:28:23 +00:00
Bryan Boreham
bbce9e3d69 refactor: simplify ContainerImageRenderer
Crunch a Map and Reduce into a single Renderer that has the same function.
2020-01-27 21:27:49 +00:00
Bryan Boreham
4eae4a9701 Merge pull request #3740 from weaveworks/update-ruby-version
Update Ruby version for the benefit of Netlify build
2020-01-27 16:55:00 +00:00
Bryan Boreham
6d4e914201 Update Ruby version for the benefit of Netlify build
Picked 2.6.2 based on message from Netlify build:
"Included versions: 2.3.6 2.5.4 2.4.5 2.4.3 2.2.9 2.6.2"
2020-01-27 16:25:58 +00:00
Bryan Boreham
7dc7215a26 Refactor: improve readability based on review feedback 2020-01-23 15:04:51 +00:00
Bryan Boreham
53297eb07c Merge pull request #3743 from weaveworks/more-pause
kubernetes: detect more 'pause' containers
2020-01-23 14:43:06 +00:00
Bryan Boreham
a375a54546 Merge pull request #3714 from weaveworks/simplify-control-serialisation
performance: send active controls as a single string per node
2020-01-23 12:15:21 +00:00
Bryan Boreham
880daa78ff Extend K8s tagger test to cover pause containers 2020-01-23 11:47:40 +00:00
Bryan Boreham
f1b06a020e Update jaeger-client package and dependencies 2020-01-21 16:34:34 +00:00
Bryan Boreham
321dbeef6d Update weaveworks/common and dependencies 2020-01-21 16:26:13 +00:00
Bryan Boreham
634e8f1158 Add tracing for pipe operations 2020-01-21 15:51:00 +00:00
Bryan Boreham
35451b4826 Merge pull request #3742 from weaveworks/go-modules
Convert to Go modules
2020-01-15 12:20:30 +00:00
Bryan Boreham
92b8a489e7 kubernetes: detect more 'pause' containers
Dockershim has added a label `io.kubernetes.docker.type` for at least
four years, where the pause container is of type `podsandbox`.  This
should be more reliable than trying to keep up with everyone's name
for the pause container.
2020-01-15 10:26:10 +00:00
Bryan Boreham
f70f2481c7 Update tcptracer-bpf version so we don't need manual workaround 2020-01-14 14:58:08 +00:00
Bryan Boreham
15bb96bb67 Remove outdated instructions about rebuilding Go libraries
This bit is unnecessary with newer versions of Go that cache builds
for different tags in different places.
2020-01-14 13:22:33 +00:00
Bryan Boreham
bc4ec26bf5 Turn off module use for codecgen build
There is no way to pass `-mod=vendor` through to the Go compilation
that codecgen runs.
2020-01-14 12:33:49 +00:00
Bryan Boreham
aae86877c7 Add back runsvint dependency
This is a small program used to watch app and probe running inside
the container.  We need to go round a few houses to be able to build
it from vendor directory.
2020-01-14 12:29:31 +00:00
Bryan Boreham
54a513c9fc fixup: manually add C files that 'go mod' doesn't bring in
Need workaround until a fix upstream such as
https://github.com/iovisor/gobpf/pull/206/files is merged.
2020-01-14 11:12:48 +00:00
Bryan Boreham
3a991eca99 build: use vendored files when building 2020-01-13 17:29:07 +00:00
Bryan Boreham
3357551619 build: don't need -i flag
This was useful to cache dependent library builds, but Go does that
better now so we don't need the flag.
2020-01-13 17:28:18 +00:00
Bryan Boreham
2171e21cae Ensure ugorji code-generation dependencies are vendored 2020-01-13 17:27:13 +00:00
Bryan Boreham
0bb92227a2 build: update vendor directory 2020-01-13 16:56:01 +00:00
Bryan Boreham
b6c25e6cfe build: update docker dependency to fix compile error in fsouza 2020-01-13 16:56:00 +00:00
Bryan Boreham
20898ea352 build: tweak version of iovisor and its dependencies
Without this we get a build error:

	github.com/Sirupsen/logrus: github.com/Sirupsen/logrus@v1.4.2: parsing go.mod:
	module declares its path as: github.com/sirupsen/logrus
	        but was required as: github.com/Sirupsen/logrus
2020-01-13 16:55:59 +00:00
Bryan Boreham
2bfe2146e5 build: initial modules conversion
Created by running `go mod init`; all versions the same as before.
2020-01-13 16:55:55 +00:00
Bryan Boreham
1dcdfab05a fixup: from review feedback
Fix a logic error in ECS scale-down button, bad copy/paste in
ActiveControls() and neaten the switch cases in container controls.

Co-Authored-By: Filip Barl <filip@weave.works>
2020-01-13 14:48:38 +00:00
Filip Barl
1f51495e59 Merge pull request #3733 from weaveworks/dedupe-yarn-with-integrity
Dedupe yarn.lock
2020-01-13 12:08:24 +01:00
Bryan Boreham
de939cc39b tests: add an integration test to check connection thinning 2020-01-13 08:59:51 +00:00
Bryan Boreham
b7b245ed48 tests: connection subset testing
Utility functions to create fake sets of connections for testing, and
then exercising the subset filtering code to check that quantities
come out as expected.
2020-01-13 08:59:51 +00:00
Bryan Boreham
4c9cf138d6 ui: include skipped connection count in rendering 2020-01-13 08:53:47 +00:00
Bryan Boreham
de3c34ddc6 performance(probe): thin out many connections between the same point
The app will only show one line, regardless of how many connections we
have, so reduce the number to save bandwidth and rendering time.

We filter by choosing a modulus, e.g. send every connection that is a
multiple of 3, or 9, and so on. We avoid multiples of 2 because port
numbers are often a multiple of 2 or 4 for bit-encoding reasons.
2020-01-13 08:53:47 +00:00
Bryan Boreham
fc46ea17ee refactor(probe/ebpf): track connections by four-tuple+namespace
The previous code tracked only by four-tuple, which meant that two
connections with same address/port combinations in different namespace
would clash and one would get dropped.

Also previously the tuple was duplicated between the map key and
value, so we remove it from the value.

We only add the namespace in the case that the local address is
loopback, which matches how the rest of Scope treats addresses.
2020-01-13 08:53:47 +00:00
Bryan Boreham
9758c81736 comment: add explanatory comment on handleFdInstall() 2020-01-13 08:53:47 +00:00
Bryan Boreham
d57a4df3b2 enhancement(probe): debug message for initial connection 2020-01-13 08:53:47 +00:00
Bryan Boreham
2767e2b319 improvement: only record connections that we have a PID for 2020-01-13 08:53:47 +00:00
Bryan Boreham
a6da810261 refactor(probe): move host/pid encoding into addConnection() function 2020-01-13 08:53:47 +00:00
Bryan Boreham
8b1296c892 Merge pull request #3735 from weaveworks/more-rbac
Add more rbac permissions in the 'apps' group
2019-12-15 20:52:31 +00:00
Bryan Boreham
91eb720b8d Add more rbac permissions in the 'apps' group
Daemonset was missed in the update from v1beta1 to v1;
also we need get and update on deployments/scale.
2019-12-12 20:18:04 +00:00
Filip Barl
c6d5fe1ec6 build(client): Ran yarn install to update yarn.lock 2019-12-05 11:18:07 +01:00
Filip Barl
51c731a1e9 build(client): deduplicate all yarn dependencies 2019-12-05 11:16:14 +01:00