Skip to content

Commit 96aeb1a

Browse files
committed
adjust regex to match more cases
1 parent 1e6d70f commit 96aeb1a

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

Sources/Models/OSLogRecord.swift

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ package struct OSLogRecord: Sendable {
1414
package let severity: UInt8 // syslog numeric level (0-7)
1515
package let subsystemCode: UInt8 // rarely useful but present («80» in sample)
1616
package let facility: Character // «L»
17-
package let typeCode: Character // «e» for error, «d» for default …
17+
package let typeCode: String // «e», «f», or numeric like «10»
1818

1919
// --- dynamic payload inside {…} ----------------------------------------
2020
package let timestamp: Date? // derived from t:<epoch>
@@ -39,7 +39,7 @@ package struct OSLogRecord: Sendable {
3939
guard line.hasPrefix("OSLOG-") else { return nil }
4040

4141
// 2. Capture header + brace block + message
42-
let pattern = #"OSLOG-([A-F0-9\-]+)\s+(\d+)\s+(\d+)\s+([A-Z])\s+([a-z])\s+(\{.*?\})\t(.*)"#
42+
let pattern = #"OSLOG-([A-F0-9\-]+)\s+(\d+)\s+(\d+)\s+([A-Z])\s+([A-Za-z0-9]+)\s+(\{.*?\})\t(.*)"#
4343

4444
guard
4545
let regex = try? NSRegularExpression(
@@ -62,12 +62,13 @@ package struct OSLogRecord: Sendable {
6262
let uuid = UUID(uuidString: g(1)),
6363
let sev = UInt8(g(2)),
6464
let subCode = UInt8(g(3)),
65-
let fac = g(4).first,
66-
let typeC = g(5).first
65+
let fac = g(4).first
6766
else {
6867
return nil
6968
}
7069

70+
let typeC = g(5)
71+
7172
// 3. Extract key/value pairs from the { … } block --------------------
7273
let braceBlock = g(6).dropFirst().dropLast() // remove outer braces
7374

0 commit comments

Comments
 (0)