Patch/api v1.20.0 (#2585)
* fix(chalice): fixed top fetchUrl values for EE-exp * fix(alerts): fixed missing logger * fix(chalice): JIRA integration support expired credentials
This commit is contained in:
parent
bdd564f49c
commit
7906384fe7
6 changed files with 104 additions and 77 deletions
|
|
@ -12,6 +12,8 @@ from chalicelib.core.collaboration_slack import Slack
|
||||||
from chalicelib.utils import pg_client, helper, email_helper, smtp
|
from chalicelib.utils import pg_client, helper, email_helper, smtp
|
||||||
from chalicelib.utils.TimeUTC import TimeUTC
|
from chalicelib.utils.TimeUTC import TimeUTC
|
||||||
|
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
def get(id):
|
def get(id):
|
||||||
with pg_client.PostgresClient() as cur:
|
with pg_client.PostgresClient() as cur:
|
||||||
|
|
|
||||||
|
|
@ -41,6 +41,7 @@ class JIRAIntegration(integration_base.BaseIntegration):
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
self._issue_handler = None
|
self._issue_handler = None
|
||||||
self.integration["valid"] = False
|
self.integration["valid"] = False
|
||||||
|
return {"errors": ["Something went wrong, please check your JIRA credentials."]}
|
||||||
return self._issue_handler
|
return self._issue_handler
|
||||||
|
|
||||||
# TODO: remove this once jira-oauth is done
|
# TODO: remove this once jira-oauth is done
|
||||||
|
|
|
||||||
|
|
@ -394,7 +394,10 @@ def get_all_issue_tracking_projects(context: schemas.CurrentContext = Depends(OR
|
||||||
user_id=context.user_id)
|
user_id=context.user_id)
|
||||||
if error is not None:
|
if error is not None:
|
||||||
return error
|
return error
|
||||||
data = integration.issue_handler.get_projects()
|
data = integration.issue_handler
|
||||||
|
if "errors" in data:
|
||||||
|
return data
|
||||||
|
data = data.get_projects()
|
||||||
if "errors" in data:
|
if "errors" in data:
|
||||||
return data
|
return data
|
||||||
return {"data": data}
|
return {"data": data}
|
||||||
|
|
@ -406,8 +409,11 @@ def get_integration_metadata(integrationProjectId: int, context: schemas.Current
|
||||||
user_id=context.user_id)
|
user_id=context.user_id)
|
||||||
if error is not None:
|
if error is not None:
|
||||||
return error
|
return error
|
||||||
data = integration.issue_handler.get_metas(integrationProjectId)
|
data = integration
|
||||||
if "errors" in data.keys():
|
if "errors" in data:
|
||||||
|
return data
|
||||||
|
data = data.issue_handler.get_metas(integrationProjectId)
|
||||||
|
if "errors" in data:
|
||||||
return data
|
return data
|
||||||
return {"data": data}
|
return {"data": data}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
|
import chalicelib.utils.exp_ch_helper
|
||||||
import schemas
|
import schemas
|
||||||
from chalicelib.core import countries, events, metadata
|
from chalicelib.core import countries, events, metadata
|
||||||
from chalicelib.utils import ch_client
|
from chalicelib.utils import ch_client
|
||||||
|
|
@ -325,12 +326,13 @@ def get_top_values(project_id, event_type, event_key=None):
|
||||||
FROM raw;"""
|
FROM raw;"""
|
||||||
else:
|
else:
|
||||||
colname = TYPE_TO_COLUMN.get(event_type)
|
colname = TYPE_TO_COLUMN.get(event_type)
|
||||||
|
event_type = exp_ch_helper.get_event_type(event_type)
|
||||||
query = f"""WITH raw AS (SELECT DISTINCT {colname} AS c_value,
|
query = f"""WITH raw AS (SELECT DISTINCT {colname} AS c_value,
|
||||||
COUNT(1) OVER (PARTITION BY c_value) AS row_count,
|
COUNT(1) OVER (PARTITION BY c_value) AS row_count,
|
||||||
COUNT(1) OVER () AS total_count
|
COUNT(1) OVER () AS total_count
|
||||||
FROM experimental.events
|
FROM experimental.events
|
||||||
WHERE project_id = %(project_id)s
|
WHERE project_id = %(project_id)s
|
||||||
AND event_type = '{event_type.upper()}'
|
AND event_type = '{event_type}'
|
||||||
AND isNotNull(c_value)
|
AND isNotNull(c_value)
|
||||||
AND notEmpty(c_value)
|
AND notEmpty(c_value)
|
||||||
ORDER BY row_count DESC
|
ORDER BY row_count DESC
|
||||||
|
|
|
||||||
|
|
@ -554,39 +554,6 @@ def __is_valid_event(is_any: bool, event: schemas.SessionSearchEventSchema2):
|
||||||
event.filters is None or len(event.filters) == 0))
|
event.filters is None or len(event.filters) == 0))
|
||||||
|
|
||||||
|
|
||||||
def __get_event_type(event_type: Union[schemas.EventType, schemas.PerformanceEventType], platform="web"):
|
|
||||||
defs = {
|
|
||||||
schemas.EventType.CLICK: "CLICK",
|
|
||||||
schemas.EventType.INPUT: "INPUT",
|
|
||||||
schemas.EventType.LOCATION: "LOCATION",
|
|
||||||
schemas.PerformanceEventType.LOCATION_DOM_COMPLETE: "LOCATION",
|
|
||||||
schemas.PerformanceEventType.LOCATION_LARGEST_CONTENTFUL_PAINT_TIME: "LOCATION",
|
|
||||||
schemas.PerformanceEventType.LOCATION_TTFB: "LOCATION",
|
|
||||||
schemas.EventType.CUSTOM: "CUSTOM",
|
|
||||||
schemas.EventType.REQUEST: "REQUEST",
|
|
||||||
schemas.EventType.REQUEST_DETAILS: "REQUEST",
|
|
||||||
schemas.PerformanceEventType.FETCH_FAILED: "REQUEST",
|
|
||||||
schemas.EventType.STATE_ACTION: "STATEACTION",
|
|
||||||
schemas.EventType.ERROR: "ERROR",
|
|
||||||
schemas.PerformanceEventType.LOCATION_AVG_CPU_LOAD: 'PERFORMANCE',
|
|
||||||
schemas.PerformanceEventType.LOCATION_AVG_MEMORY_USAGE: 'PERFORMANCE'
|
|
||||||
}
|
|
||||||
defs_mobile = {
|
|
||||||
schemas.EventType.CLICK_MOBILE: "TAP",
|
|
||||||
schemas.EventType.INPUT_MOBILE: "INPUT",
|
|
||||||
schemas.EventType.CUSTOM_MOBILE: "CUSTOM",
|
|
||||||
schemas.EventType.REQUEST_MOBILE: "REQUEST",
|
|
||||||
schemas.EventType.ERROR_MOBILE: "CRASH",
|
|
||||||
schemas.EventType.VIEW_MOBILE: "VIEW",
|
|
||||||
schemas.EventType.SWIPE_MOBILE: "SWIPE"
|
|
||||||
}
|
|
||||||
if platform != "web" and event_type in defs_mobile:
|
|
||||||
return defs_mobile.get(event_type)
|
|
||||||
if event_type not in defs:
|
|
||||||
raise Exception(f"unsupported EventType:{event_type}")
|
|
||||||
return defs.get(event_type)
|
|
||||||
|
|
||||||
|
|
||||||
# this function generates the query and return the generated-query with the dict of query arguments
|
# this function generates the query and return the generated-query with the dict of query arguments
|
||||||
def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_status, errors_only, favorite_only, issue,
|
def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_status, errors_only, favorite_only, issue,
|
||||||
project_id, user_id, platform="web", extra_event=None, extra_deduplication=[],
|
project_id, user_id, platform="web", extra_event=None, extra_deduplication=[],
|
||||||
|
|
@ -925,7 +892,8 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
||||||
if platform == "web":
|
if platform == "web":
|
||||||
_column = events.EventType.CLICK.column
|
_column = events.EventType.CLICK.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(
|
||||||
|
f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if schemas.ClickEventExtraOperator.has_value(event.operator):
|
if schemas.ClickEventExtraOperator.has_value(event.operator):
|
||||||
|
|
@ -937,7 +905,8 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{
|
||||||
|
"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
||||||
|
|
@ -945,14 +914,16 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
events_conditions[-1]["condition"] = event_where[-1]
|
events_conditions[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
_column = events.EventType.CLICK_MOBILE.column
|
_column = events.EventType.CLICK_MOBILE.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(
|
||||||
|
f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{
|
||||||
|
"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
||||||
|
|
@ -963,14 +934,16 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
||||||
if platform == "web":
|
if platform == "web":
|
||||||
_column = events.EventType.INPUT.column
|
_column = events.EventType.INPUT.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(
|
||||||
|
f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{
|
||||||
|
"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
||||||
|
|
@ -982,14 +955,16 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
full_args = {**full_args, **_multiple_values(event.source, value_key=f"custom{i}")}
|
full_args = {**full_args, **_multiple_values(event.source, value_key=f"custom{i}")}
|
||||||
else:
|
else:
|
||||||
_column = events.EventType.INPUT_MOBILE.column
|
_column = events.EventType.INPUT_MOBILE.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(
|
||||||
|
f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{
|
||||||
|
"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
||||||
|
|
@ -1000,14 +975,16 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
||||||
if platform == "web":
|
if platform == "web":
|
||||||
_column = 'url_path'
|
_column = 'url_path'
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(
|
||||||
|
f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{
|
||||||
|
"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
||||||
|
|
@ -1015,14 +992,16 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
events_conditions[-1]["condition"] = event_where[-1]
|
events_conditions[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
_column = events.EventType.VIEW_MOBILE.column
|
_column = events.EventType.VIEW_MOBILE.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(
|
||||||
|
f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{
|
||||||
|
"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
||||||
|
|
@ -1031,14 +1010,14 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
elif event_type == events.EventType.CUSTOM.ui_type:
|
elif event_type == events.EventType.CUSTOM.ui_type:
|
||||||
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
||||||
_column = events.EventType.CUSTOM.column
|
_column = events.EventType.CUSTOM.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
||||||
|
|
@ -1047,14 +1026,14 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
elif event_type == events.EventType.REQUEST.ui_type:
|
elif event_type == events.EventType.REQUEST.ui_type:
|
||||||
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
||||||
_column = 'url_path'
|
_column = 'url_path'
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
||||||
|
|
@ -1072,14 +1051,14 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
elif event_type == events.EventType.STATEACTION.ui_type:
|
elif event_type == events.EventType.STATEACTION.ui_type:
|
||||||
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
||||||
_column = events.EventType.STATEACTION.column
|
_column = events.EventType.STATEACTION.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
||||||
|
|
@ -1089,7 +1068,7 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
elif event_type == events.EventType.ERROR.ui_type:
|
elif event_type == events.EventType.ERROR.ui_type:
|
||||||
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main"
|
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main"
|
||||||
events_extra_join = f"SELECT * FROM {MAIN_EVENTS_TABLE} AS main1 WHERE main1.project_id=%(project_id)s"
|
events_extra_join = f"SELECT * FROM {MAIN_EVENTS_TABLE} AS main1 WHERE main1.project_id=%(project_id)s"
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
event.source = tuple(event.source)
|
event.source = tuple(event.source)
|
||||||
events_conditions[-1]["condition"] = []
|
events_conditions[-1]["condition"] = []
|
||||||
|
|
@ -1109,14 +1088,14 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
# ----- Mobile
|
# ----- Mobile
|
||||||
elif event_type == events.EventType.CLICK_MOBILE.ui_type:
|
elif event_type == events.EventType.CLICK_MOBILE.ui_type:
|
||||||
_column = events.EventType.CLICK_MOBILE.column
|
_column = events.EventType.CLICK_MOBILE.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
||||||
|
|
@ -1124,14 +1103,14 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
events_conditions[-1]["condition"] = event_where[-1]
|
events_conditions[-1]["condition"] = event_where[-1]
|
||||||
elif event_type == events.EventType.INPUT_MOBILE.ui_type:
|
elif event_type == events.EventType.INPUT_MOBILE.ui_type:
|
||||||
_column = events.EventType.INPUT_MOBILE.column
|
_column = events.EventType.INPUT_MOBILE.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
||||||
|
|
@ -1139,14 +1118,14 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
events_conditions[-1]["condition"] = event_where[-1]
|
events_conditions[-1]["condition"] = event_where[-1]
|
||||||
elif event_type == events.EventType.VIEW_MOBILE.ui_type:
|
elif event_type == events.EventType.VIEW_MOBILE.ui_type:
|
||||||
_column = events.EventType.VIEW_MOBILE.column
|
_column = events.EventType.VIEW_MOBILE.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
||||||
|
|
@ -1154,14 +1133,14 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
events_conditions[-1]["condition"] = event_where[-1]
|
events_conditions[-1]["condition"] = event_where[-1]
|
||||||
elif event_type == events.EventType.CUSTOM_MOBILE.ui_type:
|
elif event_type == events.EventType.CUSTOM_MOBILE.ui_type:
|
||||||
_column = events.EventType.CUSTOM_MOBILE.column
|
_column = events.EventType.CUSTOM_MOBILE.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
||||||
|
|
@ -1170,14 +1149,14 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
elif event_type == events.EventType.REQUEST_MOBILE.ui_type:
|
elif event_type == events.EventType.REQUEST_MOBILE.ui_type:
|
||||||
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
||||||
_column = 'url_path'
|
_column = 'url_path'
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s", event.value,
|
||||||
|
|
@ -1185,14 +1164,14 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
events_conditions[-1]["condition"] = event_where[-1]
|
events_conditions[-1]["condition"] = event_where[-1]
|
||||||
elif event_type == events.EventType.CRASH_MOBILE.ui_type:
|
elif event_type == events.EventType.CRASH_MOBILE.ui_type:
|
||||||
_column = events.EventType.CRASH_MOBILE.column
|
_column = events.EventType.CRASH_MOBILE.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
||||||
|
|
@ -1200,14 +1179,14 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
events_conditions[-1]["condition"] = event_where[-1]
|
events_conditions[-1]["condition"] = event_where[-1]
|
||||||
elif event_type == events.EventType.SWIPE_MOBILE.ui_type and platform != "web":
|
elif event_type == events.EventType.SWIPE_MOBILE.ui_type and platform != "web":
|
||||||
_column = events.EventType.SWIPE_MOBILE.column
|
_column = events.EventType.SWIPE_MOBILE.column
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
if not is_any:
|
if not is_any:
|
||||||
if is_not:
|
if is_not:
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
||||||
|
|
@ -1217,7 +1196,7 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
elif event_type == schemas.PerformanceEventType.FETCH_FAILED:
|
elif event_type == schemas.PerformanceEventType.FETCH_FAILED:
|
||||||
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
||||||
_column = 'url_path'
|
_column = 'url_path'
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
events_conditions[-1]["condition"] = []
|
events_conditions[-1]["condition"] = []
|
||||||
if not is_any:
|
if not is_any:
|
||||||
|
|
@ -1225,7 +1204,7 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
event_where.append(_multiple_conditions(f"sub.{_column} {op} %({e_k})s", event.value,
|
||||||
value_key=e_k))
|
value_key=e_k))
|
||||||
events_conditions_not.append(
|
events_conditions_not.append(
|
||||||
{"type": f"sub.event_type='{__get_event_type(event_type, platform=platform)}'"})
|
{"type": f"sub.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'"})
|
||||||
events_conditions_not[-1]["condition"] = event_where[-1]
|
events_conditions_not[-1]["condition"] = event_where[-1]
|
||||||
else:
|
else:
|
||||||
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
event_where.append(_multiple_conditions(f"main.{_column} {op} %({e_k})s",
|
||||||
|
|
@ -1256,7 +1235,7 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
schemas.PerformanceEventType.LOCATION_LARGEST_CONTENTFUL_PAINT_TIME,
|
schemas.PerformanceEventType.LOCATION_LARGEST_CONTENTFUL_PAINT_TIME,
|
||||||
schemas.PerformanceEventType.LOCATION_TTFB]:
|
schemas.PerformanceEventType.LOCATION_TTFB]:
|
||||||
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
events_conditions[-1]["condition"] = []
|
events_conditions[-1]["condition"] = []
|
||||||
col = performance_event.get_col(event_type)
|
col = performance_event.get_col(event_type)
|
||||||
|
|
@ -1279,7 +1258,7 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
elif event_type in [schemas.PerformanceEventType.LOCATION_AVG_CPU_LOAD,
|
elif event_type in [schemas.PerformanceEventType.LOCATION_AVG_CPU_LOAD,
|
||||||
schemas.PerformanceEventType.LOCATION_AVG_MEMORY_USAGE]:
|
schemas.PerformanceEventType.LOCATION_AVG_MEMORY_USAGE]:
|
||||||
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
events_conditions[-1]["condition"] = []
|
events_conditions[-1]["condition"] = []
|
||||||
col = performance_event.get_col(event_type)
|
col = performance_event.get_col(event_type)
|
||||||
|
|
@ -1302,9 +1281,9 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
# elif event_type == schemas.PerformanceEventType.time_between_events:
|
# elif event_type == schemas.PerformanceEventType.time_between_events:
|
||||||
# event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
# event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
||||||
# # event_from = event_from % f"{getattr(events.event_type, event.value[0].type).table} AS main INNER JOIN {getattr(events.event_type, event.value[1].type).table} AS main2 USING(session_id) "
|
# # event_from = event_from % f"{getattr(events.event_type, event.value[0].type).table} AS main INNER JOIN {getattr(events.event_type, event.value[1].type).table} AS main2 USING(session_id) "
|
||||||
# event_where.append(f"main.event_type='{__get_event_type(event.value[0].type, platform=platform)}'")
|
# event_where.append(f"main.event_type='{__exp_ch_helper.get_event_type(event.value[0].type, platform=platform)}'")
|
||||||
# events_conditions.append({"type": event_where[-1]})
|
# events_conditions.append({"type": event_where[-1]})
|
||||||
# event_where.append(f"main.event_type='{__get_event_type(event.value[0].type, platform=platform)}'")
|
# event_where.append(f"main.event_type='{__exp_ch_helper.get_event_type(event.value[0].type, platform=platform)}'")
|
||||||
# events_conditions.append({"type": event_where[-1]})
|
# events_conditions.append({"type": event_where[-1]})
|
||||||
#
|
#
|
||||||
# if not isinstance(event.value[0].value, list):
|
# if not isinstance(event.value[0].value, list):
|
||||||
|
|
@ -1352,7 +1331,7 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
|
||||||
# TODO: no isNot for RequestDetails
|
# TODO: no isNot for RequestDetails
|
||||||
elif event_type == schemas.EventType.REQUEST_DETAILS:
|
elif event_type == schemas.EventType.REQUEST_DETAILS:
|
||||||
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
event_from = event_from % f"{MAIN_EVENTS_TABLE} AS main "
|
||||||
event_where.append(f"main.event_type='{__get_event_type(event_type, platform=platform)}'")
|
event_where.append(f"main.event_type='{exp_ch_helper.get_event_type(event_type, platform=platform)}'")
|
||||||
events_conditions.append({"type": event_where[-1]})
|
events_conditions.append({"type": event_where[-1]})
|
||||||
apply = False
|
apply = False
|
||||||
events_conditions[-1]["condition"] = []
|
events_conditions[-1]["condition"] = []
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,6 @@
|
||||||
|
from typing import Union
|
||||||
|
|
||||||
|
import schemas
|
||||||
from chalicelib.utils.TimeUTC import TimeUTC
|
from chalicelib.utils.TimeUTC import TimeUTC
|
||||||
from decouple import config
|
from decouple import config
|
||||||
import logging
|
import logging
|
||||||
|
|
@ -51,3 +54,37 @@ def get_main_js_errors_sessions_table(timestamp=0):
|
||||||
# return "experimental.js_errors_sessions_mv" # \
|
# return "experimental.js_errors_sessions_mv" # \
|
||||||
# if config("EXP_7D_MV", cast=bool, default=True) \
|
# if config("EXP_7D_MV", cast=bool, default=True) \
|
||||||
# and timestamp >= TimeUTC.now(delta_days=-7) else "experimental.events"
|
# and timestamp >= TimeUTC.now(delta_days=-7) else "experimental.events"
|
||||||
|
|
||||||
|
|
||||||
|
def get_event_type(event_type: Union[schemas.EventType, schemas.PerformanceEventType], platform="web"):
|
||||||
|
defs = {
|
||||||
|
schemas.EventType.CLICK: "CLICK",
|
||||||
|
schemas.EventType.INPUT: "INPUT",
|
||||||
|
schemas.EventType.LOCATION: "LOCATION",
|
||||||
|
schemas.PerformanceEventType.LOCATION_DOM_COMPLETE: "LOCATION",
|
||||||
|
schemas.PerformanceEventType.LOCATION_LARGEST_CONTENTFUL_PAINT_TIME: "LOCATION",
|
||||||
|
schemas.PerformanceEventType.LOCATION_TTFB: "LOCATION",
|
||||||
|
schemas.EventType.CUSTOM: "CUSTOM",
|
||||||
|
schemas.EventType.REQUEST: "REQUEST",
|
||||||
|
schemas.EventType.REQUEST_DETAILS: "REQUEST",
|
||||||
|
schemas.PerformanceEventType.FETCH_FAILED: "REQUEST",
|
||||||
|
schemas.EventType.STATE_ACTION: "STATEACTION",
|
||||||
|
schemas.EventType.ERROR: "ERROR",
|
||||||
|
schemas.PerformanceEventType.LOCATION_AVG_CPU_LOAD: 'PERFORMANCE',
|
||||||
|
schemas.PerformanceEventType.LOCATION_AVG_MEMORY_USAGE: 'PERFORMANCE',
|
||||||
|
schemas.FetchFilterType.FETCH_URL: 'REQUEST'
|
||||||
|
}
|
||||||
|
defs_mobile = {
|
||||||
|
schemas.EventType.CLICK_MOBILE: "TAP",
|
||||||
|
schemas.EventType.INPUT_MOBILE: "INPUT",
|
||||||
|
schemas.EventType.CUSTOM_MOBILE: "CUSTOM",
|
||||||
|
schemas.EventType.REQUEST_MOBILE: "REQUEST",
|
||||||
|
schemas.EventType.ERROR_MOBILE: "CRASH",
|
||||||
|
schemas.EventType.VIEW_MOBILE: "VIEW",
|
||||||
|
schemas.EventType.SWIPE_MOBILE: "SWIPE"
|
||||||
|
}
|
||||||
|
if platform != "web" and event_type in defs_mobile:
|
||||||
|
return defs_mobile.get(event_type)
|
||||||
|
if event_type not in defs:
|
||||||
|
raise Exception(f"unsupported EventType:{event_type}")
|
||||||
|
return defs.get(event_type)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue