a286c2a8cb
libsysprof: do process setup before recording starts
...
Otherwise we end up recording ourselves too much. Do it before even though
there is a small race condition chance to miss a process spawning at the
time between prepare and record.
2023-08-04 12:17:30 -07:00
b2ce9efbb4
libsysprof: get various process info during prepare
...
That way it doesn't show up on the profiles themselves.
2023-08-04 12:11:19 -07:00
bd2d97c309
sysprof: dispose dbus utility children
2023-08-04 10:07:18 -07:00
2c0f055af1
build: make sysprof-journald-source.c conditional
...
Fixes #88
2023-08-02 11:57:32 -07:00
4953082178
sysprof: keep size column more stable
2023-08-02 10:16:51 -07:00
78f4d1b37e
libsysprof: add capture time as metadata
...
This is actually readable to the user and doesn't require dealing with
SysprofCaptureFileHeader data.
2023-08-02 10:11:54 -07:00
61f94957d3
libsysprof: use #if instead of #ifdef for HAVE_LIBSYSTEMD
...
Fixes #88
2023-08-02 10:00:32 -07:00
95a3177623
Revert "meson: remove unnecessary join_path() with get_option('prefix')"
...
This reverts commit 602a4d7fa7 .
You absolutely must have these paths expanded when in use in system files.
2023-08-01 19:21:41 -07:00
181963fb73
libsysprof: swap fields for marks
2023-08-01 15:37:09 -07:00
b587e35ada
libsysprof: add test to convert .ninja_log to trace marks
2023-08-01 15:33:17 -07:00
4ef229d436
sysprof: fix missing type assurance
2023-08-01 15:33:01 -07:00
3c33ae06a0
sysprof: add dbus utility
...
This allows viewing the message contents that were captured in a textview
within the utility pane.
We already limit the max size of a message in the capture file, so
presumably messages are relatively small enough to fit here.
2023-08-01 11:20:24 -07:00
fa1c88eaf9
sysprof: bring back Hits column for descendants
...
This is helpful because it lets you know how reliable your percentages are.
2023-07-31 13:30:00 -07:00
aaafa8e9ef
libsysprof: start naming some bits as app store
...
Probably can come up with better naming here, but it'd be nice to lay
blame where it makes sense.
2023-07-31 13:29:34 -07:00
d5f9cecec5
libsysprof: provide escape patch for listing traceables
...
We don't want this to get out of hand, so limit it to 1000 for now.
2023-07-31 12:16:51 -07:00
6f6228b1b5
libsysprof: sort indexes by size from smallest
...
This is just to help ensure we are not doing extra work that would fall
out of the visible range of the index.
2023-07-31 12:07:17 -07:00
fc888857c4
libsysprof-profile: fix signature of sysprof_perf_event_stream_new
...
Followup to 283da1e107
2023-07-31 17:43:00 +03:00
2529abc3db
build: add missing header
2023-07-30 13:42:10 -07:00
a8ae41aafe
sysprof: match memory augmentation type to capture format
2023-07-28 17:52:33 -07:00
2313936228
sysprof: fix some edge cases for allocation tracking
2023-07-28 17:51:37 -07:00
6082d5f277
Merge branch 'meson' of https://gitlab.gnome.org/tristan957/sysprof
2023-07-28 17:42:14 -07:00
438c42d0ae
libsysprof: add a tool to list allocations by function (and children)
2023-07-28 13:04:09 -07:00
c087b71299
sysprof-cli: note about appending symbols to capture
2023-07-28 12:08:59 -07:00
602a4d7fa7
meson: remove unnecessary join_path() with get_option('prefix')
...
Meson will expand the paths for you.
2023-07-28 14:04:48 -05:00
f40587a38a
meson: remove unnecessary argument nesting
2023-07-28 14:03:51 -05:00
50cfd82286
meson: remove extraneous default install_dir arguments
2023-07-28 14:02:33 -05:00
b10d056635
meson: use dependency('dl')
...
Added in Meson 0.62.0. It aids in finding libdl on various platforms.
2023-07-28 14:00:57 -05:00
f93767cfb2
meson: use variables for gio-2.0, glib-2.0, and gio-unix-2.0
2023-07-28 14:00:04 -05:00
dd4686404c
libsysprof: ensure we always have trailing \0 on bytes
...
This is needed so that our invariants elsewhere are maintained.
2023-07-28 11:59:32 -07:00
79ba6ab3d5
meson: remove explicit pkgconfig install_dir
...
This is the default.
2023-07-28 13:09:48 -05:00
afe71d7562
libsysprof: add coredump category
...
This just makes it easier to see if the time spent on something was
related to a coredump handler in the kernel.
2023-07-28 10:49:14 -07:00
e47371e940
greeter: add plumbing for gjs trace fd
2023-07-27 15:59:23 -07:00
3a74254f73
tools: use sysprof_tracefd_consumer_new
...
This just allows us to avoid some duplicated code.
2023-07-27 15:49:34 -07:00
048e366ea9
libsysprof: add a SysprofTracefdConsumer
...
This is meant to simplify the proxying of data from a tracefd into the
destination capture.
2023-07-27 15:40:59 -07:00
566bb7bccc
sysprof: wire up session/system toggles to recording
2023-07-27 15:08:30 -07:00
a6b4ca13b4
sysprof: add indicator to dbus section
2023-07-27 15:03:05 -07:00
845ec0fc8d
sysprof: add bus type to columns
2023-07-27 14:45:43 -07:00
1701b4e4c6
libsysprof: add bus-type property
2023-07-27 14:45:20 -07:00
e210572700
libsysprof-capture: add bus type to add_dbus API
2023-07-27 14:25:06 -07:00
bc17b6d316
sysprof: add D-Bus Message section to window
2023-07-27 14:21:15 -07:00
19c3d90886
libsysprof: add more accessors for dbus message info
2023-07-27 14:20:20 -07:00
6e4b0ace8b
libsysprof: add sysprof_document_list_dbus_messages()
...
Another indexed helper to get just dbus messages.
2023-07-27 13:43:02 -07:00
3c105057c7
libsysprof: add message-type property
2023-07-27 13:42:44 -07:00
7b9c92985a
sysprof-cli: allow profiling session and system buses
2023-07-27 12:34:19 -07:00
3fc8a03e40
sysprof-agent: allow profiling session and system busses
2023-07-27 12:34:06 -07:00
2800a45939
sysprofd: remove version 2 policy
...
This existed for long enough to transition, no more need for it.
2023-07-27 12:22:31 -07:00
8dd2d3d73c
libsysprof: add support for dbus messages as a document type
2023-07-27 12:22:31 -07:00
f46d690a28
libsysprof-capture: add support for DBusMessage frames
...
These are still captive to the max size of a SysprofCaptureFrame, but
most messages fit into that.
2023-07-27 12:22:31 -07:00
2d16166fb6
sysprof: fix energy section type lookups
2023-07-26 21:18:05 -07:00
33fb1b6663
sysprof: add utility for callgraph sections
2023-07-26 18:05:55 -07:00