diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-06-18 14:18:50 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-06-18 14:18:50 +0300 |
commit | 8c7f4e9d5f36cff46365a7f8c4b9c21578c1e781 (patch) | |
tree | a77e7fe7a93de11213032ed4ab1f33a3db51b738 /app/assets/javascripts/logs | |
parent | 00b35af3db1abfe813a778f643dad221aad51fca (diff) |
Add latest changes from gitlab-org/gitlab@13-1-stable-ee
Diffstat (limited to 'app/assets/javascripts/logs')
5 files changed, 45 insertions, 9 deletions
diff --git a/app/assets/javascripts/logs/components/environment_logs.vue b/app/assets/javascripts/logs/components/environment_logs.vue index 838652f7210..01a4cbd41f6 100644 --- a/app/assets/javascripts/logs/components/environment_logs.vue +++ b/app/assets/javascripts/logs/components/environment_logs.vue @@ -91,7 +91,7 @@ export default { 'setInitData', 'showEnvironment', 'fetchEnvironments', - 'fetchLogs', + 'refreshPodLogs', 'fetchMoreLogsPrepend', 'dismissRequestEnvironmentsError', 'dismissInvalidTimeRangeWarning', @@ -204,7 +204,7 @@ export default { ref="scrollButtons" class="flex-grow-0 pr-2 mb-2 controllers" :scroll-down-button-disabled="scrollDownButtonDisabled" - @refresh="fetchLogs()" + @refresh="refreshPodLogs()" @scrollDown="scrollDown" /> </div> diff --git a/app/assets/javascripts/logs/constants.js b/app/assets/javascripts/logs/constants.js index 51770aa7a1c..f83d369c6b8 100644 --- a/app/assets/javascripts/logs/constants.js +++ b/app/assets/javascripts/logs/constants.js @@ -1,3 +1,11 @@ export const dateFormatMask = 'mmm dd HH:MM:ss.l'; export const TOKEN_TYPE_POD_NAME = 'TOKEN_TYPE_POD_NAME'; + +export const tracking = { + USED_SEARCH_BAR: 'used_search_bar', + POD_LOG_CHANGED: 'pod_log_changed', + TIME_RANGE_SET: 'time_range_set', + ENVIRONMENT_SELECTED: 'environment_selected', + REFRESH_POD_LOGS: 'refresh_pod_logs', +}; diff --git a/app/assets/javascripts/logs/logs_tracking_helper.js b/app/assets/javascripts/logs/logs_tracking_helper.js new file mode 100644 index 00000000000..91b0392f71f --- /dev/null +++ b/app/assets/javascripts/logs/logs_tracking_helper.js @@ -0,0 +1,18 @@ +import Tracking from '~/tracking'; + +/** + * The value of 1 in count, means there was one action performed + * related to the tracked action, in either of the following categories + * 1. Refreshing the logs + * 2. Select an environment + * 3. Change the time range + * 4. Use the search bar + */ +const trackLogs = label => + Tracking.event(document.body.dataset.page, 'logs_view', { + label, + property: 'count', + value: 1, + }); + +export default trackLogs; diff --git a/app/assets/javascripts/logs/stores/actions.js b/app/assets/javascripts/logs/stores/actions.js index a86d3c775a9..d828e8f8a3e 100644 --- a/app/assets/javascripts/logs/stores/actions.js +++ b/app/assets/javascripts/logs/stores/actions.js @@ -2,7 +2,8 @@ import { backOff } from '~/lib/utils/common_utils'; import httpStatusCodes from '~/lib/utils/http_status'; import axios from '~/lib/utils/axios_utils'; import { convertToFixedRange } from '~/lib/utils/datetime_range'; -import { TOKEN_TYPE_POD_NAME } from '../constants'; +import { TOKEN_TYPE_POD_NAME, tracking } from '../constants'; +import trackLogs from '../logs_tracking_helper'; import * as types from './mutation_types'; @@ -81,22 +82,27 @@ export const showFilteredLogs = ({ dispatch, commit }, filters = []) => { commit(types.SET_CURRENT_POD_NAME, podName); commit(types.SET_SEARCH, search); - dispatch('fetchLogs'); + dispatch('fetchLogs', tracking.USED_SEARCH_BAR); }; export const showPodLogs = ({ dispatch, commit }, podName) => { commit(types.SET_CURRENT_POD_NAME, podName); - dispatch('fetchLogs'); + dispatch('fetchLogs', tracking.POD_LOG_CHANGED); }; export const setTimeRange = ({ dispatch, commit }, timeRange) => { commit(types.SET_TIME_RANGE, timeRange); - dispatch('fetchLogs'); + dispatch('fetchLogs', tracking.TIME_RANGE_SET); }; export const showEnvironment = ({ dispatch, commit }, environmentName) => { commit(types.SET_PROJECT_ENVIRONMENT, environmentName); - dispatch('fetchLogs'); + dispatch('fetchLogs', tracking.ENVIRONMENT_SELECTED); +}; + +export const refreshPodLogs = ({ dispatch, commit }) => { + commit(types.REFRESH_POD_LOGS); + dispatch('fetchLogs', tracking.REFRESH_POD_LOGS); }; /** @@ -111,19 +117,22 @@ export const fetchEnvironments = ({ commit, dispatch }, environmentsPath) => { .get(environmentsPath) .then(({ data }) => { commit(types.RECEIVE_ENVIRONMENTS_DATA_SUCCESS, data.environments); - dispatch('fetchLogs'); + dispatch('fetchLogs', tracking.ENVIRONMENT_SELECTED); }) .catch(() => { commit(types.RECEIVE_ENVIRONMENTS_DATA_ERROR); }); }; -export const fetchLogs = ({ commit, state }) => { +export const fetchLogs = ({ commit, state }, trackingLabel) => { commit(types.REQUEST_LOGS_DATA); return requestLogsUntilData({ commit, state }) .then(({ data }) => { const { pod_name, pods, logs, cursor } = data; + if (logs && logs.length > 0) { + trackLogs(trackingLabel); + } commit(types.RECEIVE_LOGS_DATA_SUCCESS, { logs, cursor }); commit(types.SET_CURRENT_POD_NAME, pod_name); commit(types.RECEIVE_PODS_DATA_SUCCESS, pods); diff --git a/app/assets/javascripts/logs/stores/mutation_types.js b/app/assets/javascripts/logs/stores/mutation_types.js index c1cc7eca52e..9010ec51817 100644 --- a/app/assets/javascripts/logs/stores/mutation_types.js +++ b/app/assets/javascripts/logs/stores/mutation_types.js @@ -19,6 +19,7 @@ export const REQUEST_LOGS_DATA_PREPEND = 'REQUEST_LOGS_DATA_PREPEND'; export const RECEIVE_LOGS_DATA_PREPEND_SUCCESS = 'RECEIVE_LOGS_DATA_PREPEND_SUCCESS'; export const RECEIVE_LOGS_DATA_PREPEND_ERROR = 'RECEIVE_LOGS_DATA_PREPEND_ERROR'; export const HIDE_REQUEST_LOGS_ERROR = 'HIDE_REQUEST_LOGS_ERROR'; +export const REFRESH_POD_LOGS = 'REFRESH_POD_LOGS'; export const RECEIVE_PODS_DATA_SUCCESS = 'RECEIVE_PODS_DATA_SUCCESS'; export const RECEIVE_PODS_DATA_ERROR = 'RECEIVE_PODS_DATA_ERROR'; |