Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
stats: find regex prefixes more aggressively, taking into account ign…
…ored dot token (envoyproxy#2630) This PR expands the scope of regexes where we can parse out a prefix. This has a dramatic effect on the annotated perf information available with envoyproxy#2615 patched in Before: Duration(us) # Calls per_call(ns) Category / Description 1209259 680147 1777 re-miss / envoy.grpc_bridge_method 1188780 680147 1747 re-miss / envoy.grpc_bridge_service 1188206 680147 1746 re-miss / cipher_suite 683323 680127 1004 re-miss / envoy.response_code_class 671907 680147 987 re-miss / envoy.response_code 639791 680147 940 re-miss / envoy.dynamo_partition_id 628738 680147 924 re-miss / envoy.dynamo_operation 623747 680147 917 re-miss / envoy.mongo_callsite 623687 680031 917 re-miss / envoy.http_conn_manager_prefix 620776 680147 912 re-miss / envoy.http_user_agent 619797 680147 911 re-miss / envoy.dyanmo_table 614521 680147 903 re-miss / envoy.mongo_collection 609383 680147 895 re-miss / envoy.mongo_cmd 606698 680147 892 re-miss / envoy.ssl_cipher 606616 680147 891 re-miss / envoy.fault_downstream_cluster 605605 680147 890 re-miss / envoy.virtual_cluster 445298 680000 654 re-match / envoy.cluster_name 67 116 577 re-match / envoy.http_conn_manager_prefix 20 20 1031 re-match / envoy.response_code_class 11 9 1237 re-miss / envoy.listener_address 4 5 886 re-match / envoy.listener_address After: Duration(us) # Calls per_call(ns) Category / Description 1200107 680000 1764 re-miss / envoy.grpc_bridge_method 1183043 680000 1739 re-miss / cipher_suite 1178935 680000 1733 re-miss / envoy.grpc_bridge_service 678943 680127 998 re-miss / envoy.response_code_class 668008 680147 982 re-miss / envoy.response_code 617447 680031 907 re-miss / envoy.http_conn_manager_prefix 446239 680000 656 re-match / envoy.cluster_name 186 106 1760 re-miss / envoy.dynamo_partition_id 177 106 1678 re-miss / envoy.dyanmo_table 171 106 1621 re-miss / envoy.dynamo_operation 166 106 1568 re-miss / envoy.http_user_agent 163 106 1543 re-miss / envoy.fault_downstream_cluster 68 116 591 re-match / envoy.http_conn_manager_prefix 25 14 1849 re-miss / envoy.ssl_cipher 20 20 1005 re-match / envoy.response_code_class 11 9 1232 re-miss / envoy.listener_address Note that many fewer regexes need to be evaluated, although the really expensive ones are still examined very often. They need to be evaluated less often or made to be cheaper, preferably both. Risk Level: Low Release Notes: N/A Signed-off-by: Joshua Marantz <[email protected]>
- Loading branch information