I have a LTTNg trace, which i am parsing using babeltrace API. So i was wondering if I could count all events in trace (or stream) without iterating over them. What functions from publilc API I can use to do that ?
count all events in stream with babeltrace API
386 views Asked by Виталик Бушаев At
1
There are 1 answers
Related Questions in C++
- How to immediately apply DISPLAYCONFIG_SCALING display scaling mode with SetDisplayConfig and DISPLAYCONFIG_PATH_TARGET_INFO
- Why can't I use templates members in its specialization?
- How to fix "Access violation executing location" when using GLFW and GLAD
- Dynamic array of structures in C++/ cannot fill a dynamic array of doubles in structure from dynamic array of structures
- How do I apply the interface concept with the base-class in design?
- File refuses to compile std::erase() even if using -std=g++23
- How can I do a successful map when the number of elements to be mapped is not consistent in Thrust C++
- Can std::bit_cast be applied to an empty object?
- Unexpected inter-thread happens-before relationships from relaxed memory ordering
- How i can move element of dynamic vector in argument of function push_back for dynamic vector
- Brick Breaker Ball Bounce
- Thread-safe lock-free min where both operands can change c++
- Watchdog Timer Reset on ESP32 using Webservers
- How to solve compiler error: no matching function for call to 'dmhFS::dmhFS()' in my case?
- Conda CMAKE CXX Compiler error while compiling Pytorch
Related Questions in C
- How to call a C language function from x86 assembly code?
- What does: "char *argv[]" mean?
- User input sanitization program, which takes a specific amount of arguments and passes the execution to a bash script
- How to crop a BMP image in half using C
- How can I get the difference in minutes between two dates and hours?
- Why will this code compile although it defines two variables with the same name?
- Compiling eBPF program in Docker fails due to missing '__u64' type
- Why can't I use the file pointer after the first read attempt fails?
- #include Header files in C with definition too
- OpenCV2 on CLion
- What is causing the store latency in this program?
- How to refer to the filepath of test data in test sourcecode?
- 9 Digit Addresses in Hexadecimal System in MacOS
- My server TCP doesn't receive messages from the client in C
- Printing the characters obtained from the array s using printf?
Related Questions in LTTNG
- Building lttng-modules using buildroot for a custom kernel
- lttng/Babeltrace: Compressing/reducing output/sampled data
- Trying to trace a java application with lttng-ust JUL: no lttng-ust-jul-jni in java.library.path
- Is there a way to trigger a breakpoint on a register write?
- What are the main differences between eBPF and LTTng?
- The way to export data of CTF format from "Experiments" in Tracecompass?
- application using lttng compile errors with aarch64-xilinx-linux-g++
- how to rebuild the source code in docker after building the image and contaner?
- Check if an lttng trace point is enabled with filter from C++ application
- LTTNG: using with a popular library
- Cloning Babeltrace events from generator for random-access traversal
- How to get ThreadId during tracing EventSources with lttng
- Is there a way to use the babeltrace2-sink.text.pretty component in the c api
- LTTng live view with port forwarding / tunneling
- lttng-tools returns incomplete type error
Related Questions in BABELTRACE
- lttng/Babeltrace: Compressing/reducing output/sampled data
- How can I include C with dependencies in Rust?
- Babeltrace2 Python binding - how to convert ClockSnapshot to a normal time stamp
- Cloning Babeltrace events from generator for random-access traversal
- How to get ThreadId during tracing EventSources with lttng
- Is there a way to use the babeltrace2-sink.text.pretty component in the c api
- Is it possible to use babeltrace Python API (or any other software tool) for reading “live” LTTng traces?
- Babeltrace 2.0 C API usage
- Generate well behaved trace in "Trace Compass" with python binding
- How to find out who is registring for lttng tracepoint probes?
- Babeltrace Connection Refused
- Building Perf with Babeltrace on CentOS 7.2 using rpms
- How do I get debug_info from lttng ctf trace using babeltrace python bindings?
- Wrong timestamps in lttng
- BabelTrace as Library
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
The very nature of CTF makes it impossible to count the event records of a given packet in constant time. The packet's context could include an event record count field somehow, but it's not specified, so generic tools would not use it.
Thus the only way to count events is to iterate the event records, unfortunately. The easiest way is to count the number of lines that the
textformat of thebabeltrace(1)tool prints:This works as long as there's one line per printed event record, which is the case unless an event record contains a string field which has a newline (currently not escaped in the text output).
You may also wish to consider discarded event records. They are not printed to the standard output by
babeltrace(1), but the tool prints a message including the count to the standard error when they are detected.There's no way with the current
babeltrace(1)tool to only print the event records which belong to the packets of a given data stream. If you need this, what I suggest is that you remove all the data stream files except the one for which you need an event record count, and run the command above again.Also consider the Babeltrace Python bindings, for example (not tested):
Saved as
count.py, you can try this:Counting the event records of a specific data stream with the Python bindings is left as an exercise for the reader.
Having said this, I don't know if the Python bindings approach is faster than the
babeltrace(1)one.