71 Commits

Author SHA1 Message Date
Tom Wilkie
6b56475766 Use ps.Map for Counters and Sets, remove Metadata in favour of Latest.
Also
- Add more complicated report.json for benchmark
- Break up report/topology.go
- Implement our own DeepEqual for ps.Map
2016-01-22 15:10:32 -08:00
Tom Wilkie
e9e152b9a3 Use argv[0] for process name to be more like ps. 2016-01-06 11:55:34 +00:00
Tom Wilkie
caff695f96 Gather per-process CPU and memory metrics. 2015-12-16 14:38:21 +00:00
Tom Wilkie
bc8f86a75f Merge pull request #751 from weaveworks/testing
Add some more testing to procspy
2015-12-15 17:56:41 +00:00
Tom Wilkie
550f21511a We need to read /proc/PID/net/tcp6 to see the pids for the server end of local connections. 2015-12-15 13:38:30 +00:00
Tom Wilkie
8024827f76 Add some more testing to procspy 2015-12-11 13:01:59 +00:00
Tom Wilkie
a2862baf33 Don't list fds if there are not connections in the net namespace. 2015-12-11 10:27:27 +00:00
Tom Wilkie
cc90c6c95d Don't read tcp6 file (we don't deal with ipv6 anywhere else). 2015-12-11 10:27:26 +00:00
Tom Wilkie
1fcd079563 Use Readdirnames to reduce number of stats we're doing. 2015-12-10 14:43:40 +00:00
Tom Wilkie
cc5935a89d Review feedback 2015-12-10 14:10:36 +00:00
Tom Wilkie
ed6c4088fa Fix up tests. 2015-12-10 14:00:43 +00:00
Tom Wilkie
e15fe2b747 Use caching proc walker in procspy. 2015-12-10 14:00:42 +00:00
Tom Wilkie
5cadafcda4 Extend testing of procspy. 2015-12-09 14:47:00 +00:00
Tom Wilkie
b94751ac10 Move procspy out of vendor into probe/endpoint. 2015-12-09 11:06:04 +00:00
Tom Wilkie
9142325d54 Instruments probe runtime to find slow reporter. 2015-11-12 17:01:52 +00:00
Alvaro Saurin
bc972a52ab Resolve to a group of names (instead of taking only the first one) 2015-11-09 13:45:02 +01:00
Tom Wilkie
c5c115bb0f Make channel so stop doesn't fail; also, test stop. 2015-10-28 15:25:38 +00:00
Tom Wilkie
07af26e05b Review feedback 2015-10-27 11:39:38 +00:00
Tom Wilkie
a3c53aadf5 No more nil flow workers 2015-10-27 10:53:23 +00:00
Peter Bourgon
cb40ad3a90 Continued un-exporting of symbols; renames
- Unexport consts, types, vars, etc.
- Rename Conntracker (interface) to FlowWalker, to match its definition.
- Rename conntracker (type) to conntrackWalker, to match the interface.
- Move conntrack_test.go to conntrack_internal_test.go and package endpoint
2015-10-27 10:40:09 +00:00
Peter Bourgon
6ae5077515 Un-export NATMapper
Lots of TODOs to clean up...
2015-10-27 10:38:22 +00:00
Peter Bourgon
36ce1089f4 Don't export reverseResolver
It's only used within package endpoint, so it shouldn't be exported.
That means resolver_test becomes resolver_internal_test, and with the
previous change to the fixture, we can avoid the dot-import.

