@@ -3,6 +3,7 @@ use lookup::OwnedTargetPath;
3
3
use serde:: { Deserialize , Serialize } ;
4
4
use smallvec:: { smallvec, SmallVec } ;
5
5
use vector_core:: config:: LogNamespace ;
6
+ use vector_core:: schema:: meaning;
6
7
use vector_core:: {
7
8
config:: { log_schema, DataType } ,
8
9
event:: { Event , LogEvent } ,
@@ -35,11 +36,17 @@ impl BytesDeserializerConfig {
35
36
/// The schema produced by the deserializer.
36
37
pub fn schema_definition ( & self , log_namespace : LogNamespace ) -> schema:: Definition {
37
38
match log_namespace {
38
- LogNamespace :: Legacy => schema:: Definition :: empty_legacy_namespace ( ) . with_event_field (
39
- log_schema ( ) . message_key ( ) . expect ( "valid message key" ) ,
40
- Kind :: bytes ( ) ,
41
- Some ( "message" ) ,
42
- ) ,
39
+ LogNamespace :: Legacy => {
40
+ let definition = schema:: Definition :: empty_legacy_namespace ( ) ;
41
+ if let Some ( message_key) = log_schema ( ) . message_key ( ) {
42
+ return definition. with_event_field (
43
+ message_key,
44
+ Kind :: bytes ( ) ,
45
+ Some ( meaning:: MESSAGE ) ,
46
+ ) ;
47
+ }
48
+ definition
49
+ }
43
50
LogNamespace :: Vector => {
44
51
schema:: Definition :: new_with_default_metadata ( Kind :: bytes ( ) , [ log_namespace] )
45
52
. with_meaning ( OwnedTargetPath :: event_root ( ) , "message" )
0 commit comments