fix(log): Missing failed query log on async queries (#33024)

This commit is contained in:
JUST.in DO IT
2025-04-08 07:12:03 -07:00
committed by GitHub
parent fd947a097d
commit 9b15e04bc4
5 changed files with 159 additions and 28 deletions

View File

@@ -252,28 +252,30 @@ export function querySuccess(query, results) {
return { type: QUERY_SUCCESS, query, results };
}
export function queryFailed(query, msg, link, errors) {
export function logFailedQuery(query, errors) {
return function (dispatch) {
const eventData = {
has_err: true,
start_offset: query.startDttm,
ts: new Date().getTime(),
};
errors?.forEach(({ error_type: errorType, extra }) => {
const messages = extra?.issue_codes?.map(({ message }) => message) || [
errorType,
];
messages.forEach(message => {
dispatch(
logEvent(LOG_ACTIONS_SQLLAB_FETCH_FAILED_QUERY, {
...eventData,
error_type: errorType,
error_details: message,
}),
);
});
errors?.forEach(({ error_type: errorType, message, extra }) => {
const issueCodes = extra?.issue_codes?.map(({ code }) => code) || [-1];
dispatch(
logEvent(LOG_ACTIONS_SQLLAB_FETCH_FAILED_QUERY, {
...eventData,
error_type: errorType,
issue_codes: issueCodes,
error_details: message,
}),
);
});
};
}
export function queryFailed(query, msg, link, errors) {
return function (dispatch) {
dispatch(logFailedQuery(query, errors));
dispatch({ type: QUERY_FAILED, query, msg, link, errors });
};
}