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)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy