@@ -431,7 +431,7 @@ def evaluate_percent_condition(self, percent_condition,
431431 True if the condition is met, False otherwise.
432432 """
433433 if not context .get ('randomization_id' ):
434- logger .warning ("Missing randomization ID for percent condition." )
434+ logger .warning ("Missing randomization_id in context for evaluating percent condition." )
435435 return False
436436
437437 seed = percent_condition .get ('seed' )
@@ -503,7 +503,7 @@ def evaluate_custom_signal_condition(self, custom_signal_condition,
503503 actual_custom_signal_value = context .get (custom_signal_key ) or {}
504504
505505 if not actual_custom_signal_value :
506- logger .warning ("Custom signal value not found in context: %s" , custom_signal_key )
506+ logger .debug ("Custom signal value not found in context: %s" , custom_signal_key )
507507 return False
508508
509509 if custom_signal_operator == CustomSignalOperator .STRING_CONTAINS .value :
@@ -525,53 +525,65 @@ def evaluate_custom_signal_condition(self, custom_signal_condition,
525525
526526 # For numeric operators only one target value is allowed.
527527 if custom_signal_operator == CustomSignalOperator .NUMERIC_LESS_THAN .value :
528- return self ._compare_numbers (target_custom_signal_values [0 ],
528+ return self ._compare_numbers (custom_signal_key ,
529+ target_custom_signal_values [0 ],
529530 actual_custom_signal_value ,
530531 lambda r : r < 0 )
531532 if custom_signal_operator == CustomSignalOperator .NUMERIC_LESS_EQUAL .value :
532- return self ._compare_numbers (target_custom_signal_values [0 ],
533+ return self ._compare_numbers (custom_signal_key ,
534+ target_custom_signal_values [0 ],
533535 actual_custom_signal_value ,
534536 lambda r : r <= 0 )
535537 if custom_signal_operator == CustomSignalOperator .NUMERIC_EQUAL .value :
536- return self ._compare_numbers (target_custom_signal_values [0 ],
538+ return self ._compare_numbers (custom_signal_key ,
539+ target_custom_signal_values [0 ],
537540 actual_custom_signal_value ,
538541 lambda r : r == 0 )
539542 if custom_signal_operator == CustomSignalOperator .NUMERIC_NOT_EQUAL .value :
540- return self ._compare_numbers (target_custom_signal_values [0 ],
543+ return self ._compare_numbers (custom_signal_key ,
544+ target_custom_signal_values [0 ],
541545 actual_custom_signal_value ,
542546 lambda r : r != 0 )
543547 if custom_signal_operator == CustomSignalOperator .NUMERIC_GREATER_THAN .value :
544- return self ._compare_numbers (target_custom_signal_values [0 ],
548+ return self ._compare_numbers (custom_signal_key ,
549+ target_custom_signal_values [0 ],
545550 actual_custom_signal_value ,
546551 lambda r : r > 0 )
547552 if custom_signal_operator == CustomSignalOperator .NUMERIC_GREATER_EQUAL .value :
548- return self ._compare_numbers (target_custom_signal_values [0 ],
553+ return self ._compare_numbers (custom_signal_key ,
554+ target_custom_signal_values [0 ],
549555 actual_custom_signal_value ,
550556 lambda r : r >= 0 )
551557
552558 # For semantic operators only one target value is allowed.
553559 if custom_signal_operator == CustomSignalOperator .SEMANTIC_VERSION_LESS_THAN .value :
554- return self ._compare_semantic_versions (target_custom_signal_values [0 ],
560+ return self ._compare_semantic_versions (custom_signal_key ,
561+ target_custom_signal_values [0 ],
555562 actual_custom_signal_value ,
556563 lambda r : r < 0 )
557564 if custom_signal_operator == CustomSignalOperator .SEMANTIC_VERSION_LESS_EQUAL .value :
558- return self ._compare_semantic_versions (target_custom_signal_values [0 ],
565+ return self ._compare_semantic_versions (custom_signal_key ,
566+ target_custom_signal_values [0 ],
559567 actual_custom_signal_value ,
560568 lambda r : r <= 0 )
561569 if custom_signal_operator == CustomSignalOperator .SEMANTIC_VERSION_EQUAL .value :
562- return self ._compare_semantic_versions (target_custom_signal_values [0 ],
570+ return self ._compare_semantic_versions (custom_signal_key ,
571+ target_custom_signal_values [0 ],
563572 actual_custom_signal_value ,
564573 lambda r : r == 0 )
565574 if custom_signal_operator == CustomSignalOperator .SEMANTIC_VERSION_NOT_EQUAL .value :
566- return self ._compare_semantic_versions (target_custom_signal_values [0 ],
575+ return self ._compare_semantic_versions (custom_signal_key ,
576+ target_custom_signal_values [0 ],
567577 actual_custom_signal_value ,
568578 lambda r : r != 0 )
569579 if custom_signal_operator == CustomSignalOperator .SEMANTIC_VERSION_GREATER_THAN .value :
570- return self ._compare_semantic_versions (target_custom_signal_values [0 ],
580+ return self ._compare_semantic_versions (custom_signal_key ,
581+ target_custom_signal_values [0 ],
571582 actual_custom_signal_value ,
572583 lambda r : r > 0 )
573584 if custom_signal_operator == CustomSignalOperator .SEMANTIC_VERSION_GREATER_EQUAL .value :
574- return self ._compare_semantic_versions (target_custom_signal_values [0 ],
585+ return self ._compare_semantic_versions (custom_signal_key ,
586+ target_custom_signal_values [0 ],
575587 actual_custom_signal_value ,
576588 lambda r : r >= 0 )
577589 logger .warning ("Unknown custom signal operator: %s" , custom_signal_operator )
@@ -597,17 +609,17 @@ def _compare_strings(self, target_values, actual_value, predicate_fn) -> bool:
597609 return True
598610 return False
599611
600- def _compare_numbers (self , target_value , actual_value , predicate_fn ) -> bool :
612+ def _compare_numbers (self , custom_signal_key , target_value , actual_value , predicate_fn ) -> bool :
601613 try :
602614 target = float (target_value )
603615 actual = float (actual_value )
604616 result = - 1 if actual < target else 1 if actual > target else 0
605617 return predicate_fn (result )
606618 except ValueError :
607- logger .warning ("Invalid numeric value for comparison." )
619+ logger .warning ("Invalid numeric value for comparison for custom signal key %s." , custom_signal_key )
608620 return False
609621
610- def _compare_semantic_versions (self , target_value , actual_value , predicate_fn ) -> bool :
622+ def _compare_semantic_versions (self , custom_signal_key , target_value , actual_value , predicate_fn ) -> bool :
611623 """Compares the actual semantic version value of a signal against a target value.
612624 Calls the predicate function with -1, 0, 1 if actual is less than, equal to,
613625 or greater than target.
@@ -621,10 +633,10 @@ def _compare_semantic_versions(self, target_value, actual_value, predicate_fn) -
621633 bool: True if the predicate function returns True for the result of the comparison,
622634 False otherwise.
623635 """
624- return self ._compare_versions (str (actual_value ),
636+ return self ._compare_versions (custom_signal_key , str (actual_value ),
625637 str (target_value ), predicate_fn )
626638
627- def _compare_versions (self , sem_version_1 , sem_version_2 , predicate_fn ) -> bool :
639+ def _compare_versions (self , custom_signal_key , sem_version_1 , sem_version_2 , predicate_fn ) -> bool :
628640 """Compares two semantic version strings.
629641
630642 Args:
@@ -651,7 +663,7 @@ def _compare_versions(self, sem_version_1, sem_version_2, predicate_fn) -> bool:
651663 return predicate_fn (1 )
652664 return predicate_fn (0 )
653665 except ValueError :
654- logger .warning ("Invalid semantic version format for comparison." )
666+ logger .warning ("Invalid semantic version format for comparison for custom signal key %s." , custom_signal_key )
655667 return False
656668
657669async def get_server_template (app : App = None , default_config : Optional [Dict [str , str ]] = None ):
0 commit comments