mirror of
https://github.com/facebook/sapling.git
synced 2024-10-11 01:07:15 +03:00
80bb3074bc
Summary: This adds support for "forking" perf counters at a point in the stack, giving you a CoreContext that logs to one or more sets of perf counters. This is useful for low level operations where we want to collect granular more logging data — in particular blobstore operations, where we'd like to collect the time spent waiting for Manifold retries or the number of Manifold retries in blobstore trace for each individual blobstore operation (we can't do that using the `CoreContext` we have because that would be missing The implementation supports a list of reference counted perf counters in the CoreContext. When you want to add a new counter, we replace the list with a new one, and give you a reference to the one you just added. When you write, we write to all perf counters, and when you read, we read from the "top" perf counter (which is always there). To read from one of the forked counters, you use the reference you got whne you created it. Reviewed By: aslpavel Differential Revision: D24333041 fbshipit-source-id: ce318dfc04a1ea435b2454b53df4cae93d57c0a5 |
||
---|---|---|
.. | ||
fs | ||
integration | ||
locale | ||
mononoke | ||
scm | ||
scripts | ||
test_support | ||
test-data | ||
.gitignore | ||
Eden.project.toml |