[lttng-dev] LTTng 2.5 save/load feature feedback
Daniel.Thibault at drdc-rddc.gc.ca
Fri May 30 13:16:55 EDT 2014
Date: Fri, 30 May 2014 11:54:02 -0400
From: Julien Desfossez <jdesfossez at efficios.com>
> Everything went fine (except for the already known bug of all the contexts information not recorded in the XML file). As expected, the XML file was saved in
> What surprised me was to see this message when later on I started manually a lttng-sessiond as my user (after it had been killed) :
> Error: Failed to load session lttngtop: Tracing the kernel requires a root lttng-sessiond daemon, as well as "tracing" group membership or root user ID for the lttng client.
> Error: Session load failed: Tracing the kernel requires a root lttng-sessiond daemon, as well as "tracing" group membership or root user ID for the lttng client.
> I did not expect that the saved sessions would try to auto load when the sessiond was starting.
> I did not try with system-wide sessions, but that's the same, I don't really expect that all sessions to be automatically loaded on startup.
> I think a sysadmin (or even the lttng installer) could make some tracing profiles available to the users in there so that they can use them when needed.
> Also, the fact that a user sessiond tries to load a session that clearly requires a root sessiond is kind of confusing.
> I can see the value of having auto-loaded sessions, but I think it should be configurable, either directly in the XML (just like to "started" option) or with sessions saved in a different path (for example ~/.lttng/auto-sessions/).
> Also, I think that our users are never really spawning manually a sessiond, so maybe the "lttng load -a" is more suited for the auto-loading process.
> So we could maybe add an option to the "lttng save" command that allows the user to specify if the session should be auto-loaded.
> With that in mind, should the users part of the tracing group allowed to save auto-loading kernel sessions in the system-wide tracing directory, or will they have to ask an admin to manually install their profile ?
> I apologize for not providing this kind of feedback when the RFC was posted here, I just realized these usability details when I actually experimented the feature.
This is a direct consequence of the session concept being user-oriented: the sessions belong to users. But users that belong to the tracing group can run lttng in two ways, as you've run into: they can run a private session daemon, or talk to the root daemon.
I would suggest adding a property to the session file that would identify the target session daemon. The session daemons would, upon trying to load the sessions, silently reject the inappropriate ones. The only problem with this approach is that sessions targeting either daemon could not bear the same names.
Alternately, sessions could be stored in two sub-directories of ~/.lttng/sessions/ depending on the target daemon: say ~/.lttng/sessions/root/ and ~/.lttng/sessions/user/. This would allow homonymous sessions.
Daniel U. Thibault
Protection des systèmes et contremesures (PSC) | Systems Protection & Countermeasures (SPC)
Cyber sécurité pour les missions essentielles (CME) | Mission Critical Cyber Security (MCCS)
R & D pour la défense Canada - Valcartier (RDDC Valcartier) | Defence R&D Canada - Valcartier (DRDC Valcartier)
2459 route de la Bravoure
Québec QC G3J 1X5
Vox : (418) 844-4000 x4245
Fax : (418) 844-4538
NAC : 918V QSDJ <http://www.travelgis.com/map.asp?addr=918V%20QSDJ>
Gouvernement du Canada | Government of Canada
More information about the lttng-dev