Matthias Radestock
b087e95711
bump tcptracer-bpf version
2017-07-12 07:27:35 +01:00
Matthias Radestock
8cf79b2e4a
bump tcptracer-bpf version and use it to fix race
...
We defer starting the ebpf tracer until we've set the global var which
is referenced by the callback functions. Previously the var could be
unset when the callbacks are invoked, resulting in a segfault.
Fixes #2687 .
2017-07-07 06:56:28 +01:00
Alfonso Acosta
93b0bc82d3
Remove more unused dependencies
2017-07-03 20:20:34 +00:00
Roland Schilter
247c365e16
Merge pull request #2570 from weaveworks/update-weaveworks-common
...
Update github.com/weaveworks/common & dependencies (needs go1.8)
2017-06-29 13:48:21 +02:00
Roland Schilter
c817eccb9b
Update github.com/weaveworks/common & deps
...
Bumped all packages that make the build fail:
gvt update github.com/golang/protobuf/proto
gvt fetch github.com/golang/protobuf/ptypes
gvt fetch google.golang.org/genproto/googleapis/rpc/status
gvt update google.golang.org/grpc/status
gvt update google.golang.org/grpc/transport
gvt update golang.org/x/net/http2
2017-06-21 12:19:17 +02:00
Matthias Radestock
a306867610
fast network membership check
...
The rendering code checks whether endpoint IPs are part of
cluster-local networks. Due to the prevalence of endpoints - medium
sized reports can contain many thousands of endpoints - this is
performance critical. Alas the existing code performs the check via a
linear scan of a list of networks. That is slow when there are more
than a few, which will be the case in the context of k8s, since there
the probes register service IPs as local /32 networks.
Here we change representation of the set of networks to a prefix
tree (aka trie), which is well-suited for IP network membership checks
since networks are in fact a bitstring prefixes.
The specific representation is a crit-bit tree, but that choice was
purely based on implementation convenience - the chosen library is the
only one I could find that directly supports IP networks.
2017-06-21 03:03:49 +01:00
Matthias Radestock
9e75331e9a
Revert "fast network membership check"
...
This reverts commit 98f036359b .
2017-06-20 20:51:27 +01:00
Matthias Radestock
98f036359b
fast network membership check
...
The rendering code checks whether endpoint IPs are part of
cluster-local networks. Due to the prevalence of endpoints - medium
sized reports can contain many thousands of endpoints - this is
performance critical. Alas the existing code performs the check via a
linear scan of a list of networks. That is slow when there are more
than a few. Unfortunately in some common k8s network setups, e.g. on
AWS, a cluster can contain hundreds of networks, due to /32 networks
derived from interfaces with multiple IPs.
Here we change representation of the set of networks to a prefix
tree (aka trie), which is well-suited for IP network membership checks
since networks are in fact a bitstring prefixes.
The specific representation is a crit-bit tree, but that choice was
purely based on implementation convenience - the chosen library is the
only one I could find that directly supports IP networks.
2017-06-20 19:31:11 +01:00
Roland Schilter
2e4f4a3771
Elide url passwords in cli arguments ( #2568 )
...
Closes #2365
2017-06-07 10:18:18 +01:00
Alfonso Acosta
c70e357998
Bump github.com/weaveworks/tcptracer-bpf/ and github.com/iovisor/gobpf/
2017-05-26 04:44:06 +00:00
Alban Crequy
1fb4ce728b
vendor: update tcptracer-bpf
...
This includes https://github.com/weaveworks/tcptracer-bpf/pull/39
2017-05-19 14:14:26 +02:00
Alban Crequy
fc0e4490dd
vendoring: update gobpf and tcptracer-bpf
2017-05-10 18:37:32 +02:00
Marcus Cobden
5b6e5ca81d
Update billing-client
2017-05-09 15:33:11 +00:00
Alban Crequy
c6a299402c
vendor: update github.com/weaveworks/common
2017-05-02 14:42:11 +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
Paul Bellamy
619ab90502
gvt update github.com/weaveworks/billing-client
2017-04-04 10:38:43 +01: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
Paul Bellamy
e68ffd467e
Add app/multitenant/billing_emitter to emit billing events
2017-03-22 10:41:34 +00:00
Alfonso Acosta
f3a9b61cd0
Merge pull request #2366 from kinvolk/schu/ebpf-stop-tracker
...
endpoint/ebpf: implement stop
2017-03-22 10:17:55 +01:00
Michael Schubert
b49d2e6f9d
vendor: update github.com/weaveworks/tcptracer-bpf
2017-03-22 10:07:55 +01:00
Alfonso Acosta
482a41f88e
Bump github.com/weaveworks/common
2017-03-21 11:49:02 +00:00
Bryan Boreham
07c8265c6b
Update ugorji/co/codec to latest commit 708a42d246822952f38190a8d8c4e6b16a0e600c
2017-03-14 14:54:17 +00:00
Iago López Galeiras
6ede5e5c91
vendor: add weaveworks/tcptracer-bpf
2017-03-08 22:11:12 +01:00
Iago López Galeiras
d77a297ebf
vendor: add iovisor/gobpf
2017-03-08 22:11:12 +01:00
Alfonso Acosta
96e7c6b414
Bump google.golang.org/grpc to make github.com/weaveworks/common happy
2017-02-24 13:50:18 +00:00
Alfonso Acosta
e8cb4fb4c6
Bump github.com/weaveworks/common
2017-02-24 13:43:06 +00:00
Jonathan Lange
a8ba7b2c86
Log whether it's a websocket request
2016-12-12 17:57:48 +00:00
Jonathan Lange
256e480acc
Vendor new weaveworks/common
2016-12-12 17:40:46 +00:00
Jonathan Lange
813e6468bc
Correctly instrument websocket handshakes
...
Part of weaveworks/monitoring#82
2016-12-08 17:36:45 +00:00
Jonathan Lange
496afb9a42
Vendor in weaveworks/common
2016-12-07 11:22:39 +00:00
Tom Wilkie
21ee72a384
Add OpenTracing support to TimeRequestHistogram ( #2023 )
...
* Vendor open tracing
* Extend TimeRequestHistorgram to also emit opentracing spans.
* Update some of the labels
2016-11-22 14:43:15 +00:00
Simon
7e5166e45e
Merge pull request #1966 from weaveworks/746-resize-ttys
...
Resize TTYs
2016-11-03 11:06:16 +01:00
Alfonso Acosta
260464e7f2
Vendor github.com/dustin/go-humanize
2016-11-02 13:00:16 +00:00
Alfonso Acosta
6cbf2bf26e
Vendor github.com/docker/docker/pkg/term
2016-10-31 11:08:56 +00:00
Mike Lang
8f8c0f2204
Merge pull request #1839 from weaveworks/mike/app/graceful-shutdown
...
Gracefully shutdown app, letting active http requests finish with timeout
2016-09-09 15:06:23 -07:00
Krzesimir Nowak
467ad884f6
Vendor github.com/containernetworking/cni/pkg/ns
...
We will use this code to execute the code in some process' network
namespace.
I did the vendoring a bit differently, as gvt seems to be a bit dumb
about getting dependencies for test packages (it tried to vendor
ginkgo and gomega, since cni tests are using it).
Also, instead of vendoring golang.org/x/sys as
github.com/containernetworking/cni/vendor/golang.org/x/sys I moved it
to scope's vendor directory.
2016-09-06 11:53:34 +02:00
Mike Lang
46249fd403
vendor github.com/tylerb/graceful and dependencies
2016-08-31 18:07:56 -07:00
Alfonso Acosta
47056bde16
Vendor the exact same version of mergo used by k8s
...
Merging is buggy in master: https://github.com/imdario/mergo/issues/33
2016-08-18 15:32:49 +00:00
Alfonso Acosta
e9235a56ba
Vendor github.com/imdario/mergo
...
In order to use k8s.io/kubernetes/pkg/client/unversioned/clientcmd/client_config.go
2016-08-17 15:15:34 +00:00
Alfonso Acosta
c39b16ae9f
Bump github.com/fsouza/go-dockerclient
...
To include https://github.com/fsouza/go-dockerclient/pull/562 , which
fixes https://github.com/weaveworks/scope/issues/1767
2016-08-15 09:34:18 +00:00
Alfonso Acosta
ecc8a3138f
Replace github.com/mndrix/ps by github.com/weaveworks/ps
2016-07-26 10:35:55 +00:00
Jonathan Lange
47fcb52354
Optional memcached between probes and S3
...
If given settings for memcached, services will store & fetch reports
from memcache after checking their in-process cache but before fetching
from S3.
2016-06-22 18:40:50 +01:00
Alfonso Acosta
7c5799ad59
Bump github.com/fsouza/go-dockerclient
2016-06-15 16:54:18 +00:00
Tom Wilkie
a7b34f1601
Use NATS for shortcut reports in the service. ( #1568 )
...
* Vendor nats-io/nats
* Use NATS for shortcut reports.
* Review feedback.
* Rejig shortcut subscriptions, so they work.
* Review feedback
2016-06-09 12:48:41 +01:00
Tom Wilkie
02554b1dcd
Propagate network info for containers sharing network namespaces ( #1401 )
...
- Add armon/go-radix library, use this to find containers by prefix
- Deal with host net namespace in the same way
2016-04-29 18:13:55 +01:00
Alfonso Acosta
1545b00394
Bump vendor/github.com/weaveworks/go-checkpoint
2016-04-28 11:31:55 +00:00
Paul Bellamy
f211d48cda
Merge pull request #1126 from weaveworks/plugins
...
Plugins
2016-04-12 18:03:26 +01:00
Paul Bellamy
f899f4451b
adding github.com/paypal/ionet for testing
2016-04-12 17:20:20 +01:00
Tom Wilkie
b68a2b6112
Update vendored version of go-spew; fixes #1273
2016-04-12 17:17:17 +01:00
Tom Wilkie
f4ef8020ac
Merge pull request #1235 from weaveworks/970-reinstating-restarting-ruckus
...
Update docker client, to get better state strings in the UI
2016-04-06 18:23:34 +02:00