Skip to content

Commit edb3484

Browse files
committed
Worked on Apple Unified Logging format support
1 parent 46b7b70 commit edb3484

File tree

8 files changed

+604
-266
lines changed

8 files changed

+604
-266
lines changed

documentation/Apple Unified Logging and Activity Tracing formats.asciidoc

Lines changed: 45 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -298,11 +298,11 @@ The header (chunk) is 224 bytes of size and consists of:
298298
| 4 | 4 | 0x0011 | Chunk sub tag (subtag)
299299
| 8 | 8 | 208 | Chunk data size (length)
300300
4+| _Chunk data (tracev3_chunk_header)_
301-
| 16 | 4 | | Timebase numerator (first number in timebase # / #)
302-
| 20 | 4 | | Timebase denominator (second number in timebase # / #)
301+
| 16 | 4 | | (Mach) Timebase numerator (first number in timebase # / #)
302+
| 20 | 4 | | (Mach) Timebase denominator (second number in timebase # / #)
303303
| 24 | 8 | | Start time +
304304
Contains a Mach continuous timestamp
305-
| 32 | 4 | | Timestamp (or start wall clock time) +
305+
| 32 | 4 | | Timestamp (or wall clock time) +
306306
Signed integer that contains the number of seconds since January 1, 1970 00:00:00 UTC (POSIX epoch), disregarding leap seconds
307307
| 36 | 4 | | [yellow-background]*Unknown*
308308
| 40 | 4 | | [yellow-background]*Unknown*
@@ -318,6 +318,17 @@ Contains a signed integer that contains the number of minutes relative from UTC,
318318
| 168 | 56 | | <<header_time_zone_sub_chunk,Header time zone sub chunk>>
319319
|===
320320

321+
[NOTE]
322+
Timebase numerator / Timebase denominator is the timebase, which contains the
323+
number of seconds per continuous time unit.
324+
325+
[NOTE]
326+
The start time contains the Mach continuous time representation of the POSIX
327+
timestamp (or wall clock time).
328+
329+
[NOTE]
330+
Timestamp appears to be stored in UTC but the log tool shows the local time zone.
331+
321332
==== [[tracev3_header_flags]]Header flags
322333

323334
[cols="1,1,5",options="header"]
@@ -868,6 +879,23 @@ The offset is relative to the start of the private data in the <<tracev3_firehos
868879
| 4 | 2 | | Value data (range) size
869880
|===
870881

882+
==== [[tracev3_firehose_tracepoint_backtrace_data]]Firehose tracepoint backtrace data
883+
884+
Firehose tracepoint backtrace data is variable of size and consists of:
885+
886+
[cols="1,1,1,5",options="header"]
887+
|===
888+
| Offset | Size | Value | Description
889+
| 0 | 2 | | [yellow-background]*Unknown (Seen: 0x01)*
890+
| 2 | 1 | | [yellow-background]*Unknown (Seen: 0x12)*
891+
| 3 | 1 | | Number of (image) identifiers
892+
| 4 | 1 | | Number of frames
893+
| 5 | 1 | | [yellow-background]*Unknown*
894+
| 6 | number of identifiers | | Array of image identifiers (UUIDs)
895+
| ... | number of frames | | Array of image offsets
896+
| ... | number of frames | | Array of image identifier indexes
897+
|===
898+
871899
==== [[tracev3_firehose_tracepoint_activity]]Activity firehose tracepoint
872900

873901
An activity firehose tracepoint is variable of size and consists of:
@@ -984,8 +1012,12 @@ Where the range offset is a virtual private strings offset in the <<tracev3_fire
9841012
4+| _Common_
9851013
| ... | 1 | | [yellow-background]*Unknown*
9861014
| ... | 1 | | Number of data items
987-
| ... | ... | | Data items +
1015+
| ... | number of data items | | Array of data items +
9881016
See section: <<tracev3_firehose_tracepoint_data_item,Data item>>
1017+
4+| _Has backtrace flag (0x1000) is set_
1018+
| ... | ... | | Backtrace data +
1019+
See section: <<tracev3_firehose_tracepoint_backtrace_data,Backtrace data>>
1020+
4+| _Common_
9891021
| ... | ... | | Values data
9901022
4+| _End of data_
9911023
| ... | ... | | 64-bit alignment padding
@@ -1042,7 +1074,7 @@ See section: <<tracev3_firehose_tracepoint_string_reference,String reference>>
10421074
4+| _Common_
10431075
| ... | 1 | | [yellow-background]*Unknown*
10441076
| ... | 1 | | Number of data items
1045-
| ... | ... | | Data items +
1077+
| ... | number of data items | | Array of data items +
10461078
See section: <<tracev3_firehose_tracepoint_data_item,Data item>>
10471079
| ... | ... | | Values data
10481080
4+| _End of data_
@@ -1411,13 +1443,13 @@ Contains a signed integer that contains the number of minutes relative from UTC,
14111443
| 44 | 4 | | Daylight savings (DST) flag (0 = no DST, 1 = DST)
14121444
|===
14131445

1414-
[NOTE]
1415-
Timestamp appears to be stored in UTC but the log tool shows the local time zone.
1416-
14171446
[NOTE]
14181447
Timebase numerator / Timebase denominator is the timebase, which contains the
14191448
number of seconds per continuous time unit.
14201449

1450+
[NOTE]
1451+
Timestamp appears to be stored in UTC but the log tool shows the local time zone.
1452+
14211453
==== timesync sync record
14221454

14231455
The timesync sync record is 32 bytes of size and consists of:
@@ -1430,13 +1462,17 @@ The timesync sync record is 32 bytes of size and consists of:
14301462
| 4 | 4 | | [yellow-background]*Unknown (Seen: 0 and 1)*
14311463
| 8 | 8 | | Kernel time +
14321464
Contains a Mach continuous timestamp
1433-
| 16 | 8 | | Timestamp (or wall time) +
1465+
| 16 | 8 | | Timestamp (or wall clock time) +
14341466
Signed integer that contains the number of nanoseconds since January 1, 1970 00:00:00 UTC or 0 if not set
14351467
| 24 | 4 | | Time zone offset in minutes +
14361468
Contains a signed integer that contains the number of minutes relative from UTC, for example -60 represents UTC+1
14371469
| 28 | 4 | | Daylight savings (DST) flag (0 = no DST, 1 = DST)
14381470
|===
14391471

1472+
[NOTE]
1473+
The kernel time contains the Mach continuous time representation of the POSIX
1474+
timestamp (or wall clock time).
1475+
14401476
[NOTE]
14411477
Timestamp appears to be stored in UTC but the log tool shows the local time zone.
14421478

0 commit comments

Comments
 (0)