Skip to content

Commit 4a92933

Browse files
authored
Merge pull request #139 from UncoderIO/gis-fix-raw-log-fields-bug
Fix bug related to the raw log fields. Allow list of mapped fields
2 parents 39fd347 + afaf419 commit 4a92933

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

uncoder-core/app/translator/core/render.py

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -329,13 +329,19 @@ def process_raw_log_field(self, field: str, field_type: str) -> Optional[str]:
329329
if raw_log_field_pattern := self.raw_log_field_pattern_map.get(field_type):
330330
return raw_log_field_pattern.pattern.format(field=field)
331331

332-
def process_raw_log_field_prefix(self, field: str, source_mapping: SourceMapping) -> Optional[str]:
333-
if self.raw_log_field_pattern_map is None:
334-
return
332+
def process_raw_log_field_prefix(self, field: str, source_mapping: SourceMapping) -> Optional[list]:
333+
if isinstance(field, list):
334+
list_of_prefix = []
335+
for f in field:
336+
if prepared_prefix := self.process_raw_log_field_prefix(field=f, source_mapping=source_mapping):
337+
list_of_prefix.extend(prepared_prefix)
338+
return list_of_prefix
335339
if raw_log_field_type := source_mapping.raw_log_fields.get(field):
336-
return self.process_raw_log_field(field=field, field_type=raw_log_field_type)
340+
return [self.process_raw_log_field(field=field, field_type=raw_log_field_type)]
337341

338342
def generate_raw_log_fields(self, fields: list[Field], source_mapping: SourceMapping) -> str:
343+
if self.raw_log_field_pattern_map is None:
344+
return ""
339345
defined_raw_log_fields = []
340346
for field in fields:
341347
mapped_field = source_mapping.fields_mapping.get_platform_field_name(generic_field_name=field.source_name)
@@ -347,7 +353,7 @@ def generate_raw_log_fields(self, fields: list[Field], source_mapping: SourceMap
347353
if not mapped_field and self.is_strict_mapping:
348354
raise StrictPlatformException(field_name=field.source_name, platform_name=self.details.name)
349355
if field_prefix := self.process_raw_log_field_prefix(field=mapped_field, source_mapping=source_mapping):
350-
defined_raw_log_fields.append(field_prefix)
356+
defined_raw_log_fields.extend(field_prefix)
351357
return "\n".join(set(defined_raw_log_fields))
352358

353359
def _generate_from_tokenized_query_container(self, query_container: TokenizedQueryContainer) -> str:

0 commit comments

Comments
 (0)