From: Steven Rostedt <rostedt@goodmis.org>
To: Josef Bacik <jbacik@fb.com>
Cc: <kernel-team@fb.com>, <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 00/11] trace-cmd: make libtracecmd a linkable object
Date: Mon, 21 Nov 2016 12:13:12 -0500 [thread overview]
Message-ID: <20161121121312.6e5a2169@gandalf.local.home> (raw)
In-Reply-To: <1448053053-24188-1-git-send-email-jbacik@fb.com>
On Fri, 20 Nov 2015 15:57:22 -0500
Josef Bacik <jbacik@fb.com> wrote:
> We use trace-cmd pretty extensively inside of Facebook for various things, such
> as live gathering of statistics. Currently this involves launching trace-cmd to
> record data and then processing the information afterwards. This makes
> collection kind of a pain and doesn't allow us to catch longterm trends. What
> we really want to do is use the trace stream infrastructure to do live
> collection of events without having to use disk space and rely on the recorder
> to not crash.
>
> The other problem we have is that any time we want to create a new tool we
> basically have to add it to our build of trace-cmd and deploy an entirely new
> trace-cmd package. This is not super great as we want to keep the amount of
> modifications to the core trace-cmd tool to a minimum and would rather just
> write our tools on the outside and link against libtracecmd.
>
> Enter these patches. libtracecmd is already created to be linked against by the
> internal trace-cmd tools, but isn't actually able to be linked against because
> of various internal dependancies. These patches take a pass at killing some of
> these interdependancies and adding global functions for external tools to link
> against. I have ported one of our tools over to link against this library and
> it works well. If it would help I can post the tool as well as an example.
>
> I made the explicit decision to do as little as possible when decoupling some of
> the internal dependancies. Specifically libtracecmd pulls in trace-record, and
> that is where the bulk of the thread management stuff is for trace-stream as
> well as the buffer_instance and event enablement code. It got pretty hairy
> trying to tease all of these bits out into their own things so instead I just
> pulled out the dependancies on trace-profile and trace-read so that libtracecmd
> didn't end up looking exactly like trace-cmd. Thanks,
>
I know this is a year old (it's been on my todo list for some
time :-/). Have you updated these at all? I'm going to pull in what I
can, but will be making some changes. For one, since trace-cmd is GPL
and libtracecmd is LGPL, I can't merge in all functions easily without
going through proper licensing auditing.
I'll look at what you did, and try to do the "hairy" stuff to make the
library pretty much stand alone and not all trace-cmd. Specifically, it
will remain LGPL and trace-cmd GPL.
-- Steve
next prev parent reply other threads:[~2016-11-21 17:13 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-20 20:57 Josef Bacik
2015-11-20 20:57 ` [PATCH 01/11] trace-cmd: add install_libs target to trace-cmd Josef Bacik
2015-11-20 20:57 ` [PATCH 02/11] trace-cmd: make libtracecmd a little more library friendly Josef Bacik
2015-11-20 20:57 ` [PATCH 03/11] trace-cmd: add a function to create a top instance Josef Bacik
2015-11-20 20:57 ` [PATCH 04/11] trace-cmd: add global functions for live tracing Josef Bacik
2019-07-09 13:09 ` Steven Rostedt
2019-07-09 13:56 ` Josef Bacik
2015-11-20 20:57 ` [PATCH 05/11] trace-cmd: allow for custom show and handle init Josef Bacik
2015-11-20 20:57 ` [PATCH 06/11] trace-cmd: add helpers for starting and stopping threads Josef Bacik
2015-11-20 20:57 ` [PATCH 07/11] trace-cmd: add trace-hash to libtracecmd Josef Bacik
2015-11-20 20:57 ` [PATCH 08/11] trace-cmd: add trace-stat and -ldl " Josef Bacik
2015-11-20 20:57 ` [PATCH 09/11] trace-cmd: disentangle profile and read from record Josef Bacik
2015-11-20 20:57 ` [PATCH 10/11] trace-cmd: add a helper function for stream polling Josef Bacik
2015-11-20 20:57 ` [PATCH 11/11] trace-cmd: add tracecmd_expand_event_list Josef Bacik
2016-11-21 17:13 ` Steven Rostedt [this message]
2016-11-21 20:06 ` [PATCH 00/11] trace-cmd: make libtracecmd a linkable object Josef Bacik
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20161121121312.6e5a2169@gandalf.local.home \
--to=rostedt@goodmis.org \
--cc=jbacik@fb.com \
--cc=kernel-team@fb.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®