summaryrefslogtreecommitdiff
path: root/tests/DynamicCodeLoggerIntegrationTests/src/cpp/test_executable.cpp
diff options
context:
space:
mode:
authorNataniel Borges <natanieljr@google.com>2019-01-03 14:22:44 -0800
committerNataniel Borges <natanieljr@google.com>2019-01-28 13:37:13 -0800
commit98d92aa5d3f13124b364b2e58de2df0283b2c1d0 (patch)
tree0bb6544b696fbab7af7fa80390cad523e720f13d /tests/DynamicCodeLoggerIntegrationTests/src/cpp/test_executable.cpp
parentffa0d6c94453c1fcb70d6b29894e1e2d95fffb85 (diff)
Support a ring buffer or a queue to store window manager traces
Currently the WM uses a BlockingQueue with limited capacity to store the traces and a separate thread to continuously write the buffer elements to disk. This implementation allows the WM trace to use its current logging behavior or to use a ring buffer instead. The ring buffer: - Stores the most recent traces and discard the oldest ones when it reaches maximum capacity. - Write to disk only when the trace logging is stopped or during a bugreport, instead of having a thread to continuously write to disk. The ring buffer can be selected (or disabled)  using the command: - adb shell cmd window tracing continuous (true/false) Any value other than "true" (case insensitive) is considered false After selecting ring buffer, start and stop WM trace monitoring with 'adb shell cmd window tracing (start/stop)' Current capacity is fixed to 512KB. Future implementations will make this value configurable. Test: Flash a device. Enable continuous mode and window manager tracing. Use the device. Stop the trace and pull the logged trace. Open the trace in Winscope and check if the last X KB of data are there. Unit tests: atest WmTests:WindowTraceBufferTest Change-Id: Id4108b0231ab7af504240ea35c8a030fecf8b8a9
Diffstat (limited to 'tests/DynamicCodeLoggerIntegrationTests/src/cpp/test_executable.cpp')
0 files changed, 0 insertions, 0 deletions