@@ -16,6 +16,7 @@ public final class SentryLogEvent implements JsonUnknown, JsonSerializable {
1616 private @ NotNull Double timestamp ;
1717 private @ NotNull String body ;
1818 private @ NotNull SentryLogLevel level ;
19+ private @ Nullable Integer severityNumber ;
1920
2021 private @ Nullable Map <String , SentryLogEventAttributeValue > attributes ;
2122 private @ Nullable Map <String , Object > unknown ;
@@ -72,11 +73,20 @@ public void setAttributes(final @Nullable Map<String, SentryLogEventAttributeVal
7273 this .attributes = attributes ;
7374 }
7475
76+ public @ Nullable Integer getSeverityNumber () {
77+ return severityNumber ;
78+ }
79+
80+ public void setSeverityNumber (@ Nullable Integer severityNumber ) {
81+ this .severityNumber = severityNumber ;
82+ }
83+
7584 // region json
7685 public static final class JsonKeys {
7786 public static final String TIMESTAMP = "timestamp" ;
7887 public static final String TRACE_ID = "trace_id" ;
7988 public static final String LEVEL = "level" ;
89+ public static final String SEVERITY_NUMBER = "severity_number" ;
8090 public static final String BODY = "body" ;
8191 public static final String ATTRIBUTES = "attributes" ;
8292 }
@@ -90,6 +100,9 @@ public void serialize(final @NotNull ObjectWriter writer, final @NotNull ILogger
90100 writer .name (JsonKeys .TRACE_ID ).value (logger , traceId );
91101 writer .name (JsonKeys .BODY ).value (body );
92102 writer .name (JsonKeys .LEVEL ).value (logger , level );
103+ if (severityNumber != null ) {
104+ writer .name (JsonKeys .SEVERITY_NUMBER ).value (logger , severityNumber );
105+ }
93106 if (attributes != null ) {
94107 writer .name (JsonKeys .ATTRIBUTES ).value (logger , attributes );
95108 }
@@ -124,6 +137,7 @@ public static final class Deserializer implements JsonDeserializer<SentryLogEven
124137 @ Nullable Double timestamp = null ;
125138 @ Nullable String body = null ;
126139 @ Nullable SentryLogLevel level = null ;
140+ @ Nullable Integer severityNumber = null ;
127141 @ Nullable Map <String , SentryLogEventAttributeValue > attributes = null ;
128142
129143 reader .beginObject ();
@@ -142,6 +156,9 @@ public static final class Deserializer implements JsonDeserializer<SentryLogEven
142156 case JsonKeys .LEVEL :
143157 level = reader .nextOrNull (logger , new SentryLogLevel .Deserializer ());
144158 break ;
159+ case JsonKeys .SEVERITY_NUMBER :
160+ severityNumber = reader .nextIntegerOrNull ();
161+ break ;
145162 case JsonKeys .ATTRIBUTES :
146163 attributes =
147164 reader .nextMapOrNull (logger , new SentryLogEventAttributeValue .Deserializer ());
@@ -187,6 +204,7 @@ public static final class Deserializer implements JsonDeserializer<SentryLogEven
187204 final SentryLogEvent logEvent = new SentryLogEvent (traceId , timestamp , body , level );
188205
189206 logEvent .setAttributes (attributes );
207+ logEvent .setSeverityNumber (severityNumber );
190208 logEvent .setUnknown (unknown );
191209
192210 return logEvent ;
0 commit comments