Also, update method names to reflect it's an unexported type.
2015-10-27 10:38:19 +00:00
Peter Bourgon
65a7547415 Intermediate stage fix 2015-10-27 10:36:53 +00:00
Peter Bourgon
32a57e63db probe/endpoint: NATMapper missed an edge case
NATMapper can be created with a nil Conntracker if
ConntrackerModulePresent is false, e.g. on Darwin.
Check for that in ApplyNAT.
2015-10-27 10:36:52 +00:00
Tom Wilkie
492ca1692d Review feedback 2015-10-22 09:01:53 +00:00
Tom Wilkie
0cd3de5c7f Retry conntrack, after a short delay, in a loop. 2015-10-21 15:17:41 +00:00
Alvaro Saurin
a1f467f20f Sort DNS answers before returning a name with Get() 2015-10-20 09:23:19 +02:00
Tom Wilkie
e2dfcb1def Review feedback 2015-09-24 03:07:20 +00:00
Tom Wilkie
7da599194d Test the nat mapper. 2015-09-23 11:01:29 +00:00
Tom Wilkie
f9815afad3 Remove some duplicate functionality, add some basic tests. 2015-09-23 09:46:11 +00:00
Tom Wilkie
b9ffca42e5 Don't fail if there are no existing nat mappings. 2015-09-23 03:35:53 +00:00
Tom Wilkie
fcb7c47bd9 Always include endpoint nodes brought in by procspy, even if they get merged with conntracked endpoints. 2015-09-16 03:46:15 +00:00
Tom Wilkie
54299dc0fd Review feedback. 2015-09-15 10:03:06 +00:00
Tom Wilkie
b7598c376e Don't show shortlived connections in the host view. 2015-09-15 10:03:04 +00:00
Tom Wilkie
89b5a8d432 We don't know which end is local for shortlived connections, so don't tag any with the hostid. 2015-09-15 10:03:03 +00:00
Tom Wilkie
766d8772d7 Do a conntrack -L before -E to capture existing connections and NAT mappings. 2015-09-15 10:02:59 +00:00
Tom Wilkie
925851169e Use AddNode when adding nodes to the topology, such that the get merged with any existing node that might be there. 2015-09-15 10:02:58 +00:00
Tom Wilkie
7d6b5a540e Revert "Merge pull request #450 from weaveworks/scope-284"
This reverts commit 46345e3bdb, reversing
changes made to bf3e9a1601.

Conflicts:
	probe/process/walker_darwin.go
2015-09-15 03:14:39 +00:00
Alvaro Saurin
2f9f54688f Keep a cache of open files, reducing the number of open/close cycles in the /proc dir 2015-09-14 10:59:23 +02:00
Alvaro Saurin
14dc6a5391 Cache processes and connections when reading from the /proc
Code cleanups
2015-09-14 10:53:24 +02:00
Alvaro Saurin
4331fb1c79 Drop all the dependencies we had on procspy by moving some code to probe. 2015-09-14 10:44:53 +02:00
Tom Wilkie
d5570f27a7 Only conntrack tcp connections to reduce cpu load from xml marshalling. 2015-09-09 15:08:54 +00:00
Tom Wilkie
d411afd916 WithNode is a CPU hog. 2015-09-09 15:01:57 +00:00
Tom Wilkie
9ab98baafc Merge pull request #451 from weaveworks/reverse-resolver-fix
Small improvements to reverse resolver
2015-09-07 11:43:47 +01:00
Tom Wilkie
4da819b18c Merge pull request #449 from weaveworks/447-short-lived-in-apps
Prevent short lived connections appearing as pseudo nodes in the applications view.
2015-09-07 11:32:38 +01:00
Tom Wilkie
f5d6872c51 Don't rate limit requests that have already been resolved, and cache negative responses. 2015-09-07 10:30:16 +00:00
Peter Bourgon
7513b4e396 Wrap comments at 80col throughout the fileset 2015-09-07 10:36:35 +02:00
Tom Wilkie
85bfcddb3f Prevent short lived connections appearing as pseudo nodes in the applications view. 2015-09-06 16:26:57 +00:00
Tom Wilkie
ad6702a196 Some review feedback. 2015-09-05 19:39:22 +00:00
Alvaro Saurin
15e25edc40 New asynchronous, caching DNS resolver for reverse resolutions
Add nodes for the remote side of connections iff we have a DNS reverse resolution for the IP.
Unit test for the resolver
2015-09-04 17:21:45 +02:00