BABELTRACE2-SOURCE.TEXT.DMESG(7)
β¨ babeltrace2-source.text.dmesg β the manual page, but make it make sense β¨
okay bestie, pull up a chair π«Ά you're reading babeltrace2-source.text.dmesg(7) β the manual for the Babeltrace 2: Linux kernel ring buffer source component class. yes the name is long. yes it's iconic. let's go π
πΈ NAME πΈ
babeltrace2-source.text.dmesg β Babeltrace 2: Linux kernel ring buffer source component class π§β¨
π DESCRIPTION π
So. A Babeltrace 2 source.text.dmesg message iterator reads the lines of a Linux kernel ring buffer β like, the exact stuff dmesg(1) prints out β and then it emits corresponding event messages for each one. it's giving translator. it's giving pipeline girlie π«
Linux kernel ring buffer
lines (file or standard input)
|
| +----------------+
| | src.text.dmesg |
'-->| |
| out @--> Messages (single stream)
+----------------+
(that diagram is sacred, don't touch it π₯)
Wanna know more about the Babeltrace 2 project and its core concepts? go read babeltrace2-intro(7). it's the lore, fr fr π
A source.text.dmesg message iterator names the events it creates string. And every single event contains one (1) payload string field called str, which holds the corresponding ring buffer line. that's it. that's the payload. no cap π
By default, a source.text.dmesg message iterator reads the lines from the standard input stream. but you can make it read the lines of a text file instead β just use the path parameter. easy π
By default, the message iterator tries to extract the timestamps of the kernel ring buffer lines and uses them as the timestamps of the created events. a typical dmesg(1) line looks like this:
[87166.510937] PM: Finishing wakeup.
and the [87166.510937] part? that's the timestamp to extract, bestie π When this information is available, the component creates a clock class which does NOT have the Unix epoch as its origin. i repeat: NOT the Unix epoch. put that in your notes π
You can make the message iterator not extract timestamps from lines with the no-extract-timestamp parameter. your call, your vibe π
Note π It's possible that the output ofdmesg(1)contains unsorted lines β meaning their timestamps go back in time. literally time travel. you can see this with the--show-deltaoption ofdmesg(1): some time differences can be negative π This is due to a 2019 change (see <https://lwn.net/Articles/780556/>) to the API of the kernel ring buffer. As of this version, asource.text.dmesgmessage iterator requires that the input kernel ring buffer lines be sorted by timestamp (when they have timestamps), failing otherwise. so sort your lines or perish π
π INITIALIZATION PARAMETERS π
no-extract-timestamp=VAL[optional boolean]β ifVALis true, then do NOT extract timestamps from the kernel ring buffer lines: set thestrpayload field of the created event to the whole line, including any timestamp prefix. no timestamp surgery today βοΈ- Default:
false.
- Default:
path=PATH[optional string]β read the kernel ring buffer lines from the filePATHinstead of the standard input stream. file girlies rise π¦
π§ PORTS π§
+----------------+
| src.text.dmesg |
| |
| out @
+----------------+
π Output π
outβ single output port. just one. one is enough. she's got main character energy β¨
π BUGS π
If you encounter any issue or usability problem, please report it on the Babeltrace bug tracker (see <https://bugs.lttng.org/projects/babeltrace>). we wanna know, we promise π«Ά
π RESOURCES π
The Babeltrace project shares some communication channels with the LTTng project (see <https://lttng.org/>). community coded π
- Babeltrace website (see <https://babeltrace.org/>) π
- Mailing list (see <https://lists.lttng.org>) for support and development:
lttng-dev@lists.lttng.orgπ§ - IRC channel (see <irc://irc.oftc.net/lttng>):
#lttngonirc.oftc.netπ¬ - Bug tracker (see <https://bugs.lttng.org/projects/babeltrace>) π
- Git repository (see <https://git.efficios.com/?p=babeltrace.git>) π³
- GitHub project (see <https://github.com/efficios/babeltrace>) π
- Continuous integration (see <https://ci.lttng.org/view/Babeltrace/>) βοΈ
- Code review (see <https://review.lttng.org/q/project:babeltrace>) π
π AUTHORS π
The Babeltrace 2 project is the result of hard work by many regular developers and occasional contributors. honestly? legends only π«‘
The current project maintainer is JΓ©rΓ©mie Galarneau <mailto:jeremie.galarneau@efficios.com>.
β COPYRIGHT β
This component class is part of the Babeltrace 2 project.
Babeltrace is distributed under the MIT license (see <https://opensource.org/licenses/MIT>). slay, legally speaking π
π¦ SEE ALSO π¦
babeltrace2-plugin-text(7), babeltrace2-intro(7) β go read these next, bestie, they're the rest of the syllabus π
and that's the whole page, no skips, no summarising, we ate and left no crumbs π mwah π
this little love letter is signed off as BABELTRACE2-SOURCE() β that's the footer, and the manual name up top is the same BABELTRACE2-SOURCE situation, so now you know the whole header/footer tea. no date and no version number made it into this one, so consider this your very own timeless edition β¨ bye bestie, go pipe some kernel logs πΈ
π¦ where this page comes from
- fedora 43: babeltrace2 2.1.2-3.fc43 Β· MIT AND GPL-2.0-only
- fedora 44: babeltrace2 2.1.2-5.fc44 Β· MIT AND GPL-2.0-only
- nixos 26.05: babeltrace2 2.1.2
- nixpkgs unstable: babeltrace2 2.1.2
- ubuntu resolute: babeltrace2 2.1.2-1build2 Β· MIT
- ubuntu stonking: babeltrace2 2.1.2-1build2 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms