[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MirageOS-devel] Tracing and profiling blog post



Thanks. The Twitter stuff says it was based on Google's Dapper paper,
which describes their always-on tracing system which, as you say, only
traces some requests (e.g. 1 in 1024), but across systems.

It seems to me that these trace records needs to be separate from the
thread-level recording, although we might be able to share parts of
the API for logging events.

So far we have:

- Dapper-style logging of RPC calls between machines, for randomly
sampled user requests.
- mirage-profile logging of individual Lwt threads.
- function call trancing (gprof).

Each level generates far more data than the previous one and it's
probably only sensible to have the first type recorded by default. It
would be nice to be able to correlate them when necessary, though.
Being able to log application messages against the current
function/thread/request is useful for all three.

On 31 October 2014 14:17, Thomas Gazagnaire <thomas@xxxxxxxxxxxxxx> wrote:
> Thanks for the blog post, as usual it was great to read :-)
>
> To add other related work to the pile of related work, I quite like the 
> approach of 
> https://blog.twitter.com/2012/distributed-systems-tracing-with-zipkin
> They use sampling to only enable full profiling on a per-request basis. They 
> have turn-on/off profiling for the various components and the have a way to 
> track and relate profiling information across multiple components.
>
> For sure having something simple is *much* better than having nothing at all, 
> but if we go to something more sophisticated later, zipkin sounds quite neat. 
> (not sure if they have a standardize format for tracing/profiling info though)
>
> Thomas
>
>
>> On 27 Oct 2014, at 10:42, Thomas Leonard <talex5@xxxxxxxxx> wrote:
>>
>> I've put up a blog post describing the tracing work:
>>
>> http://roscidus.com/blog/blog/2014/10/27/visualising-an-asynchronous-monad/
>>
>> It explains how to read the diagrams, what the various arrows mean and
>> how to instrument your own programs. There are examples from tracing
>> some Mirage unikernels. The viewer should now also work on tablets
>> (pinch to zoom) - though probably very slowly! Let me know if there
>> are any browser compatibility problems...
>>
>>
>> --
>> Dr Thomas Leonard        http://0install.net/
>> GPG: 9242 9807 C985 3C07 44A6  8B9A AE07 8280 59A5 3CC1
>> GPG: DA98 25AE CAD0 8975 7CDA  BD8E 0713 3F96 CA74 D8BA
>>
>> _______________________________________________
>> MirageOS-devel mailing list
>> MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
>> http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
>



-- 
Dr Thomas Leonard        http://0install.net/
GPG: 9242 9807 C985 3C07 44A6  8B9A AE07 8280 59A5 3CC1
GPG: DA98 25AE CAD0 8975 7CDA  BD8E 0713 3F96 CA74 D8BA

_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.