Commit Graph

323 Commits

Author SHA1 Message Date
3b7a253c57 flatpak: add symbol dirs on host 2019-08-02 19:39:28 -07:00
1ff88caa89 flatpak: peek via host access 2019-08-02 18:56:48 -07:00
aad61d52f3 flatpak: add helpers to locate flatpak installation debug dirs
The goal here is to be able to locate all of the debug directories for
active flatpak runtimes so that we can possibly decode debug libraries
from them (after verifying build-id/CRC).
2019-08-02 18:15:02 -07:00
0c3f2df42b libsysprof: improve decoding a bit from flatpak 2019-08-02 13:22:03 -07:00
ba725d1599 libsysprof: use mountinfo helper for path translations 2019-08-02 13:10:28 -07:00
96dbd07c82 libsysprof: whitespace cleanup 2019-08-02 12:56:57 -07:00
7e7657dd03 libsysprof: add mountinfo helper
The goal of this helper is to simplify the process of parsing information
about mounts and the mountinfo for per-process maps. We should be able
to change sysprof-proc-source to use this and have better support for
getting the libraries within different mount namespaces.
2019-08-02 12:56:54 -07:00
8c72bafff8 tools: set cwd when spawning with sysprof-cli 2019-07-28 12:32:49 -07:00
ce7b11695f build: fix some 32-bit build issues 2019-07-02 17:00:44 -07:00
3755b9dd6e perf: only send exit events when tid==pid 2019-07-01 15:41:13 -07:00
de56fabbfc diskstat: use "Total " as prefix to read/write counters 2019-07-01 12:55:21 -07:00
757e152f88 diskstat: add simple /proc/diskstats data source 2019-07-01 12:55:16 -07:00
ddf7284d29 netdev: add missing header 2019-06-26 19:48:28 -07:00
22ce2875d1 netdev: add combined counter for all devices (cooked) together 2019-06-26 19:24:38 -07:00
6d4796294e netdev: start on netdev aid to display network graphs 2019-06-26 18:58:31 -07:00
00997fbd7f netdev: add source for network device information
This source parses the /proc/net/dev file to get basic statistics about
network throughput on the system.

We still need a specialized Aid and Visualizer so that we can render the
counter data in a more useful format.
2019-06-26 14:18:21 -07:00
47337e6c4b add combined battery counter
this is useful for situations where we have multiple batteries inserted
and we might only care about total charge
2019-06-24 10:01:27 -07:00
4792a43887 add rate for charge type 2019-06-24 08:58:16 -07:00
84f135eced libsysprof: add range helper 2019-06-20 13:18:33 -07:00
8d012e83d7 libsysprof: join overlapping ranges 2019-06-19 21:13:33 -07:00
1254b16140 governor: add source to toggle CPU governer while running 2019-06-14 08:03:59 -07:00
fc745767d4 governor: add daemon API and helpers to set CPU governor 2019-06-14 08:03:37 -07:00
c46ac1374b battery: fix battery type in new func 2019-06-13 20:23:03 -07:00
1726a8983f battery: do final poll at stop() time 2019-06-13 20:18:52 -07:00
a5ef58dde6 battery: wait for first battery polling 2019-06-13 20:14:18 -07:00
2ef74062e9 battery: poll batteries immediately after starting 2019-06-13 19:39:16 -07:00
3299c0d41c battery: style cleanup 2019-06-13 19:37:33 -07:00
555a10ef65 battery: only submit event if battery value changed 2019-06-13 19:04:11 -07:00
a95287b2d2 libsysprof: show a combined cpu counter by default
We need a way to show the individual counters, but this is a good first
start. To do the combined counters, we need to come up with something that
allows expanding of rows and what not.
2019-06-13 10:53:59 -07:00
416d0383f2 battery: fix typo 2019-06-12 16:30:17 -07:00
5dbb486512 tracefd: give memfd a descriptive name
This makes it easier to track down from /proc/$pid/fd/.
2019-06-12 11:14:21 -07:00
4a31b934be tracefd: use g_strdup_printf()
I don't like maintaining stack based string allocations unless it's really
a performance savings.
2019-06-12 11:13:44 -07:00
688984d431 whitespace 2019-06-11 18:48:32 -07:00
e97490be16 libsysprof: abstract subprocess usage
For embedding cases, we need a bit more control here so that the
application can be in control of how the process is spawned.
2019-06-11 18:48:28 -07:00
19c2791198 build: fix build on Debian 9 2019-06-11 09:48:41 -07:00
1d0a269b80 libsysprof: start on battery charge capture 2019-06-10 21:32:12 -07:00
0fbe44f06c libsysprof: use properties for D-Bus attributes 2019-06-06 17:33:16 -07:00
e8b9d19f92 libsysprof: watch bus name changes for target bus peer 2019-06-04 18:51:12 -07:00
807bff9152 build: fix build on macOS 2019-06-04 14:35:48 -07:00
af2a17daa5 polkit: try harder to make polkit optional on non-Linux
We want the viewer to be usable on Mac/Windows/FreeBSD, even if our
profiler tooling isn't (yet).

Another option could be to do a simplified viewer window for those
platforms, but I think that is more work to maintain than abstracting
some of the stuff better in libsysprof.
2019-06-04 14:28:06 -07:00
dcd1a9fbcf libsysprof: allow changing envvar from init and after 2019-06-03 19:09:30 -07:00
b7d2ef35be libsysprof: ensure type exists for gjs 2019-06-03 19:02:50 -07:00
af32235541 gjs: add gjs source back
This sets various environment variables we need.
2019-06-03 18:01:53 -07:00
c3915a72f2 build: always install capture headers 2019-06-03 12:52:35 -07:00
5630e1680f build: add -Dlibsysprof option
This gets us closer to being able to only build the capture static library
2019-06-03 12:26:25 -07:00
a74e6daa3b libsysprof: use a{sv} for future profiler specific options
We may need this in the future to send backend-specific options to the
profiler peer.
2019-05-29 15:13:01 -07:00
82f8872c1d libsysprof: add libc/libstdc++ 2019-05-29 15:13:01 -07:00
1ee1a7cc3a libsysprof: ignore kernel symbols if embedded resolver is found
This ensures that we don't mix symbols from kernels if we can reasonably
expect that the necessary symbols were decoded by the peer.
2019-05-29 15:13:01 -07:00
716b913347 libsysprof: check for enough symbols to dereference 2019-05-29 15:13:01 -07:00
7f92889076 libsysprof: be NULL safe 2019-05-29 15:13:01 -07:00