diff --git a/man/org.freedesktop.systemd1.xml b/man/org.freedesktop.systemd1.xml index 741a72d264..6127541f8b 100644 --- a/man/org.freedesktop.systemd1.xml +++ b/man/org.freedesktop.systemd1.xml @@ -562,10 +562,6 @@ node /org/freedesktop/systemd1 { - - - - @@ -1336,6 +1332,20 @@ node /org/freedesktop/systemd1 { all clients which previously asked for Subscribe() either closed their connection to the bus or invoked Unsubscribe(). + Dump() returns a text dump of the internal service manager state. This is a + privileged, low-level debugging interface only. The returned string is supposed to be readable + exclusively by developers, and not programmatically. There's no interface stability on the returned + string guaranteed, and new fields may be added any time, and old fields removed. The general structure + may be rearranged drastically between releases. This is exposed by + systemd-analyze1's + dump command. The DumpByFileDescriptor() method is identical to + Dump() but returns the data serialized into a file descriptor (the client should + read the text data from it until hitting EOF). Given the size limits on D-Bus messages and the possibly + large size of the returned string, DumpByFileDescriptor() is usually the + preferable interface, since it ensures the data can be passed reliably from the service manager to the + client. (Note though that DumpByFileDescriptor() cannot work when communicating + with the service manager remotely, as file descriptors are strictly local to a system.) + Reload() may be invoked to reload all unit files. Reexecute() may be invoked to reexecute the main manager process. It will diff --git a/src/core/manager-dump.c b/src/core/manager-dump.c index 789c552723..61717d8006 100644 --- a/src/core/manager-dump.c +++ b/src/core/manager-dump.c @@ -33,6 +33,10 @@ void manager_dump(Manager *m, FILE *f, const char *prefix) { assert(m); assert(f); + /* NB: this is a debug interface for developers. It's not supposed to be machine readable or be + * stable between versions. We take the liberty to restructure it entirely between versions and + * add/remove fields at will. */ + fprintf(f, "%sManager: systemd " STRINGIFY(PROJECT_VERSION) " (" GIT_VERSION ")\n", strempty(prefix)); fprintf(f, "%sFeatures: %s\n", strempty(prefix), systemd_features);